Webmin einrichten

Webmin einrichten

Einführung

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.

 

1. Installation von Webmin

Auf Debian-basierten Systemen (Ubuntu, Debian, Linux Mint)

  1. 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"
  2. Webmin installieren:

    Nach dem Hinzufügen des Repositories können Sie Webmin mit folgendem Befehl installieren:

    sudo apt update sudo apt install -y webmin

Auf Arch Linux

  1. 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

 

2. Grundkonfiguration und Start von Webmin

  1. 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.
  2. 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.

 

3. Firewall-Konfiguration mit UFW über Webmin

UFW (Uncomplicated Firewall) bietet eine einfache Möglichkeit, die Netzwerksicherheit Ihres Servers zu verbessern, indem Sie steuern, welcher Datenverkehr erlaubt und welcher blockiert wird.

  1. UFW installieren (falls nicht vorhanden):

    # Auf Debian-basierten Systemen sudo apt install ufw # Auf Arch Linux sudo pacman -S ufw
  2. 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

  3. 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!

 

4. Samba-Dateifreigaben einrichten

Samba ermöglicht es Ihnen, Dateien und Drucker für Windows-Clients in Ihrem Netzwerk freizugeben. Die Konfiguration über Webmin ist besonders benutzerfreundlich.

  1. Samba installieren:

    # Auf Debian-basierten Systemen sudo apt install samba # Auf Arch Linux sudo pacman -S samba
  2. 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 mit mkdir -p /pfad/zum/ordner und chmod -R 770 /pfad/zum/ordner.
  3. 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
  4. Dienst aktivieren und starten:

    sudo systemctl enable smbd nmbd sudo systemctl restart smbd nmbd
    Erklärung: smbd ist der Hauptdienst für Dateifreigaben, während nmbd für die NetBIOS-Namensauflösung im Netzwerk zuständig ist.
  5. 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.

 

5. ssH-Sicherheitskonfiguration

ssH (Secure Shell) ermöglicht den sicheren Fernzugriff auf Ihren Server. Eine ordnungsgemässe Konfiguration ist entscheidend für die Serversicherheit.

  1. ssH-Server installieren (falls nicht vorhanden):

    # Auf Debian-basierten Systemen sudo apt install openssh-server # Auf Arch Linux sudo pacman -S openssh
  2. 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.
  3. Konfiguration anwenden:

    sudo systemctl restart sshd
  4. 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.

 

6. Erweiterte Sicherheitsmassnahmen für Webmin

Die folgenden Massnahmen helfen, die Sicherheit Ihrer Webmin-Installation erheblich zu verbessern:

  1. 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
  2. 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)

  3. 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

  4. 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

  5. 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.

 

7. Monitoring-Funktionen einrichten

Eine effektive Serverüberwachung hilft Ihnen, Probleme frühzeitig zu erkennen und zu beheben, bevor sie kritisch werden.

  1. 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.
  2. 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.

 

8. Backup-Strategie implementieren

Regelmässige Backups sind entscheidend, um bei Systemausfällen oder Fehkonfigurationen schnell wiederherstellungsfähig zu sein.

  1. 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.
  2. 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.

 

9. Erweiterte Modulkonfiguration

Webmin bietet zahlreiche zusätzliche Module, die Ihre Serververwaltung verbessern können:

  1. 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

  2. Benutzer- und Gruppenverwaltung:

    • Unter „System“ > „Users and Groups“ können Sie:

      • Neue Benutzer anlegen

      • Gruppenberechtigungen verwalten

      • Passwortrichtlinien festlegen

      • Kontingente für Festplattennutzung einrichten

  3. Geplante Aufgaben (Cron-Jobs):

    • Unter „System“ > „Scheduled Cron Jobs“ können Sie wiederkehrende Aufgaben planen:

      • Automatische Backups

      • Systembereinigung

      • Protokollrotation

      • Benutzerdefinierte Skripte

 

Fazit

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:

  1. Regelmässige Sicherheitsupdates sowohl für Webmin als auch für das Betriebssystem durchführen

  2. Dokumentation der Konfigurationsänderungen für bessere Nachvollziehbarkeit erstellen

  3. Kombination von GUI und CLI-Wissen für optimale Administrationsfähigkeiten aufbauen

  4. Mehrschichtige Sicherheitsmassnahmen implementieren (Firewall, Zugriffsbeschränkungen, 2FA)

  5. Umfassende Backup-Strategie für alle kritischen Konfigurationen und Daten entwickeln

  6. 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.

 

Weiterführende Ressourcen



Webmin einrichten

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/