SSH Login ohne Passwort (Key-Based)

Posted by on 03 Nov 2008 | Tagged as: Allgemeines, Benutzer, CLI, hyper_ch

Die Verbindungsaufnahme mit SSH ohne Passwortabfrage ist denkbar einfach. Diese Methode kann dazu benutzt werden um unbedarfte Benutzer kein Passwort mitteilen zu müssen, dass die sich eh nicht merken können oder um sich selber das Leben einfacher zu machen oder um Services zu automatisieren, wie z.B. rsync über SSH.

In vier einfach Schritten kann dies erreicht werden!

1. Schritt – Einführung

Nachfolgend wird als “Client” der Computer bezeichnet, an dem ein Benutzer sitzt. “Server” ist der Computer, in den eingeloggt werden soll ohne Passwort über SSH und “User” ist der Benutzer mit dem man sich am Server anmeldet. Ohne key-based SSH würde das folgendermassen aussehen:

ssh user@server

Dann kommt die Passwort Aufforderung.

2. Kreieren des Public Key

Auf dem Client muss folgender Befehl ausgeführt werden:

cd ~/.ssh
ssh-keygen -t dsa

Es kommt dann die Aufforderung, wo die Datei gespeichert werden soll und wie die Datei benannt werden soll. Es schlägt vor, die Datei als ~/.ssh/id_dsa zu speichern. Sollte man das ändern, muss das natürlich in den nachfolgenden Schritten auch bedacht werden – insbesondere wird beim Aufbau der Verbindung standardmässig nur nach der id_dsa gesucht.

3. Den Public Key auf dem Server hinzufügen

Mit folgendem Befehl wird dann der Public Key auf den Server geladen. Dabei muss das Passwort des Users auf dem Server angegeben werden.

ssh-copy-id -i .ssh/id_dsa.pub user@server

4. Zugriff auf den Server nehmen

Nun kann ausprobiert werden, ob es geklappt hat:

ssh user@server

Hier dürfte jetzt keine Passwortabfrage mehr erscheinen. Falls dem so ist und sonst keine Fehlermeldung kommt, dann hat es geklappt.

Comments are closed.