SSH Key Management
Einleitung:
Hier wird kurz beschrieben, wie man ssh-Keys exportiert und importiert um nicht ständig das Passwort eingeben zu müssen. Sehr hilfreich auch bei Cronjobs!
Server Konfiguration:
ssh keying muss in der Serverconfig validiert werden.
Bei openssh in : /etc/ssh/sshd_config
PubkeyAuthentication yes
Erstellen eines Schlüsselpaares:
Funktionsweise:
Der Client erstellt ein Schlüsselpaar (pub + priv key). Den pub - key verteilt der Client an die entsprechenden Server. Passen beim login priv + pub key zusammen, kann sich der Client einloggen.
!Achtung!: Funktioniert nur, wenn als Passwort das "leere Passwort" gewählt wird.
Bemerkung: Bei allen folgenden Beispielen werden dsa keys verwendet.
Es gibt auch rsa und rsa2 keys.
OpenSSH Client:
ssh-keygen -t dsa
Alles mit
Folgende Dateien wurden erstellt:
- ~/.ssh/id_dsa
privater Schlüssel
- ~/.ssh/id_dsa.pub
öffentlicher Schlüssel
Einbringen des Schlüssels am Server
pub key beim jeweiligen Server importieren.
pub key (~/.ssh/id_dsa.pub) beim Server in folgende Datei schreiben: ~/.ssh/authorized_keys
Beispiel (im folgenden werden die Beispiele aus Sicht des Client angegeben. Ein login ist natürlich am entfernten Rechner das Übersichtlichste):
scp ~/.ssh/id_dsa.pub [server]:new_key.pub
ssh [server] "test -d .ssh || mkdir .ssh && chmod 700 .ssh"
ssh [server] cat new_key.pub >> .ssh/authorized_keys
ssh [server] rm -f new_key.pub