Wenn man sich häufig auf verschiedene Systeme einloggt und ohnehin ein keyfile
verwendet, spart man sich mit dem ssh-agent die Mühe, das Passwort immer neu
eingeben zu müssen.
Man startet den ssh-agent idealerweise beim Einloggen (bash_profile) oder zu
Beginn der X-Session (bevor xinit aufgerufen wird) etwa so:
und beendet den ssh-agent dann am Ende der Sitzung etwa so:
Moderne Distributionen haben das natürlich schon passend eingerichtet...
Hinweis: -t ist notwendig, um das Anfordern eines pseudo-tty zu erzwingen
Ist möglich, wenn man sich von host_c auf host_a per "ssh -A" einloggt
und der benutzte key sowohl auf host_a und host_b in authorized_keys
hinterlegt ist.
Aber Achtung! Angreifer auf host_a können diese Vermittlung des ssh-agent
auf host_c ausnutzen und sich Zugriff auf alle Systeme verschaffen, für
die der Key gilt!
Also nur benutzen, wenn host_a vertrauenswürdig ist!
Die Dateinamen werden zweimal ausgewertet, einmal lokal und einmal auf dem
entfernten Rechner. Dies ist erforderlich, damit Wildcards verwendet werden
können.
Wird die Wildcard auf dem entfernten Rechner verwendet, muss sie also vor
der lokalen Shell geschützt werden (drei mögliche Varianten):
Ebenso müssen Leerzeichen in Dateinamen des entfernten Rechners entweder doppelt escaped werden, oder das Leerzeichen vor der Auswertung durch die lokale Shell geschützt werden. Folgende drei Varianten sind gültig:
Verwende WinSCP und PUTTY, um einen Key zu generieren PuttyGen. Das kann man aufrufen im "Advanced Site Settings" Dialog, dann SSH - Authentication.
Load your private key Go to Conversions->Export OpenSSH and export your private key Copy your private key to ~/.ssh/id_dsa (or id_rsa). Create the RFC 4716 version of the public key using ssh-keygen ssh-keygen -e -f ~/.ssh/id_dsa > ~/.ssh/id_dsa_com.pub Convert the RFC 4716 version of the public key to the OpenSSH format: ssh-keygen -i -f ~/.ssh/id_dsa_com.pub > ~/.ssh/id_dsa.pub