Konfigurieren des SSH-Zugriffs in Virtualmin
Virtualmin ist ein leistungsstarkes Serververwaltungstool, mit dem Sie mehrere Domänen und Dienste über eine intuitive Weboberfläche verwalten können. Die Konfiguration des SSH-Zugriffs ist einer der wichtigsten Aspekte, die bei der Verwaltung eines Servers berücksichtigt werden müssen, da sie sichere und verschlüsselte Verbindungen für die Fernverwaltung ermöglicht. In diesem Artikel erklären wir detailliert, wie Sie den SSH-Zugriff in Virtualmin konfigurieren, und decken dabei alles von der SSH-Schlüsselgenerierung bis hin zur Verbindungssicherheit und Zugriffsüberwachung ab.
SSH-Schlüsselgenerierung
Die Verwendung von SSH-Schlüsseln ist eine der Best Practices für die sichere Authentifizierung von Benutzern bei einem Server. SSH-Schlüssel sind kryptografische Schlüsselpaare, die die Integrität und Vertraulichkeit von SSH-Verbindungen gewährleisten.
Was ist ein SSH-Schlüssel?
Ein SSH-Schlüssel besteht aus zwei Teilen: einem privaten Schlüssel, der sicher aufbewahrt werden muss, und einem öffentlichen Schlüssel, der weitergegeben werden kann. Die Authentifizierung erfolgt durch Überprüfung des öffentlichen Schlüssels auf dem Server und des privaten Schlüssels auf dem Client.
Generieren von SSH-Schlüsseln in Virtualmin
- Zugriff auf Virtualmin: Melden Sie sich über Ihren Webbrowser bei Virtualmin an.
- Navigieren Sie zur SSH-Verwaltung: Gehe zu
Webmin > Server > SSH-Server
. - Authentifizierungseinstellungen: Wählen Sie die Registerkarte aus
Authentifizierung
und dann klickenErzeugen Sie ein neues Schlüsselpaar
. - Generieren Sie den Schlüssel: Wählen Sie den Schlüsseltyp (normalerweise ist RSA eine sichere Option) und die Schlüsselgröße (mindestens 2048 Bit). Geben Sie eine Passphrase ein, wenn Sie zusätzliche Sicherheit wünschen.
- Bewahren Sie die Schlüssel auf: Exportieren Sie den öffentlichen Schlüssel und speichern Sie ihn auf Ihrem Server in der Datei
~/.ssh/authorized_keys
des Benutzers. Der private Schlüssel muss an einem sicheren Ort auf dem Client-Computer gespeichert werden.
Berechtigungseinstellungen
Sobald die SSH-Schlüssel generiert sind, ist es wichtig, die Berechtigungen entsprechend zu konfigurieren, um sicherzustellen, dass nur autorisierte Benutzer auf den Server zugreifen können.
Einstellungen autorisierte_Schlüssel
- Datei bearbeiten
autorisierte_Schlüssel
: Melden Sie sich bei Ihrem Server als der Benutzer an, den Sie konfigurieren und die Datei bearbeiten möchten~/.ssh/authorized_keys
um den neu generierten öffentlichen Schlüssel einzuschließen. - Dateiberechtigungen: Stellen Sie sicher, dass die Datei
autorisierte_Schlüssel
haben Berechtigungen 600 (nur der Besitzer kann lesen und schreiben).
chmod 600 ~/.ssh/authorized_keys
- Verzeichnisberechtigungen: Stellen Sie sicher, dass das Verzeichnis vorhanden ist
~/.ssh
haben Berechtigungen 700 (nur der Besitzer kann lesen, schreiben und ausführen).
chmod 700 ~/.ssh
Berechtigungseinstellungen in Virtualmin
- Greifen Sie auf die SSH-Servereinstellungen zu: Gehe zu
Webmin > Server > SSH-Server
. - Greifen Sie auf Einstellungen zu: In der Registerkarte
Zugangskontrolle
können Sie festlegen, welche Benutzer oder Gruppen sich über SSH anmelden dürfen.
Sicherheit bei SSH-Verbindungen
Die Sicherung von SSH-Verbindungen ist unerlässlich, um Ihren Server vor unbefugtem Zugriff zu schützen. Nachfolgend finden Sie einige Best Practices und Einstellungen, die Sie in Virtualmin anwenden können, um die Sicherheit zu verbessern.
Deaktivieren Sie den Passwortzugriff
Sobald SSH-Schlüssel konfiguriert sind, wird empfohlen, den Passwortzugriff zu deaktivieren, um Brute-Force-Angriffe zu verhindern.
- Bearbeiten Sie die SSH-Einstellungen: Gehe zu
Webmin > Server > SSH-Server > Authentifizierung
. - Deaktivieren Sie den Passwortzugriff: Deaktivieren Sie die Option
Passwortauthentifizierung
und stellen Sie sicherPermitRootLogin
ist eingestellt aufVerbotspasswort
.
Ändern Sie den Standardport
Durch Ändern des Standardports (22) kann die Anzahl unbefugter Zugriffsversuche verringert werden.
- Bearbeiten Sie die SSH-Einstellungen: Gehe zu
Webmin > Server > SSH-Server > Netzwerk
. - Ändern Sie den Port: Geben Sie eine neue Portnummer in das Feld ein
Hafen
.
Port 2222 (zum Beispiel)
Konfigurieren Sie die Firewall
Stellen Sie sicher, dass nur autorisierte IP-Adressen auf den neuen SSH-Port zugreifen können. Dies kann über die Firewall Ihres Servers konfiguriert werden.
- Greifen Sie auf die Firewall zu: Gehe zu
Webmin > Netzwerk > Linux-Firewall
. - Regeln aufstellen: Regeln hinzufügen, um Datenverkehr am SSH-Port und von autorisierten IPs zuzulassen.
Verwenden von Fail2Ban
Fail2Ban ist ein Tool, das IP-Adressen blockieren kann, die Anzeichen bösartiger Aktivitäten aufweisen, wie beispielsweise mehrere fehlgeschlagene Anmeldeversuche.
- Installieren Sie Fail2Ban:
sudo apt-get install fail2ban
- Konfigurieren Sie Fail2Ban: Bearbeiten Sie die Datei
/etc/fail2ban/jail.local
um spezifische Regeln für SSH aufzunehmen
[sshd] aktiviert = true port = 2222 logpath = /var/log/auth.log maxretry = 3
Verwendung der Zwei-Faktor-Authentifizierung (2FA)
Für eine zusätzliche Sicherheitsebene sollten Sie die Implementierung einer Zwei-Faktor-Authentifizierung (2FA) in Betracht ziehen. Dies kann mit Google Authenticator oder einem anderen SSH-kompatiblen Tool erfolgen.
Zugangsüberwachung
Die Überwachung der SSH-Zugriffe ist entscheidend, um verdächtige Aktivitäten schnell zu erkennen und darauf zu reagieren.
SSH-Protokolle
SSH-Zugriffsprotokolle befinden sich im Allgemeinen in /var/log/auth.log
entweder /var/log/secure
abhängig von der Betriebssystemverteilung.
- Überprüfen Sie die Protokolle: Sie können die Protokolle manuell mit Tools wie überprüfen
grep
.
grep „Passwort fehlgeschlagen“ /var/log/auth.log
Konfiguration in Virtualmin
Virtualmin ermöglicht die Konfiguration von Benachrichtigungen für bestimmte Ereignisse, was für die Überwachung von SSH-Zugriffen nützlich sein kann.
- Zugriffsbenachrichtigungen: Gehe zu
Webmin > System > System- und Serverstatus
. - Benachrichtigungen einrichten: Wählen
Geplante Überwachung
und konfigurieren Sie Benachrichtigungen für SSH-Ereignisse.
Einsatz von Überwachungstools
Für eine erweiterte Überwachung stehen Tools wie zur Verfügung Nagios
, Zabbix
entweder Prometheus
Sie können integriert werden, um Echtzeitüberwachung und -warnungen zu bieten.
Abschluss
Die ordnungsgemäße Konfiguration des SSH-Zugriffs in Virtualmin ist wichtig, um Ihren Server zu sichern und ihn vor unbefugtem Zugriff zu schützen. Von der Generierung von SSH-Schlüsseln über die Konfiguration von Berechtigungen bis hin zur Implementierung von Sicherheitsmaßnahmen ist jeder Schritt entscheidend für die Aufrechterhaltung der Integrität und Sicherheit Ihrer Serverumgebung. Vergessen Sie nicht, den Zugriff regelmäßig zu überwachen und sich stets der bewährten Sicherheitspraktiken bewusst zu sein, um sicherzustellen, dass Ihr Server sicher bleibt.
Die Implementierung dieser Einstellungen schützt nicht nur Ihren Server, sondern gibt Ihnen auch die Gewissheit, dass Ihre Umgebung sicher und unter Kontrolle ist.
Zusammenhängende Posts:
- So verwalten Sie Benutzerberechtigungen in Virtualmin: Erstellung, Zuweisung von Berechtigungen, Rollenverwaltung und Zugriffsprüfung
- Dateiübertragungssicherheit in Virtualmin: SFTP/FTPS-Konfiguration, Berechtigungsverwaltung, Verschlüsselung und Sicherheitsüberwachung
- Konfigurieren Sie die LDAP-Authentifizierung in Virtualmin: Installation, Benutzerverwaltung und Zugriffsüberwachung
- So prüfen Sie die Sicherheit in Virtualmin: Konfigurationsüberprüfung, Zugriffsüberwachung und Protokollanalyse