Zielsetzung:
Eine Authentifizierung mittels eines öffentlichen und eines privaten Schlüssels. Auf dem Hauptrechner erzeugt man die Schlüssel mit:
ssh-keygen -t rsa
Die liegen dann in
/home/username/.ssh
Der öffentliche Schlüssel wird nun auf das Zielsystem kopiert:
ssh-copy-id -i id_rsa.pubDiese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein! -p 444
Ausgabe:
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed /usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keysDiese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein! 's password:
Passwort eingeben. Dann kommt:
Number of key(s) added: 1
Nun kann man sich mit
ssh -p '444'Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein!
am Server anmelden. Danach kommt die Abfrage des privaten Schlüssels. Bei richtiger Eingabe ist man danach am Server angemeldet.
Achtung! Die folgenden Zeilen bitte mit Vorsicht nachmachen, damit kann man sich auch mal schnell aussperren. Nur nachmachen, wenn der o.g. SSH Login einwndfrei funktioniert!
Nun, man kann sich aber immer noch am Server mit dem Passwort anmelden. Um die Sicherheit zu erhöhen, muss das nun unterbunden werden. In der Datei /etc/ssh/sshd_config muss man die folgenden Optionen einstellen.
PasswordAuthentication no UsePAM no
Danach den SSH-Server einmal neustarten.
/etc/init.d/ssh reload
Nun ist ein Anmelden am Server nur noch mit dem privaten Schlüssel möglich, ein Anmelden nur mit dem Passwort ist nicht mehr möglich. Das sollte die Sicherheit des Servers erheblich verbessern.