"ports": wer belegt 80/443/5000 - und lokales Checkmk stilllegen
Auf einem Rechner, auf dem Checkmk vorher direkt installiert war, haelt die alte Instanz Port 5000 weiter besetzt, ein Apache aus der Grundinstallation gern 80 und 443. Der Container startet dann nicht, und die Suche ist muehsam: "ss" zeigt den Prozessnamen nur mit root-Rechten. "ports" beantwortet beides. Den Prozess findet es ueber ss, netstat oder lsof; die zugehoerige systemd-Unit liest es aus /proc/<pid>/cgroup - die Datei ist ohne root lesbar, damit steht auch ohne sudo da, welcher Dienst es ist. Nachgestellt mit eigenen Lauschern auf 5000 und 8000: Programm und Scope werden korrekt genannt. "ports --free" schlaegt vor, was sich stilllegen laesst, "--apply" fuehrt es nach Rueckfrage aus: omd stop alt omd config alt set AUTOSTART off systemctl disable --now httpd.service Geloescht wird NICHTS. "omd stop" haelt die Site nur an, AUTOSTART=off verhindert den Start nach einem Neustart; /omd/sites bleibt unangetastet und laesst sich weiterhin importieren - genau darum ging es. Drei Sicherungen: gestoppt wird nur, was laeuft; ein .scope (etwa eine Login-Sitzung) wird nie angeboten, weil sich daran nichts abschalten laesst; und Container-Dienste bleiben aussen vor, sonst legte man sich den eigenen Stack still. Beim Testen ein Abbruch gefunden: fehlt die site.conf, liefert sed 2 und unter "set -e" war mitten in der Ausgabe Schluss - die Liste der Sites erschien gar nicht erst. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -2684,6 +2684,7 @@ Eine Dateiauswahl mit Verzeichnisnavigation ist eingebaut.
|
||||
| `firewall [check\|open\|close]` | prüfen, öffnen und nicht mehr Benötigtes wieder schließen (firewalld, ufw, nftables, iptables); `close --keep-admin` lässt den Adminport offen |
|
||||
| `shell` | Root-Shell im Checkmk-Container |
|
||||
| `omd …` | beliebiges `omd`-Kommando im Container |
|
||||
| `ports [--free]` | wer belegt 80/443/5000/8000 – und lokales Checkmk stilllegen, ohne Daten zu löschen |
|
||||
| `noproxy [--export\|--fix]` | prüfen, ob lokale Adressen am HTTP-Proxy vorbeigehen; eintragen in profile.d, `.bashrc`, `/etc/environment` oder die systemd-Unit |
|
||||
|
||||
Globale Optionen: `--env-file DATEI`, `-y/--yes` (keine Rückfragen, z. B. für
|
||||
@@ -3459,6 +3460,68 @@ Nützliche Kommandos:
|
||||
docker exec -it checkmk omd su cmk # bzw. podman exec …
|
||||
```
|
||||
|
||||
### 20.1 Port 5000 (oder 80/443) ist belegt – aber von wem?
|
||||
|
||||
Auf einem Rechner, auf dem Checkmk vorher **direkt installiert** war, hält die
|
||||
alte Instanz Port 5000 weiter besetzt; ein Apache aus der Grundinstallation
|
||||
belegt gern 80 und 443. Der Container startet dann nicht, und die Suche ist
|
||||
mühsam – `ss` zeigt den Prozessnamen nur mit root-Rechten.
|
||||
|
||||
```bash
|
||||
./scripts/cmk-manage.sh ports
|
||||
```
|
||||
|
||||
```
|
||||
Belegte Ports
|
||||
PORT ZWECK PROGRAMM UNIT/SCOPE
|
||||
80 HTTP und Lets-Encrypt-Pruefung httpd httpd.service
|
||||
443 HTTPS (Checkmk, Zentrale, weitere httpd httpd.service
|
||||
81 Adminoberflaeche des Proxy Manage frei
|
||||
5000 Checkmk direkt - gehoert hinter d apache2 omd.service
|
||||
|
||||
Direkt installiertes Checkmk
|
||||
Version : OMD - Open Monitoring Distribution Version 2.3.0p23.cre
|
||||
alt laeuft Autostart: on
|
||||
zweitalt gestoppt Autostart: on
|
||||
```
|
||||
|
||||
Die **Unit** kommt dabei aus `/proc/<pid>/cgroup` – die Datei ist lesbar, ohne
|
||||
root zu sein. Damit steht auch ohne `sudo` da, welcher Dienst es ist.
|
||||
|
||||
### 20.2 Die lokale Instanz stilllegen – ohne die Daten anzufassen
|
||||
|
||||
```bash
|
||||
sudo ./scripts/cmk-manage.sh ports --free # nur den Vorschlag zeigen
|
||||
sudo ./scripts/cmk-manage.sh ports --free --apply
|
||||
```
|
||||
|
||||
```
|
||||
Vorschlag
|
||||
omd stop alt
|
||||
omd config alt set AUTOSTART off
|
||||
omd config zweitalt set AUTOSTART off
|
||||
systemctl disable --now httpd.service
|
||||
```
|
||||
|
||||
**Gelöscht wird nichts.** `omd stop` hält die Site nur an, `AUTOSTART=off`
|
||||
verhindert den Start nach einem Neustart. `/omd/sites/…` bleibt unangetastet,
|
||||
die Daten lassen sich also weiterhin in den Container holen – entweder direkt
|
||||
oder über ein Bundle vom `migrate_creator.sh`
|
||||
([Kapitel 17](#17-migration-einer-direktinstallation-migrate_creatorsh)):
|
||||
|
||||
```bash
|
||||
./scripts/cmk-manage.sh import --file <bundle>
|
||||
```
|
||||
|
||||
Zwei Sicherungen sind eingebaut: Gestoppt wird nur, was auch läuft, und ein
|
||||
`.scope` (etwa eine Login-Sitzung) wird nie angeboten – abschalten lässt sich
|
||||
nur, was eine echte Unit ist. Container-Dienste (`docker.service`,
|
||||
`podman.socket` …) bleiben ebenfalls außen vor, sonst legte man sich den
|
||||
eigenen Stack still.
|
||||
|
||||
In der Oberfläche liegt das im Hauptmenü unter **Belegte Ports – lokales
|
||||
Checkmk/Apache stilllegen**.
|
||||
|
||||
---
|
||||
|
||||
## 21. Sicherheitshinweise
|
||||
|
||||
Reference in New Issue
Block a user