So richten Sie SSH unter Linux ein und verwenden es

Wenn Sie Linux schon eine Weile verwenden, haben Sie sicherlich von einem Tool namens SSH gehört. Secure Shell, allgemein bekannt als SSH, ist ein Netzwerkprotokoll zur Einrichtung sicherer Verbindungen zwischen einem Client und einem Remote-Server. Es wurde entwickelt, um Benutzern zu ermöglichen, sich sicher von einem Netzwerk aus bei verschiedenen Computern einzuloggen. Hier zeigen wir Ihnen, wie Sie die SSH-Schlüssel einfach auf Ihren Server einrichten und kopieren.
Auch lesen: So zeigen Sie alle aktiven SSH-Verbindungen unter Linux an
SSH installieren
Um zu beginnen, müssen wir den SSH-Server installieren. Sie können das Paket openssh-server im Software-Center oder Ihrem Paketmanager finden und installieren. Alternativ, wenn Sie sich auf einem Server befinden (oder einfach die Befehlszeile bevorzugen), öffnen Sie ein Terminal und geben Sie den folgenden Befehl ein:
# Ubuntu/Debian
sudo apt install openssh-server
# Fedora/CentOS/REHL
sudo dnf install openssh-server
Auch lesen: So erstellen Sie ein SSH-Honeypot, um Hacker auf Ihrem Linux-Server zu fangen
SSH unter Linux aktivieren
Nachdem der OpenSSH-Server auf Ihrem System installiert wurde, müssen Sie die systemd-Einheit starten und aktivieren. Dazu können Sie einfach den folgenden Befehl in das Terminal eingeben:
sudo systemctl enable --now ssh
Gut zu wissen: Sie können Programme unter Linux mit SSH-Pipes verbinden.
SSH-Schlüssel generieren
Nachdem Sie den openssh-Server installiert haben, können Sie beginnen, SSH-Schlüsselpaare zu generieren. Stellen Sie vor dem Fortfahren sicher, dass Sie kein vorhandenes Schlüsselpaar haben, da dieser Prozess das vorhandene überschreibt.
Um zu überprüfen, ob Sie ein vorhandenes Schlüsselpaar haben, verwenden Sie den Befehl:
ls -la ~/.sshWenn Sie ein vorhandenes Schlüsselpaar haben, sollte der obige Befehl die Dateien „id_rsa“ und „id_rsa.pub“ anzeigen.

Sobald Sie bestätigt haben, dass Sie kein vorhandenes SSH-Schlüsselpaar haben, können Sie fortfahren, ein neues zu generieren. Andernfalls sichern Sie Ihre alten Schlüssel, um den Verlust zu vermeiden.
Um einen neuen Schlüssel zu generieren, verwenden Sie den Befehl:
ssh-keygen -t rsa -b 4096Der obige Befehl ruft das Dienstprogramm ssh-keygen auf, um interaktiv ein SSH-Schlüsselpaar zu generieren. Mit der Option -t geben wir den zu generierenden Schlüsseltpy an. In diesem Fall generieren wir einen RSA-Schlüssel.
Wir verwenden auch die Option -b, um die Anzahl der Bits im Schlüssel anzugeben. Wenn Sie einen RSA-Schlüssel verwenden, beträgt die Mindestgröße in Bits 1024. Wenn nicht angegeben, wird der Schlüssel mit 3072 Bits generiert.

Es ist ratsam, den Standardspeicherort für die SSH-Schlüssel zu verwenden, um zu vermeiden, dass Sie den Pfad beim Verbinden über SSH mit den Schlüsseln eingeben müssen.
Wenn Sie Ihren Schlüssel nicht mit einer Passphrase verschlüsseln möchten, drücken Sie die Eingabetaste, um zu überspringen.
Schlüssel auf den Remote-Server kopieren
Jetzt, da wir ein neues SSH-Schlüsselpaar generiert haben, müssen wir es auf die Remote-Maschine hochladen, die wir verwalten möchten.
Der effizienteste Weg, dies zu tun, ist die Verwendung des Befehls ssh-copy-id. Verwenden Sie den Befehl wie folgt:
ssh-copy-id remote_user@remote_IPWenn Sie eine Schlüsseldatei mit einem anderen Dateinamen verwenden, können Sie den folgenden Befehl verwenden, um den Pfad zur Schlüsseldatei anzugeben.
ssh-copy-id -i ~/.ssh/id_rsa remote_user@remote_IPWenn Sie sich zum ersten Mal auf die Remote-Maschine anmelden, müssen Sie den Fingerabdruck akzeptieren.
Geben Sie als Nächstes das SSH-Passwort für den Remote-Benutzer ein.
Sobald Sie authentifiziert sind, wird der Befehl ssh-copy-id den Inhalt Ihres „id_rsa.pub“-Schlüssels in die Datei „~/.ssh/authorized_keys“ auf der Remote-Maschine anhängen und die Verbindung schließen.

Anmeldung bei der Remote-Maschine
Sobald Sie alle oben genannten Schritte erfolgreich abgeschlossen haben, können Sie sich nun ohne Passwort bei dem Remote-Server anmelden.
Sie können dies testen, indem Sie den Befehl verwenden:
ssh remote_user@remote_ipEs sei denn, Sie haben eine Passphrase für Ihren Schlüssel aktiviert, werden Sie automatisch angemeldet.
Häufig gestellte Fragen
1. Ist SSH sicher?
SSH ist ein mächtiges Sicherheitswerkzeug, das authentifizierten Benutzern das Einloggen in ein entferntes System ermöglicht. Es ist jedoch nur so sicher, wie es die Konfigurationsdatei zulässt. Ein nicht konfigurierter / falsch konfigurierter SSH-Server kann für Hacker und unbefugte Dritte anfällig sein. Stellen Sie sicher, dass Sie die SSH-Konfiguration sofort nach der Installation sichern.
2. Wo befinden sich die autorisierten SSH-Schlüssel?
Die Datei authorized_keys für SSH enthält die öffentliche Schlüsseldatei jedes Benutzers und gibt an, welcher Benutzer sich bei einem Server anmelden kann. Unter Linux befindet sich die Datei authorized_keys normalerweise im „.ssh“-Ordner im Home-Verzeichnis des Benutzers.
3. Wie kann ich das Berechtigungsverweigerungsproblem von ssh-copy-id beheben?
Dies geschieht nur, wenn Sie bereits einen öffentlichen Schlüssel auf Ihrem Remote-Server eingerichtet haben und die Passwortauthentifizierung deaktiviert haben. Um dieses Problem zu beheben, melden Sie sich zunächst bei Ihrem Server an, aktivieren Sie die Passwortauthentifizierung in der Datei „/etc/ssh/sshd_config“ und führen Sie dann erneut den Befehl ssh-copy-id aus.
Sobald Sie die neue Schlüsseldatei kopiert haben, denken Sie daran, die Passwortauthentifizierung wieder zu deaktivieren.