Cockpit vs. Webmin: Linux-Server-Verwaltung im Browser

Die Kommandozeile ist mächtig – aber nicht immer die schnellste Wahl für Routineaufgaben auf einem Linux-Server. Browser-basierte Administrationswerkzeuge wie Cockpit und Webmin bieten eine visuelle Alternative: Dienste überwachen, Netzwerkkonfigurationen anpassen und System-Updates einspielen, ohne tief in die Shell einsteigen zu müssen. Dieser Vergleich zeigt dir, welches Tool für deinen Einsatzzweck besser geeignet ist.

Was ist Cockpit?

Cockpit ist ein modernes, leichtgewichtiges Server-Management-Interface, das von Red Hat entwickelt wird und seit 2014 in aktiver Entwicklung ist. Es ist in vielen Linux-Distributionen vorinstalliert oder direkt aus den offiziellen Paketquellen verfügbar – darunter Fedora, RHEL, CentOS Stream, Rocky Linux, AlmaLinux, Debian und Ubuntu.

Das Besondere an Cockpit: Es ist kein separater Webserver im klassischen Sinne. Cockpit läuft als systemd-Socket-Service und kommuniziert direkt mit dem Kernel und systemd. Dadurch ist der Overhead minimal, und Cockpit „sieht" den Server so, wie er tatsächlich ist – nicht durch eine Abstraktionsschicht hindurch.

Technische Basis von Cockpit:

  • Backend: C + JavaScript (D-Bus für Systemkommunikation)
  • Frontend: React.js-basiertes Web-UI (PatternFly Design System)
  • Kommunikation: WebSocket über cockpit.socket (systemd-aktiviert)
  • Standardport: 9090 (HTTPS)
  • Benutzerauthentifizierung: über PAM (Linux-Systemnutzer)

Typischer Funktionsumfang:

  • System-Übersicht (CPU, RAM, Disk, Netzwerk in Echtzeit)
  • Journal-Logs (systemd journal direkt im Browser)
  • Dienste verwalten (systemd services starten/stoppen/aktivieren)
  • Netzwerkkonfiguration (NetworkManager-Integration)
  • Benutzer- und Gruppe-Verwaltung
  • Software-Updates (PackageKit-Integration)
  • Terminal direkt im Browser

Was ist Webmin?

Webmin ist ein langjähriger Klassiker der Linux-Administration, 1997 von Jamie Cameron entwickelt und seitdem kontinuierlich gepflegt. Mit über 25 Jahren Entwicklungsgeschichte ist Webmin deutlich umfangreicher als Cockpit – und entsprechend komplexer.

Webmin läuft als eigenständiger Perl-basierter Webserver auf Port 10000 und kommuniziert mit dem System über Systemaufrufe und Konfigurationsdatei-Parsing. Der Ansatz ist dadurch distributionsunabhängiger als Cockpit, aber auch schwerer zu sichern und weniger elegant in der systemd-Ära.

Technische Basis von Webmin:

  • Backend: Perl (eigener HTTP-Server)
  • Frontend: Perl-generated HTML / JavaScript (älteres UI-Framework)
  • Kommunikation: HTTP/HTTPS auf Port 10000
  • Benutzerauthentifizierung: eigene Benutzerdatenbank oder PAM
  • Plugin-System: über 100 offizielle und Drittanbieter-Module

Typischer Funktionsumfang:

  • Apache, Nginx, PHP, MySQL/MariaDB konfigurieren
  • DNS (BIND), DHCP, Samba-Freigaben verwalten
  • Cronjobs, Firewall (iptables/ufw), SSH-Konfiguration
  • E-Mail-Server (Postfix, Dovecot)
  • Let's Encrypt SSL-Zertifikate integriert
  • Datei-Manager (Browser-basiert)
  • Virtualmin-Add-on für Web-Hosting-Management

Installation im Vergleich

Cockpit installieren

Cockpit ist in den Standard-Repositories der meisten Distributionen verfügbar:

# Ubuntu / Debian
sudo apt install cockpit

# Fedora / RHEL / Rocky Linux / AlmaLinux
sudo dnf install cockpit

# Dienst aktivieren und starten
sudo systemctl enable --now cockpit.socket

Das war es. Cockpit ist sofort über https://server-ip:9090 erreichbar. Keine weiteren Konfigurationsschritte notwendig.

Webmin installieren

Webmin wird über das eigene Repository installiert:

# Repository hinzufügen
curl -o setup-repos.sh https://raw.githubusercontent.com/webmin/webmin/master/setup-repos.sh
sudo sh setup-repos.sh

# Installation
sudo apt install webmin      # Debian/Ubuntu
sudo dnf install webmin      # RHEL-Familie

Webmin ist dann über https://server-ip:10000 erreichbar. Nach der Installation empfiehlt sich eine initiale Konfiguration (SSL-Zertifikat, Admin-Passwort, IP-Beschränkungen).

Ressourcenverbrauch

Merkmal Cockpit Webmin
RAM (idle) ~5–15 MB ~50–100 MB
RAM (aktive Session) ~30–60 MB ~100–200 MB
CPU-Last (idle) ~0% (Socket-aktiviert) ~1–2% (laufender Prozess)
Festplatte ~3 MB ~50–100 MB
Abhängigkeiten Minimal (systemd-basiert) Perl + viele Module

Cockpit hat einen enormen Vorteil beim Ressourcenverbrauch: Da es socket-aktiviert ist, läuft der Prozess nur, wenn tatsächlich jemand verbunden ist. Webmin läuft permanent als Daemon.

Sicherheit

Cockpit

Cockpit integriert sich nativ in das Linux-Sicherheitssystem:

  • Authentifizierung über PAM: Cockpit nutzt dieselben Nutzerkonten wie SSH. Kein separates Passwort notwendig.
  • sudo-Integration: Administrationsaufgaben erfordern wie gewohnt Sudo-Rechte. Cockpit zeigt einen Passwortdialog, wenn erhöhte Rechte benötigt werden.
  • Keine offenen Ports im Idle: Der cockpit.socket wird nur bei Bedarf aktiviert.
  • SELinux/AppArmor-kompatibel: Cockpit ist für sichere Linux-Umgebungen ausgelegt.

Webmin

Webmin läuft als root-Prozess und verwaltet seine eigene Benutzerdatenbank – was ein potenzielles Angriffsziel darstellt:

  • Eigene Benutzerverwaltung: Webmin-Nutzer sind unabhängig von Linux-Systembenutzern (kann Vor- und Nachteil sein).
  • Bekannte CVEs: Webmin hatte in der Vergangenheit kritische Sicherheitslücken (CVE-2019-15107 – Remote Code Execution). Updates sind essenziell.
  • IP-Allowlisting: Webmin erlaubt Zugriffsbeschränkungen per IP – nutze diese Funktion.
  • Empfehlung: Webmin ausschließlich über VPN oder SSH-Tunnel erreichbar machen, nicht direkt aus dem Internet.

Funktionsvergleich

Feature Cockpit Webmin
System-Monitoring ✅ Echtzeit-Grafiken ✅ Einfache Statistiken
Dienste (systemd) ✅ Nativ ⚠️ Teilunterstützung
Terminal im Browser ✅ Integriert ✅ Integriert
Dateimanager ❌ Kein Browser-FM ✅ Integriert
Apache/Nginx-Config ⚠️ Nur via Terminal ✅ GUI-Konfiguration
MySQL/MariaDB ❌ Nicht integriert ✅ GUI-Verwaltung
DNS/BIND ❌ Nicht integriert ✅ Vollständige GUI
E-Mail-Server ❌ Nicht integriert ✅ (Postfix, Dovecot)
Firewall (iptables) ✅ Firewalld-GUI ✅ GUI
Kubernetes ✅ Via Plugin ❌ Begrenzt
Container (Docker) ✅ Via Plugin ⚠️ Begrenzter Support
Updates einspielen ✅ PackageKit ✅ Integriert
SSL-Zertifikate ⚠️ Manuell ✅ Let's Encrypt integriert

Erweiterbarkeit

Cockpit-Plugins

Cockpit lässt sich durch offizielle und Community-Plugins erweitern:

  • cockpit-machines: KVM/QEMU-VM-Verwaltung (direkter Einstieg in die Virtualisierung)
  • cockpit-podman: Podman-Container-Management
  • cockpit-storaged: Storage-Verwaltung (LVM, RAID, LUKS)
  • cockpit-navigator: Dateimanager (Community-Plugin)
  • cockpit-389-ds: LDAP-Verzeichnisverwaltung

Plugins werden als Pakete installiert und erscheinen automatisch in der Cockpit-Oberfläche.

Webmin-Module

Webmin hat ein umfangreiches Modul-Ökosystem mit über 100 offiziellen Modulen:

  • Apache, Nginx, Lighttpd (Webserver)
  • BIND, djbdns (DNS)
  • Postfix, Sendmail, Exim (E-Mail)
  • MySQL, PostgreSQL (Datenbanken)
  • Samba, NFS (Dateifreigaben)
  • Virtualmin (Web-Hosting-Management als eigenes Produkt)

Für klassisches Web-Hosting-Management ist Webmin + Virtualmin eine vollständige Plattform, die Cockpit in diesem Bereich klar übertrifft.

Use Cases: Wer sollte was nutzen?

Cockpit: Ideal für...

  • DevOps-Teams und Systemadministratoren, die systemd-zentriert arbeiten
  • Kubernetes-/Container-Umgebungen mit Podman oder KVM-Virtualisierung
  • RHEL/Fedora/Rocky Linux/AlmaLinux-Installationen (dort standardmäßig integriert)
  • Moderne Server-Setups, die auf systemd und aktuelle Linux-Kernel setzen
  • Security-bewusste Umgebungen, in denen ein minimaler Angriff-Footprint wichtig ist

Webmin: Ideal für...

  • Web-Hoster und Shared-Hosting-Provider, die Apache/PHP/MySQL verwalten
  • DNS-Server-Administration mit BIND
  • E-Mail-Server-Setup (Postfix + Dovecot)
  • Administratoren, die eine vollständige GUI-Verwaltung aller Server-Dienste bevorzugen
  • Ältere Infrastruktur, die nicht vollständig auf systemd migriert ist
  • Virtualmin-Nutzer (umfassendes Web-Hosting-Panel auf Webmin-Basis)

Cockpit vs. Webmin: Meine Empfehlung

Für einen modernen Linux-Server mit Container-Workloads und systemd-Diensten ist Cockpit klar die bessere Wahl: schlank, sicher, nativ integriert. Für klassisches Web-Hosting mit Apache, Datenbanken, DNS und E-Mail bietet Webmin (in Kombination mit Virtualmin) eine vollständigere GUI-Lösung.

Die gute Nachricht: Beide Tools schließen sich nicht aus. Es ist möglich, Cockpit für tägliche Adminaufgaben zu nutzen und Webmin zusätzlich für spezifische Module (z.B. DNS-Verwaltung) einzusetzen – sofern man den Sicherheitsaspekt im Auge behält.

Fazit

Cockpit ist das modernere, sicherere und ressourcenschonendere Tool – ideal für Administratoren, die einen aufgeräumten Linux-Server mit systemd-Integration bevorzugen. Webmin ist der mächtigere Allrounder mit einem riesigen Modul-Ökosystem, aber auf Kosten von mehr Komplexität und einem größeren Angriffspotenzial.

Für Self-Hoster mit modernen Setups (Docker, Kubernetes, Proxmox als Basis) ist Cockpit der einfachere, sicherere Einstieg. Für klassische Server-Administration mit Web-Hosting, DNS und E-Mail bleibt Webmin ein relevanter Klassiker – solange du ihn nicht dem offenen Internet aussetzt.

Weiterführende Artikel