SSH ist ein Netzwerkprotokoll, das eine sichere Verbindung zwischen einem Client und einem Server herstellt. Die gesamte Kommunikation wird verschlüsselt, wodurch Datendiebstahl und andere Netzwerkangriffe verhindert werden.
Angenommen, Sie haben einen Cloud-Server bei Hostman bestellt. Dann benötigen Sie SSH, um sich mit dem Server zu verbinden und diesen zu verwalten.
Die folgende Anleitung beschreibt, wie Sie SSH auf Ubuntu 22.04 installieren und konfigurieren.
Bevor Sie mit der Installation und Konfiguration des Secure Shell Dienstes beginnen, stellen Sie sicher, dass die folgenden Voraussetzungen erfüllt sind:
Kenntnisse der Linux-Kommandozeile für die Konfiguration
Sie sollten grundlegende Linux-Befehle wie sudo
, apt
, nano
und systemctl
beherrschen. Diese Befehle werden während des Installations- und Konfigurationsprozesses häufig verwendet. Ein sicherer Umgang mit der Kommandozeile ist entscheidend für eine effektive Verwaltung des Dienstes.
Root- oder sudo-Zugriff für das Setup
Administrative (roo
t) Berechtigungen sind erforderlich, um den Server zu installieren und zu konfigurieren. Benutzer müssen entweder sudo
-Zugriff haben oder als root angemeldet sein. Ohne diese Berechtigungen kann die Einrichtung nicht fortgesetzt werden.
Internetverbindung für den Paketdownload
Eine stabile Internetverbindung ist notwendig, um den OpenSSH-Server und weitere zugehörige Pakete zu installieren. Ohne eine funktionierende Verbindung kann das System die erforderlichen Softwarekomponenten nicht abrufen.
Falls auf dem System eine Firewall wie UFW aktiviert ist, könnte diese standardmäßig den Fernzugriff blockieren. Es ist essenziell, die Firewall so zu konfigurieren, dass eingehende Verbindungen erlaubt sind. Nutzen Sie UFW oder ein anderes Firewall-Tool, um sicherzustellen, dass Port 22 geöffnet und erreichbar ist.
Sie benötigen physischen Zugriff auf ihre Maschine, um den Dienst lokal einzurichten, oder das System muss über ihre IP-Adresse remote erreichbar sein. Stellen Sie sicher, dass das System korrekt mit dem Netzwerk verbunden ist.
Vergessen Sie nicht, dass Sie Ihren Cloud-Server schnell und günstig über unser VPS Server Hosting bereitstellen können.
Aktualisieren Sie zunächst alle apt
-Pakete auf die neuesten Versionen. Verwenden Sie dafür den folgenden Befehl:
sudo apt update && sudo apt upgrade
OpenSSH ist standardmäßig nicht installiert. Installieren Sie es manuell über das Terminal:
sudo apt install openssh-server
Die Installation aller notwendigen Komponenten beginnt. Antworten Sie auf alle Systemfragen mit „Yes“.
Nachdem die Installation abgeschlossen ist, gehen Sie zum nächsten Schritt über.
Aktivieren Sie nun den soeben installierten Dienst mit folgendem Befehl:
sudo systemctl enable --now ssh
Nach erfolgreichem Start erscheint eine Systemmeldung.
Der Parameter --now
startet den Dienst sofort und stellt ihn auf Autostart beim Systemstart ein.
Prüfen Sie, ob der Dienst erfolgreich läuft:
sudo systemctl status ssh
In der Ausgabe sollte die Zeile Active: active (running)
erscheinen.
Um den Dienst zu deaktivieren, verwenden Sie:
sudo systemctl disable ssh
Dadurch wird der Dienst deaktiviert und startet beim Booten nicht mehr automatisch.
Bevor Sie sich per SSH mit dem Server verbinden, prüfen Sie die Firewall-Einstellungen.
Wir verwenden hier UFW. Nutzen Sie:
sudo ufw status
In der Ausgabe sollte SSH erlaubt sein. Falls nicht, erlauben Sie SSH mit:
sudo ufw allow ssh
Nachdem Sie alle vorherigen Schritte durchgeführt haben, können Sie sich nun per SSH anmelden.
Sie benötigen die IP-Adresse oder den Domainnamen des Servers sowie den Namen eines dort angelegten Benutzers.
Im Terminal geben Sie ein:
ssh benutzername@IP_adress
Oder:
ssh username@domain
Wichtig: SSH muss auf dem Remote-Server und dem lokalen Rechner installiert und konfiguriert sein.
Für erhöhte Sicherheit können Sie anstelle der Passwort-Authentifizierung ein Schlüsselpaar verwenden. Erstellen Sie eines mit:
ssh-keygen
Nachdem Sie die vorherigen fünf Schritte abgeschlossen haben, können Sie sich bereits remote mit dem Server verbinden. Sie können jedoch die Sicherheit der Verbindung weiter erhöhen, indem Sie den standardmäßigen Verbindungsport ändern oder von der Passwort-Authentifizierung zur Schlüssel-Authentifizierung wechseln. Diese und weitere Änderungen erfordern das Bearbeiten der SSH-Konfigurationsdatei.
Die wichtigsten Einstellungen des OpenSSH-Servers befinden sich in der Hauptkonfigurationsdatei sshd_config
(Pfad: /etc/ssh
). Bevor Sie mit dem Bearbeiten beginnen, sollten Sie eine Sicherungskopie dieser Datei erstellen:
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.initial
Wenn beim Bearbeiten Fehler auftreten, können Sie die ursprüngliche Datei problemlos wiederherstellen.
Nach der Erstellung des Backups können Sie mit dem Bearbeiten der Konfigurationsdatei fortfahren. Öffnen Sie diese mit dem Editor Nan
o:
sudo nano /etc/ssh/sshd_config
Ändern Sie in der Datei den Port zu einem sichereren. Am besten setzen Sie Werte aus dem dynamischen Port-Bereich (49152–65535) ein und verwenden zur zusätzlichen Sicherheit unterschiedliche Zahlen. Ändern Sie zum Beispiel den Port auf 49532. Entfernen Sie hierfür das Kommentarzeichen (#) vor der entsprechenden Zeile und ändern Sie den Port-Wert entsprechend, wie im Screenshot unten gezeigt.
Zusätzlich zu dieser Einstellung empfehlen wir, die Passwort-Authentifizierung auf die sicherere Schlüssel-Authentifizierung umzustellen. Entfernen Sie dazu das Kommentarzeichen (#) vor der entsprechenden Zeile und stellen Sie sicher, dass der Wert auf „Yes“ gesetzt ist, wie im Screenshot gezeigt.
Als Nächstes verbieten Sie die Anmeldung als Superuser (Root-Benutzer) auf dem Server, indem Sie die entsprechende Zeile wie im Screenshot unten gezeigt ändern.
Es gibt weitere Einstellungen, mit denen Sie die Serversicherheit erhöhen können:
UseDNS
überprüft, ob der Hostname mit seiner IP-Adresse übereinstimmt. Der Wert „Yes“ aktiviert diesen Parameter.
PermitEmptyPasswords
verbietet die Verwendung leerer Passwörter, wenn der Wert „No“ ist.
MaxAuthTries
beschränkt die Anzahl der erfolglosen Verbindungsversuche innerhalb einer Sitzung.
AllowUsers
und AllowGroup
s steuern die Liste der Benutzer und Gruppen, die Zugriff auf den Server haben dürfen:
# AllowUsers Benutzer1 Benutzer2 Benutzer3
# AllowGroups Gruppe1 Gruppe2 Gruppe3
LoginGraceTime
definiert die erlaubte Zeitspanne für eine erfolgreiche Anmeldung. Wir empfehlen, diesen Wert auf ein Viertel des Standardwertes zu reduzieren.
ClientAliveInterval
begrenzt die Dauer der Benutzerinaktivität. Wird das Limit überschritten, wird der Benutzer getrennt.
Nachdem Sie alle Änderungen in der Hauptkonfigurationsdatei vorgenommen haben, speichern Sie diese und schließen Sie den Editor.
Starten Sie den SSH-Dienst neu, damit die Änderungen wirksam werden:
sudo systemctl restart ssh
Wenn Sie den Port in der Konfigurationsdatei geändert haben, müssen Sie sich wie folgt verbinden:
ssh -p portnummer benutzername@IP_adresse
Oder:
ssh -p portnummer benutzername@domain
sudo systemctl status ssh
sudo systemctl restart ssh
sudo ufw allow 22
ping <server-ip-adresse>
Falls Sie den Remote-Zugriff deaktivieren möchten, führen Sie diese Schritte aus:
Dienst temporär stoppen:
sudo systemctl stop ssh
Automatischen Start verhindern:
sudo systemctl disable ssh
Bestätigen, dass der Dienst inaktiv ist:
sudo systemctl status ssh
SSH-Server deinstallieren:
sudo apt remove openssh-server
Dieser Artikel zeigt Schritt für Schritt, wie Sie SSH unter Ubuntu 22.04 installieren, konfigurieren und sicherer machen. Wir hoffen, diese Anleitung hilft Ihnen, eine sichere Remote-Verbindung zu Ihrem Ubuntu-Server einzurichten.
Weitere Informationen zu SSH-Schlüsseln finden Sie hier.