Automatisches Login via SSH
(Anmeldung via SSH ohne das Passwort einzugeben)
SSH verwendet eine Public-Key Verschlüsselung. Man kann sich mittels öffentlichem
Schlüssel einem Anderen gegenüber eindeutig identifizieren. Genauso wie dies
mittels Passwort ebenfalls geschehen kann.
Damit man dieses Feature verwenden kann (RSA- oder DSA-Authentifizierung) muss man zunächst
einmal sein eigenes Schlüsselpaar erzeugen:
equinox:~# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
91:95:c0:a0:24:02:16:e0:7d:d4:78:60:d4:d0:60:a8 root@equinox
equinox:~#
Um sich ohne Passwort anmelden zu können, sollte man auf die Frage nach einer
"Passphrase" einfach mittels "Eingabetaste" antworten. Genau das selbe gilt auch für alle
anderen Fragen. Die Voreinstellungen sind korrekt.
Als letzte Zeile bekommt man dann seinen persönlichen Fingerabdruck ausgegeben. Ausserdem
hat man in seinem Homeverzeichnis (in obigem Beispiel wurde ssh-keygen als root
ausgeführt - funktioniert aber als jeder beliebige Benutzer!) ein Verzeichnis .ssh
in dem sich neben known_hosts (die Datei in der alle SSH-Server Fingerabdrücke
gespeichert werden) auch noch folgende Dateien:
equinox:~# ls .ssh
id_rsa id_rsa.pub known_hosts
equinox:~#
id_rsa enthält den privaten Schlüssel, id_rsa.pub den öffentlichen.
Um nun ohne sein Passwort eingeben zu müssen an einen Server zu kommen, muss man lediglich
den öffentlichen Schlüssel auf den Server kopieren und dort im Homeverzeichnis im
Unterverzeichnis .ssh der Datei authorized_keys2 hinzufügen. Wenn diese Datei
nicht existiert, dann muss sie einfach neu erstellt werden! (Immer eine Zeile pro
Schlüssel!).
equinox:~# scp .ssh/id_rsa.pub server.mein.lan:~/
root@server.mein.lan's password:
id_rsa.pub 100% |**********************************************| 222 00:00
equinox:~# ssh server.mein.lan
root@server.mein.lan's password:
Last login: Fri Mar 28 15:54:24 2003 from equinox
Have a lot of fun...
server:~ # cat id_rsa.pub >> .ssh/authorized_keys2
server:~ # exit
logout
Connection to server.mein.lan closed.
equinox:~# ssh server.mein.lan
Last login: Fri Mar 28 18:20:44 2003 from equinox
Have a lot of fun...
server:~ #
Wie man an der letzten Zeile sehen kann, funktioniert das passwortlose Login bereits!
Diese Seite wird von Adi Kriegisch verwaltet.