Files
cmk-plugins/remote_access/README.md
T

161 lines
4.2 KiB
Markdown

# 🔗 Checkmk Remote Access
![Version](https://img.shields.io/badge/Version-1.4.4-blue)
![Checkmk](https://img.shields.io/badge/Checkmk-Community%202.5-15d1a0)
![SSH](https://img.shields.io/badge/Access-SSH-informational)
![RDP](https://img.shields.io/badge/Access-RDP-informational)
Direkter **SSH- und RDP-Zugriff** auf überwachte Hosts aus der Checkmk-Weboberfläche.
**Version:** `1.4.4` · **Autor:** Domenik Bildhauer · **Zielplattform:** Checkmk Community 2.5
⬅️ [Zurück zur Plugin-Übersicht](../README.md)
## ✨ Funktionen
Das Plugin erweitert Checkmk um Remote-Access-Funktionen für Linux-/Unix- und Windows-Hosts.
### <img src="https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/svg/linux.svg" width="24" height="24" alt="Linux"> Linux / Unix
Für Linux- und Unix-Systeme wird automatisch ein SSH-Zugriff angeboten:
```text
ssh://192.168.188.125
```
Unterstützt werden Linux, Unix, FreeBSD, OpenBSD, Solaris und AIX.
### <img src="https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/svg/windows.svg" width="24" height="24" alt="Windows"> Windows
Für Windows-Systeme wird ein RDP-Zugriff angeboten:
```text
rdpadmin://192.168.188.122
```
`rdpadmin://` verwendet einen eigenen Windows Protocol Handler, der `mstsc.exe` startet.
## 🔌 Checkmk-Integration
### Setup → Hosts
Abhängig vom Betriebssystem werden ein SSH- bzw. RDP-Icon sowie `Open SSH ↗` oder `Open RDP ↗` angezeigt.
### Monitoring
SSH und RDP werden zusätzlich in die Icons-Spalte der Checkmk Monitoring Views integriert.
## 🔎 Automatische Betriebssystemerkennung
Die Entscheidung zwischen SSH und RDP erfolgt anhand der von Checkmk ermittelten Host-Labels.
Linux:
```text
cmk/os_family: linux
cmk/os_platform: ubuntu
cmk/os_name: Ubuntu
cmk/os_version: 22.04
```
Windows:
```text
cmk/os_family: windows
```
Als Ziel verwendet das Plugin bevorzugt `host_address`.
## 📥 Installation
Paket: `packages/remote_access-1.4.4.mkp`
```bash
mkp add /pfad/zu/remote_access-1.4.4.mkp
mkp enable remote_access 1.4.4
omd restart apache
mkp list
```
## ⬆️ Upgrade
```bash
mkp disable remote_access 1.4.3
mkp add /pfad/zu/remote_access-1.4.4.mkp
mkp enable remote_access 1.4.4
omd restart apache
```
Anschließend im Browser gegebenenfalls einen Hard-Reload durchführen.
## 🧑‍💻 Source-Code
```text
src/local/share/check_mk/web/plugins/wato/remote_access_setup.py
src/local/share/check_mk/web/plugins/views/remote_access_views.py
src/local/share/check_mk/web/htdocs/images/icons/remote_access_ssh.svg
src/local/share/check_mk/web/htdocs/images/icons/remote_access_rdp.svg
```
`remote_access_setup.py` integriert die Funktionen in `Setup → Hosts`.
`remote_access_views.py` integriert die Remote-Access-Icons in die Monitoring Views über `multisite_icons_and_actions`.
## <img src="https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/svg/windows.svg" width="24" height="24" alt="Windows"> Windows SSH
Damit `ssh://` unter Windows funktioniert, muss das Protokoll einem geeigneten SSH-Client zugeordnet sein. Getestet wurde PuTTY.
```text
putty.exe 192.168.188.125
```
## <img src="https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/svg/windows.svg" width="24" height="24" alt="Windows"> Windows RDP
Für RDP wird `rdpadmin://` verwendet:
```text
rdpadmin://192.168.188.122
```
Der Protocol Handler startet `mstsc.exe`; dadurch müssen keine `.rdp`-Dateien heruntergeladen werden.
## 🧰 Fehlerdiagnose
```bash
tail -n 50 ~/var/log/web.log
: > ~/var/log/web.log
omd restart apache
cat ~/var/log/web.log
```
## ✅ Status 1.4.4
| Funktion | Status |
|---|---|
| Linux-Erkennung | ✅ Getestet |
| Windows-Erkennung | ✅ Getestet |
| SSH unter Setup → Hosts | ✅ Getestet |
| RDP unter Setup → Hosts | ✅ Getestet |
| SSH aus Monitoring-Ansicht | ✅ Getestet |
| Eigene SSH-/RDP-Icons | ✅ |
| Verwendung der Host-IP | ✅ |
| RDP aus Monitoring-Problemansicht | ⏳ Noch abschließend zu testen |
## 📂 Repository-Struktur
```text
remote_access/
├── README.md
├── CHANGELOG.md
├── packages/
│ └── remote_access-1.4.4.mkp
└── src/
└── local/share/check_mk/
```
## ⚖️ Lizenz
Dieses Plugin wurde für den Einsatz mit Checkmk Community entwickelt.
Checkmk ist eine Marke der Checkmk GmbH.