Webmin ist eine webbasierte Oberfläche für die Systemadministration auf Linux-Servern, die es Ihnen ermöglicht, Ihren Server ohne tiefgreifende Kommandozeilen-Kenntnisse zu verwalten. Diese Anleitung führt Sie durch die Installation, Konfiguration und Absicherung von Webmin, sowie durch die Einrichtung wichtiger Dienste wie Samba-Dateifreigaben und ssH.
Repository und Schlüssel einrichten:
Diese Befehle fügen die offiziellen Webmin-Repositories zu Ihrem System hinzu, damit Sie Webmin über den Paketmanager installieren können.
sudo apt update
sudo apt install -y software-properties-common apt-transport-https wget
sudo wget -q -O- https://download.webmin.com/jcameron-key.asc | sudo apt-key add -
sudo add-apt-repository "deb https://download.webmin.com/download/repository sarge contrib"
Webmin installieren:
Nach dem Hinzufügen des Repositories können Sie Webmin mit folgendem Befehl installieren:
sudo apt update
sudo apt install -y webmin
Installation über AUR mit einem Helper wie yay:
Arch Linux nutzt AUR (Arch User Repository) für Community-Pakete wie Webmin.
yay -S webmin
Oder manuelle Installation aus dem AUR:
Falls Sie keinen AUR-Helper installiert haben, können Sie Webmin auch manuell kompilieren:
git clone https://aur.archlinux.org/webmin.git
cd webmin
makepkg -si
Webmin-Dienst starten und aktivieren:
Diese Befehle starten den Webmin-Dienst, stellen sicher, dass er bei jedem Systemstart automatisch gestartet wird, und überprüfen den aktuellen Status.
sudo systemctl start webmin # Startet den Webmin-Dienst
sudo systemctl enable webmin # Aktiviert Webmin für den automatischen Start beim Booten
sudo systemctl status webmin # Zeigt den Status des Webmin-Dienstes an
Hinweis: Bei erfolgreicher Einrichtung sollte der Status „active (running)“ anzeigen.
Auf die Webmin-Oberfläche zugreifen:
Öffnen Sie einen Webbrowser und navigieren Sie zu: https://[Server-IP]:10000
Beim ersten Zugriff erhalten Sie möglicherweise eine Sicherheitswarnung wegen des selbstsignierten ssL-Zertifikats. Diese können Sie für den Zugriff auf Webmin ignorieren.
Melden Sie sich mit Root-Benutzer oder einem Benutzer mit sudo-Berechtigungen an. Verwenden Sie die gleichen Anmeldeinformationen wie für das Linux-System selbst.
Wichtig: Die Verbindung erfolgt über HTTPS, nicht über HTTP. Stellen Sie sicher, dass Sie „https://“ in der URL verwenden.
UFW (Uncomplicated Firewall) bietet eine einfache Möglichkeit, die Netzwerksicherheit Ihres Servers zu verbessern, indem Sie steuern, welcher Datenverkehr erlaubt und welcher blockiert wird.
UFW installieren (falls nicht vorhanden):
# Auf Debian-basierten Systemen
sudo apt install ufw
# Auf Arch Linux
sudo pacman -S ufw
UFW über Webmin konfigurieren:
Navigieren Sie in der Webmin-Oberfläche zu „Networking“ > „Linux Firewall“
Die grafische Oberfläche von Webmin erleichtert die Erstellung von Firewall-Regeln erheblich:
Grundlegende Regeln erstellen:
Webmin-Zugriff erlauben: Fügen Sie eine Regel hinzu, die den TCP-Port 10000 für Ihre IP-Adresse oder ein vertrauenswürdiges Netzwerk öffnet
ssH-Zugriff sichern: Beschränken Sie den Zugriff auf Port 22/TCP auf vertrauenswürdige IP-Adressen
Standard-Ablehnungsrichtlinie einrichten: Stellen Sie die Standardrichtlinie so ein, dass eingehender Datenverkehr abgelehnt wird, der nicht ausdrücklich durch Regeln erlaubt ist
UFW aktivieren:
Nachdem Sie die Regeln erstellt haben, aktivieren Sie die Firewall:
sudo ufw enable
sudo ufw status verbose # Zeigt detaillierte Informationen zu aktiven Regeln an
Warnung: Stellen Sie sicher, dass Sie mindestens den ssH-Zugriff zulassen, bevor Sie die Firewall aktivieren, um sich nicht selbst auszusperren!
Samba ermöglicht es Ihnen, Dateien und Drucker für Windows-Clients in Ihrem Netzwerk freizugeben. Die Konfiguration über Webmin ist besonders benutzerfreundlich.
Samba installieren:
# Auf Debian-basierten Systemen
sudo apt install samba
# Auf Arch Linux
sudo pacman -S samba
Samba über Webmin konfigurieren:
Navigieren Sie zu „Servers“ > „Samba Windows File Sharing“
Wählen Sie „Create a new file share“ aus
Freigabeinformationen konfigurieren:
Share-Name: Wählen Sie einen aussagekräftigen Namen, der im Netzwerk angezeigt wird (z.B. „Dokumente“ oder „Medien“)
Freizugebender Ordner: Geben Sie den vollständigen Pfad zum Ordner an, den Sie freigeben möchten (z.B. „/home/shared“ oder „/media/data“)
Zugriffsberechtigungen: Legen Sie fest, ob Benutzer nur lesen oder auch schreiben dürfen
Sichtbarkeitsoptionen: Bestimmen Sie, ob die Freigabe in der Netzwerkumgebung sichtbar sein soll
Tipp: Erstellen Sie den freizugebenden Ordner vorab und setzen Sie die richtigen Berechtigungen mitmkdir -p /pfad/zum/ordner
undchmod -R 770 /pfad/zum/ordner
.
Samba-Benutzer einrichten:
Samba verwendet ein separates Passwort-System für den Netzwerkzugriff:
Wählen Sie „Create Samba users“ aus
Wandeln Sie vorhandene lokale Benutzer in Samba-Benutzer um
Legen Sie sichere Passwörter für den Samba-Zugriff fest (diese können sich von den Linux-Passwörtern unterscheiden)
# Befehlszeilen-Alternative zur Benutzereinrichtung
sudo smbpasswd -a benutzername
Dienst aktivieren und starten:
sudo systemctl enable smbd nmbd
sudo systemctl restart smbd nmbd
Erklärung:smbd
ist der Hauptdienst für Dateifreigaben, währendnmbd
für die NetBIOS-Namensauflösung im Netzwerk zuständig ist.
Firewall für Samba anpassen:
sudo ufw allow samba
Diese Regel öffnet die erforderlichen Ports (137, 138 UDP und 139, 445 TCP) für den Samba-Dienst.
ssH (Secure Shell) ermöglicht den sicheren Fernzugriff auf Ihren Server. Eine ordnungsgemässe Konfiguration ist entscheidend für die Serversicherheit.
ssH-Server installieren (falls nicht vorhanden):
# Auf Debian-basierten Systemen
sudo apt install openssh-server
# Auf Arch Linux
sudo pacman -S openssh
ssH über Webmin absichern:
Navigieren Sie zu „Servers“ > „ssH Server“
Empfohlene Sicherheitseinstellungen:
Root-Login deaktivieren: Setzen Sie PermitRootLogin
auf no
, um direkte Root-Anmeldungen zu verhindern
Standard-Port ändern: Ändern Sie den Port von 22 auf einen nicht-standardmässigen Port (z.B. 2222) um automatisierte Angriffe zu reduzieren
Nur Schlüsselauthentifizierung erlauben: Deaktivieren Sie passwortbasierte Authentifizierung mit PasswordAuthentication no
Zugriffsbeschränkungen nach IP-Adressen: Nutzen Sie AllowUsers
oder AllowGroups
in Kombination mit from
Direktiven
Sicherheitshinweis: Die Verwendung von Schlüsseln statt Passwörtern bietet wesentlich besseren Schutz gegen Brute-Force-Angriffe.
Konfiguration anwenden:
sudo systemctl restart sshd
Firewall für den neuen ssH-Port aktualisieren:
sudo ufw allow [neuer-port]/tcp
sudo ufw deny 22/tcp # falls Sie den Standard-Port geändert haben
Wichtig: Testen Sie die neue ssH-Verbindung, bevor Sie die Sitzung schliessen, um sicherzustellen, dass Sie nicht ausgesperrt werden.
Die folgenden Massnahmen helfen, die Sicherheit Ihrer Webmin-Installation erheblich zu verbessern:
Webmin-Port ändern:
Ein nicht-standardmässiger Port erschwert automatisierten Scans das Auffinden Ihrer Webmin-Installation.
Navigieren Sie zu „Webmin“ > „Webmin Configuration“ > „Ports and Addresses“
Ändern Sie den Standard-Port 10000 auf einen anderen Wert (z.B. 10443)
Passen Sie die Firewall-Regel entsprechend an:
sudo ufw allow [neuer-port]/tcpsudo ufw deny 10000/tcp
ssL-Zertifikat implementieren:
Ein gültiges ssL-Zertifikat verhindert Warnungen im Browser und schützt vor Man-in-the-Middle-Angriffen.
Navigieren Sie zu „Webmin“ > „Webmin Configuration“ > „ssL Encryption“
Sie haben zwei Möglichkeiten:
Eigenes Zertifikat hochladen: Falls Sie bereits ein ssL-Zertifikat besitzen
Let’s Encrypt einrichten: Kostenlose und vertrauenswürdige Zertifikate (erfordert öffentlich zugänglichen Server)
IP-Zugriffsbeschränkungen:
Schränken Sie den Zugriff auf Webmin auf bestimmte IP-Adressen ein.
Navigieren Sie zu „Webmin“ > „Webmin Configuration“ > „IP Access Control“
Lassen Sie nur vertrauenswürdige IP-Adressen oder -Bereiche zu
Beispiel: Nur Zugriff aus Ihrem Heimnetzwerk (z.B. 192.168.1.0/24) erlauben
Zwei-Faktor-Authentifizierung aktivieren:
2FA bietet eine zusätzliche Sicherheitsebene, selbst wenn Ihre Passwörter kompromittiert werden.
Navigieren Sie zu „Webmin“ > „Webmin Configuration“ > „Two-Factor Authentication“
Richten Sie TOTP-basierte 2FA ein
Verwenden Sie Apps wie Google Authenticator, Authy oder Microsoft Authenticator auf Ihrem Smartphone
Regelmässige Updates:
Aktualisieren Sie regelmässig sowohl Webmin als auch das Betriebssystem, um Sicherheitslücken zu schliessen.
# Auf Debian-basierten Systemen
sudo apt update && sudo apt upgrade
# Auf Arch Linux
sudo pacman -Syu
Best Practice: Richten Sie automatische Sicherheitsupdates ein oder erstellen Sie einen regelmässigen Wartungsplan.
Eine effektive Serverüberwachung hilft Ihnen, Probleme frühzeitig zu erkennen und zu beheben, bevor sie kritisch werden.
System-Status-Dashboard konfigurieren:
Navigieren Sie zu „System“ > „System Status“
Wählen Sie relevante Überwachungsmetriken aus:
CPU-Auslastung
Arbeitsspeichernutzung
Festplattenplatz
Systemlast
Netzwerkverkehr
Tipp: Die Startseite von Webmin zeigt bereits grundlegende Systeminformationen an. Sie können diese jedoch anpassen, um die für Sie wichtigsten Metriken hervorzuheben.
Benachrichtigungen einrichten:
Lassen Sie sich bei kritischen Ereignissen automatisch benachrichtigen.
Navigieren Sie zu „Webmin“ > „Webmin Configuration“ > „System and Server Status“
Konfigurieren Sie E-Mail-Benachrichtigungen für:
Hohe Systemlast
Wenig freier Festplattenplatz
Dienstausfälle
Ungewöhnliche Anmeldeversuche
Wichtig: Stellen Sie sicher, dass der E-Mail-Versand auf Ihrem Server korrekt konfiguriert ist. Sie können dies unter „Servers“ > „Postfix Mail Server“ oder „Sendmail Mail Server“ tun.
Regelmässige Backups sind entscheidend, um bei Systemausfällen oder Fehkonfigurationen schnell wiederherstellungsfähig zu sein.
Webmin-Konfiguration sichern:
Navigieren Sie zu „Webmin“ > „Backup Configuration Files“
Legen Sie fest:
Welche Konfigurationsdateien gesichert werden sollen (empfohlen: alle)
Wo die Sicherungen gespeichert werden sollen (idealerweise auf einem externen Speicher)
Wie oft Sicherungen erstellt werden sollen (z.B. wöchentlich)
Best Practice: Speichern Sie Backups nicht nur lokal, sondern auch an einem anderen physischen Ort oder in der Cloud.
Systemwiederherstellungspunkte erstellen:
Nutzen Sie „System“ > „Filesystem Backup“
Nehmen Sie kritische Systemverzeichnisse in den Backup-Plan auf:
/etc
(Systemkonfigurationsdateien)
/home
(Benutzerdaten)
/var/www
(Webseiten, falls vorhanden)
Datenbanken (MySQL/MariaDB, PostgreSQL)
Tipp: Testen Sie regelmässig die Wiederherstellung Ihrer Backups, um sicherzustellen, dass sie im Ernstfall funktionieren.
Webmin bietet zahlreiche zusätzliche Module, die Ihre Serververwaltung verbessern können:
Systemprotokollierung überwachen:
Navigieren Sie zu „System“ > „System Logs“
Richten Sie regelmässige Überprüfungen der wichtigsten Protokolldateien ein
Achten Sie besonders auf Sicherheitswarnungen und Fehlermeldungen
Benutzer- und Gruppenverwaltung:
Unter „System“ > „Users and Groups“ können Sie:
Neue Benutzer anlegen
Gruppenberechtigungen verwalten
Passwortrichtlinien festlegen
Kontingente für Festplattennutzung einrichten
Geplante Aufgaben (Cron-Jobs):
Unter „System“ > „Scheduled Cron Jobs“ können Sie wiederkehrende Aufgaben planen:
Automatische Backups
Systembereinigung
Protokollrotation
Benutzerdefinierte Skripte
Webmin ist ein leistungsstarkes Werkzeug zur Linux-Serververwaltung, das besonders für gelegentliche Administratoren und Einsteiger wertvolle Dienste leistet. Um das Maximum aus Webmin herauszuholen, empfehlen wir:
Regelmässige Sicherheitsupdates sowohl für Webmin als auch für das Betriebssystem durchführen
Dokumentation der Konfigurationsänderungen für bessere Nachvollziehbarkeit erstellen
Kombination von GUI und CLI-Wissen für optimale Administrationsfähigkeiten aufbauen
Mehrschichtige Sicherheitsmassnahmen implementieren (Firewall, Zugriffsbeschränkungen, 2FA)
Umfassende Backup-Strategie für alle kritischen Konfigurationen und Daten entwickeln
Monitoring und Alarmsysteme einrichten, um frühzeitig auf Probleme reagieren zu können
Durch die Beachtung dieser Empfehlungen können Sie Webmin effektiv und sicher als zentrales Verwaltungstool für Ihre Linux-Server einsetzen und gleichzeitig wertvolle Erfahrungen in der Systemadministration sammeln.
Mehr Videos findet man auf meinem Youtube Kanal linuxcoach:
https://www.youtube.com/@linuxcoach
Ein weiterer Interessanter Artikel zu diesem Thema:
https://computer-experte.ch/g4music/