SSH-Authentifizierung mit Schlüsseln
Vorsicht
Dieser Artikel wurde mehr als vor einem Jahr veröffentlicht, Es gab Entwicklungen können.
Bitte berücksichtigen Sie dies.
Das SSH-Protokoll (Sichere Shell) ist ein verschlüsseltes Protokoll, das verwendet wird, um sichere Verbindungen zwischen zwei Computern herzustellen: Kunden-E-Server. An sich ist es bereits ein ziemlich sicheres Protokoll, aber mit SSH-Schlüsseln können Sie den SSH-Zugriff nur auf bestimmte Maschinen schließen. Hier ist, wie.
In dieser Mini-Anleitung erfahren Sie, wie Sie den SSH-Zugriff auf eine Maschine einrichten “Server” indem wir uns ohne Passwort authentifizieren. Mit dieser Konfiguration können nur diejenigen mit den richtigen SSH-Schlüsseln auf den Server zugreifen. In diesem Beispiel verwenden wir die folgenden IP-Adressen:
- Klient: 192.168.5.114
- Server: 192.168.5.10
Eine der Grundvoraussetzungen besteht darin, dass der Benutzer, der den SSH-Schlüssel generiert, über ein aktiviertes Konto verfügt und zur Gruppe gehört sudoers
auf beiden Maschinen.
Generieren Sie den Schlüssel auf dem Server
Zuerst generieren wir den SSH-Schlüssel auf dem Server. Melden wir uns beim Server an (direkt oder über herkömmliches SSH) und wir führen diesen Befehl aus.
~$ ssh-keygen -t rsa
Während der Schlüssel erstellt wird, haben wir die Möglichkeit, ein Passwort zuzuordnen oder nicht. Ich empfehle, das Passwort zuzuordnen, es sei denn, es gibt besondere Hindernisse, die eine Deaktivierung des Passworts beim Anmelden erfordern. Auf jeden Fall haben wir zwei Möglichkeiten, beide sicher.
Kopieren Sie den Schlüssel auf den Client
Sobald der Befehl abgeschlossen ist, müssen wir einen weiteren Befehl starten, um den generierten Schlüssel auf den Client zu kopieren.
~$ ssh-copy-id -i $HOME/.ssh/id_rsa.pub USER@192.168.5.114
USER
ist der auf dem Client registrierte Benutzer, mit dem wir uns beim Server anmelden.
Ich gehe davon aus, dass diese Vorgänge innerhalb eines LANs durchgeführt werden, Wenn dies jedoch nicht der Fall ist, müssen wir eine Möglichkeit finden, den generierten Schlüssel zu kopieren ~/.ssh/id_rsa.pub
im verwendeten Client, beispielsweise über eine FTP-Freigabe, eine E-Mail oder sogar ein Wurmloch.
Testen Sie die Verbindung
Am Ende wird es Zeit sein, die tatsächliche Funktionsweise zu testen. Kehren wir zum Client zurück und führen den Befehl aus:
~$ ssh -v USER@192.168.5.10
USER
ist der Benutzer, der den Server überwacht.
Wenn wir den SSH-Schlüssel ohne Passwort konfiguriert haben, werden wir sofort am Server angemeldet, im Gegenteil, wenn wir dem Schlüssel ein Passwort zugewiesen haben, dies wird nun abgefragt.
Deaktivieren Sie die Benutzerpasswortauthentifizierung
Wenn wir uns erfolgreich am Server angemeldet haben, möchten wir möglicherweise den Zugriff so konfigurieren, dass er keine Verbindungen über das Benutzerkennwort akzeptiert. Öffnen Sie die Datei /etc/ssh/sshd_config
mit einem Editor und fügen Sie am Ende der Datei wie folgt eine Zeile hinzu:
PasswordAuthentication no
Starten wir den SSH-Dienst neu:
~$ sudo service ssh restart
Wenn wir nun versuchen, uns erneut beim Server anzumelden, ist dies ohne den generierten SSH-Schlüssel nicht möglich. Sobald wir sicher sind, dass alles ordnungsgemäß funktioniert, können wir den Schlüssel weitergeben (mit dem Befehl ssh-copy-id
dal-Server) mit den Benutzern, denen wir Zugriff gewähren möchten.
Wenn der Zugriff auf den Server nur über SSH möglich ist, achten Sie darauf, die Schlüssel nicht zu verlieren, sonst schaffen wir es nicht, ins Auto zu steigen.
0 Kommentare