SSH Agent privaten Schlüssel hinzufügen

mathilda

Leipziger Reinette
Registriert
17.02.05
Beiträge
1.787
Gemeinde,

ich logge mich des öfteren mittels meines privaten Schlüssels auf verschiedenen Servern ein. Da ich nicht den nötigen Bock habe, jedesmal meine Passphrase des privaten Schlüssel einzutippen, hab ich mir den SSH Agent geladen.

Doch wenn ich jetzt einen Schlüssel öffnen will, so ist mein DSA-Schlüssel ausgegraut.
Ich kann zwar neue Identitäten erstellen, aber das will ich ja gar nicht.

Kann mir jmd sagen, wie ich den SSH Agent verwende? Oder kennt jmd ein anderes kleines Tool, welches meinen privaten Schlüssel vorhält?

Vielen Dank!
 

KayHH

Gast
Moin mathilda,

ich bin mir nicht sicher ob ich helfen kann. Ich tummle mich auf einigen Entwicklungsservern rum. Dafür habe ich mir im Terminal ein Schlüsselpaar generiert. Dieses befindet sich im Verzeichnis /Users/MEIN_NAME/.ssh/ Die Schlüssel heißen „id_dsa“ und „id_dsa.pub“. Eine Passphrase oder ein Passwort gibt es nicht, allein der Schlüssel reicht aus um meine Entwicklungen mit den Servern zu syncen. Der öffentliche Schlüssel ist natürlich beim jeweiligen Server hinterlegt. Evtl. ist das ja auch für Dich eine Lösung. Erzeugt habe ich die Schlüssel mit IMHO mit „ssh-keygen“, ist aber schon länger her.


Gruss KayHH
 

quarx

Brauner Matapfel
Registriert
17.04.05
Beiträge
8.444
Meinst Du so etwas wie SSHKeychain? Ich benutz das u.a. auch zum Verwalten diverser SSH-Tunnel. Liegt dann rechts oben in der Menüleiste und ist immer griffbereit (s. Bildchen, der Schlüsselbund).

Zum Erzeugen und Verteilen von ssh-Schlüsselpaaren gibt's was im Hause: http://www.apfeltalk.de/forum/os-x-ssh-t35714.html
 

Anhänge

  • sshkeychain.png
    sshkeychain.png
    58,1 KB · Aufrufe: 83

Hilarious

Gelbe Schleswiger Reinette
Registriert
10.08.05
Beiträge
1.759
Vermutlich hast Du, KayHH, den Schlüssel auch ohne Passphrase angelegt, was im »normalen Hausgebrauch« bestimmt auch kein großes Problem darstellt, für Sicherheitsfanatiker aber nicht ausreichen dürfte (aber was reicht denen schon?).

Ich habe SSH Agent auch noch nie genutzt, wenn ich ehrlich bin, denn eigentlich reichen die »Bordmittel« ja aus. Der private Schlüssel wird von Deinem systemeigenen SSH-Client vorgehalten, sofern dieser in einem für diesen erreichbaren Verzeichnis liegt. Im Normalfall ist dies ein (für den Finder unsichtbares, da mit einem Punkt beginnendes) Verzeichnis direkt unterhalb Deines persönlichen Bereiches. Also in Unix-Notation ausgedrückt: ~/.ssh.

Da Du ja beim Anlegen des privaten Schlüssels (per »ssh-keygen -t dsa«) eine »Passphrase« eingegeben hast, wirst Du nun bei der Verbindungsaufnahme natürlich nach diesem »Schlüsselsatz« gefragt, denn das ist ja die Idee.

Wenn Dir das zu nervig ist (, was ich gut verstehen kann), kannst Du stattdessen einen SSH-Schlüssel anlegen, der keine Passphrase verwendet (wie gesagt, für die ganz dolle Absicherung ist das verständlicherweise nicht der Knüller, aber wenn Du davon ausgehst, dass Dir den privaten Schlüssel keiner klaut, geht's bestimmt auch so). In diesem Falle wirst Du bei der Verbindungsaufnahme auch nicht nach deinem Schlüsselsatz gefragt.

Andere Lösung: Du statest beim Shell-Login, also in der Regel der Moment, in dem Du eine Terminal-Anwendung startest (wie zum Beispiel ssh), automatisch das kleine Hilfsprogramm »ssh-agent« (Nicht zu verwechseln mit der ähnlich klingenden Desktop-Applikation). Dieser Agent sorgt dann automatisch für die Übermittlung der »Passphrase«, ein wenig wie ein etwas einsilbiger Anrufbeantworter (ohne Aufnahme option). Dazu legst Du die folgende Zeile in Deine »~/.profile« (für bash-Benutzer, eine Datei die beim Öffnen des Terminals sofort ausgeführt wird).
Code:
test "$SSH_AUTH_SOCK" ||*exec ssh-agent $SHELL -c "ssh-add; exec $SHELL -login"
Diese Option macht natürlich nur dann Sinn, wenn Du ssh komplett via Terminal benutzt und weniger mit Programmen wie Fugu, Transmit und dergleichen.

Ich hoffe, es hilft ;)
 

mathilda

Leipziger Reinette
Registriert
17.02.05
Beiträge
1.787
Hm, erstmal Danke Euch allen.

Also, den Schlüssel habe ich schon erzeugt und den öffentlichen auf entsprechenden Servern hinterlegt. Das funzt auch alles. Mein privater Schlüssel hat eine Passphrase, Sicherheit hin oder her. Das bleibt auch so.

Ich werde mal SSH Keychain probieren. Schade, dass SSH Agent nicht klappt. Unter Panther lief das einwandfrei. Ich vermute einfach, es erkennt meinen privaten Schlüssel nicht als solchen. Und in dem Moment wo ich diese Zeilen schreibe, fällt mir was auf: Ich habe den Schlüssel mal auf einen USB-Stick kopiert und jetzt wieder auf den Mac geschoben. Evtl. sind die Zeilenumbrüche falsch. Gleich mal gucken.

Edit: Hm, scheinbar sind sie doch korrekt. Naja, mal weiter suchen...