So installieren und konfigurieren Sie SSH
SSH auf AlexHost VPS installieren und sichern: Zero-Trust Setup in 2025
SSH = Ihre einzige Tür zum Server. Falsch konfiguriert = gehackt in <5 min. Der VPS von AlexHost mit NVMe und DDoS-Schutz bietet Ihnen Root-Zugriff und einen 1-Gbit/s-Port – perfekt für gehärtetes SSH. In diesem Artikel zeigen wir Ihnen, wie Sie SSH unter Linux installieren und konfigurieren, und gehen dabei auf die Grundlagen, Konfigurationsoptionen und Sicherheitsempfehlungen ein.
Was ist SSH?
SSH steht für Secure Shell und ermöglicht es Benutzern, über eine Befehlszeilenschnittstelle eine sichere Verbindung zu einem entfernten System herzustellen. Das Protokoll verschlüsselt die Daten zwischen dem Client und dem Server, was es zu einer sicheren Kommunikationsmethode macht, insbesondere für den Zugriff auf Server über ein ungesichertes Netzwerk wie das Internet. SSH arbeitet standardmäßig über Port 22 und kann für Folgendes verwendet werden
- Fernanmeldung bei Servern
- Sichere Dateiübertragung (mit SCP oder SFTP)
- Ausführung von Fernbefehlen
- Portweiterleitung und Tunneling
Schritt 1: Installieren von SSH
Bei den meisten Linux-Distributionen ist SSH bereits vorinstalliert, aber wenn es nicht installiert ist, können Sie es einfach mit dem Paketmanager Ihrer Distribution installieren
Für Ubuntu/Debian:
Für CentOS/RHEL:
Für Fedora:
Für Arch Linux:
Nach der Installation haben Sie den OpenSSH-Server und -Client installiert, so dass Sie sowohl einen SSH-Server betreiben als auch eine Verbindung zu anderen SSH-Servern herstellen können
Schritt 2: Starten und Aktivieren des SSH-Dienstes
Nach der Installation müssen Sie den SSH-Dienst (auch bekannt als sshd – SSH-Daemon) starten und aktivieren, damit er beim Systemstart ausgeführt wird
Starten des SSH-Dienstes:
Aktivieren von SSH zum Starten beim Systemstart:
Sie können überprüfen, ob SSH korrekt läuft, indem Sie Folgendes eingeben
Wenn der Dienst läuft, sehen Sie einen aktiven Status, der anzeigt, dass SSH bereit ist, Verbindungen zu akzeptieren
Schritt 3: Grundlegende SSH-Konfiguration
Das Verhalten von SSH wird durch die Konfigurationsdatei gesteuert, die sich unter
Sie können diese Datei bearbeiten, um die SSH-Einstellungen zu ändern, z. B. den Standard-Port zu ändern, den Root-Login zu deaktivieren oder die schlüsselbasierte Authentifizierung einzurichten. Um die Datei zu bearbeiten, verwenden Sie einen Texteditor wie nano oder vim
Einige häufige Konfigurationsänderungen sind
1. Ändern des Standard-SSH-Ports
Aus Sicherheitsgründen ist es eine gute Idee, den Standard-SSH-Port von 22 auf einen anderen Port zu ändern. Dadurch lässt sich das Risiko automatischer Angriffe auf den Standard-SSH-Port verringern. Suchen Sie die folgende Zeile in der Konfigurationsdatei
Heben Sie den Kommentar auf und ändern Sie die Portnummer
Nachdem Sie die Datei gespeichert haben, starten Sie den SSH-Dienst neu, um die Änderungen zu übernehmen
Stellen Sie sicher, dass Sie Ihre Firewall-Regeln aktualisieren, um Verbindungen über den neuen Port zuzulassen
2. Root-Login deaktivieren
Das Zulassen des Root-Logins über SSH stellt ein Sicherheitsrisiko dar. Um dies zu verhindern, finden Sie die folgende Zeile in der Konfigurationsdatei
Ändern Sie sie in
Damit wird der direkte Root-Zugang über SSH verhindert. Benutzer können sich weiterhin mit einem normalen Konto anmelden und dann mit sudo oder su zu root wechseln
3. Aktivieren Sie die schlüsselbasierte Authentifizierung
Die schlüsselbasierte SSH-Authentifizierung ist eine sicherere Methode als die Verwendung von Passwörtern. Dabei wird ein SSH-Schlüsselpaar (öffentlicher und privater Schlüssel) erzeugt und der private Schlüssel zur Authentifizierung verwendet. Um die schlüsselbasierte Authentifizierung zu erzwingen, suchen Sie die folgenden Zeilen und stellen Sie sicher, dass sie auf yes gesetzt sind
Damit wird die passwortbasierte Anmeldung deaktiviert und der SSH-Zugang nur über die schlüsselbasierte Authentifizierung ermöglicht
Schritt 4: Erzeugen von SSH-Schlüsseln (schlüsselbasierte Authentifizierung)
SSH-Schlüsselpaare bieten eine sichere Möglichkeit, sich ohne Passwort anzumelden. Im Folgenden wird beschrieben, wie Sie SSH-Schlüssel erzeugen und einrichten
Schritt 1: Erzeugen des SSH-Schlüsselpaars
Führen Sie auf Ihrem lokalen Rechner den folgenden Befehl aus, um ein Schlüsselpaar zu erzeugen
Sie werden aufgefordert, einen Dateinamen zum Speichern des Schlüssels einzugeben (oder drücken Sie die Eingabetaste, um den Standardspeicherort zu verwenden) sowie eine optionale Passphrase für zusätzliche Sicherheit. Dadurch werden zwei Dateien erstellt
- ~/.ssh/id_rsa: Ihr privater Schlüssel (bewahren Sie diesen sicher auf und geben Sie ihn nicht weiter).
- ~/.ssh/id_rsa.pub: Ihr öffentlicher Schlüssel (dieser kann weitergegeben und zu entfernten Servern hinzugefügt werden).
Schritt 2: Kopieren Sie den öffentlichen Schlüssel auf den Server
Um den Schlüssel für die SSH-Anmeldung zu verwenden, kopieren Sie den öffentlichen Schlüssel auf den entfernten Server, auf den Sie zugreifen möchten. Dies können Sie mit dem Befehl ssh-copy-id tun
Ersetzen Sie username durch den Benutzernamen Ihres Fernservers und remote_host durch die IP-Adresse oder den Hostnamen des Servers. Dadurch wird Ihr öffentlicher Schlüssel auf den Server kopiert und der Datei ~/.ssh/authorized_keys hinzugefügt, so dass Sie sich ohne Passwort anmelden können
Schritt 3: Anmelden mit SSH-Schlüssel
Nun können Sie sich mit Ihrem privaten Schlüssel beim entfernten Server anmelden
Wenn Sie einen benutzerdefinierten Port festgelegt haben, geben Sie ihn mit der Option -p an
Schritt 5: Sichern Sie Ihre SSH-Konfiguration
Nach der Einrichtung von SSH ist es wichtig, bewährte Sicherheitsverfahren zu befolgen, um sicherzustellen, dass Ihr Server vor unbefugtem Zugriff geschützt ist
1. Verwenden Sie starke Passwörter (wenn Sie Passwort-Authentifizierung verwenden)
Wenn Sie keine schlüsselbasierte Authentifizierung verwenden, stellen Sie sicher, dass alle Benutzerkonten starke, komplexe Passwörter verwenden
2. Verwenden Sie eine Firewall
Stellen Sie sicher, dass die Firewall Ihres Servers nur Datenverkehr über den von Ihnen verwendeten SSH-Port zulässt. Wenn Sie beispielsweise SSH auf Port 2222 geändert haben, lassen Sie den Datenverkehr an diesem Port mit ufw (unter Ubuntu/Debian) oder firewalld (unter CentOS/RHEL) zu
3. SSH-Zugang beschränken
Beschränken Sie den SSH-Zugang auf bestimmte IP-Adressen oder Bereiche, indem Sie die Firewall konfigurieren oder /etc/hosts.allow und /etc/hosts.deny verwenden
Schritt 6: Testen und Fehlersuche bei SSH
Nachdem Sie SSH konfiguriert haben, ist es wichtig, Ihre Einrichtung zu testen. Versuchen Sie, sich über SSH anzumelden, um sicherzustellen, dass alles korrekt funktioniert
Allgemeine Tipps zur SSH-Fehlerbehebung:
- Überprüfen Sie die Firewall-Einstellungen: Stellen Sie sicher, dass die Firewall den SSH-Port nicht blockiert.
- Prüfen Sie den Status des SSH-Dienstes: Stellen Sie mit systemctl status ssh sicher, dass der SSH-Dienst läuft.
- Überprüfen Sie die Konfiguration: Überprüfen Sie die Datei /etc/ssh/sshd_config auf eventuelle Fehlkonfigurationen.
- Verwenden Sie den Ausführlichen Modus zur Fehlersuche: Wenn es Probleme gibt, verwenden Sie beim Herstellen einer Verbindung die Option -v, um eine detaillierte Ausgabe zu erhalten:
Schlussfolgerung
Die Installation und Konfiguration von SSH ist eine grundlegende Fähigkeit für jeden Linux-Administrator oder Benutzer, der entfernte Systeme sicher verwalten muss. Anhand dieses Leitfadens können Sie SSH einrichten, es für einen sicheren Zugriff konfigurieren und bewährte Verfahren zum Schutz Ihres Servers vor unbefugtem Zugriff implementieren. Einmal konfiguriert, wird SSH zu einem leistungsstarken Werkzeug für die Fernverwaltung, Automatisierung und sichere Kommunikation zwischen Systemen.


