Wie kann man ssh daran erinnern, dass entsperrte ssh-Schlüssel nicht im Standardverzeichnis gespeichert sind?

643
JD3

Ich habe meine privaten / öffentlichen Schlüssel in einem Unterordner von ".ssh" strukturiert, der als "Schlüssel" bezeichnet wird. Die Zuordnung erfolgt über eine .ssh / config -Datei. Jetzt muss ich die Passphrase für jeden Schlüssel erneut eingeben, wenn ich ihn verwende.

Vor dieser Änderung wurde der nicht gesperrte Schlüssel bei Bedarf automatisch als Standardverhalten (Betriebssystem: Ubuntu) gespeichert.

0

1 Antwort auf die Frage

0
dawud

Verwenden Sie keychaineinen einfachen ssh-agentWrapper, um dies für Sie zu erledigen.

Zu Ihrem hinzufügen ~/.bashrc:

eval $(keychain --clear --eval id_rsa id_dsa id_ecdsa other.id_rsa ) 

Auf diese Weise müssen Sie Ihre Passphrasen nur einmal beim Login eingeben. Sie können Schlüssel weiterhin wie üblich direkt über den Agenten manuell hinzufügen und auflisten:

$ ssh-add -l 4096 10:93:fe:6c:2b:36:xx:be:78:xx:bd:xx:b7:f9:0f:46 /home/user/.ssh/id_rsa (RSA) 1024 86:dc:ed:e0:c8:f4:99:bc:99:ee:55:xx:ac:51:e6:cb /home/user/.ssh/id_dsa (DSA) 521 28:xx:f4:d6:10:xx:40:4b:cd:xx:ef:e2:fc:8f:0b:xx /home/user/.ssh/id_ecdsa (ECDSA) 4096 5d:5a:xx:41:xx:2e:ab:ae:xx:ff:5c:47:xx:3a:cf:xx /home/user/.ssh/other.id_rsa (RSA) 

Das --evalArgument in keychain(1)akzeptiert vollständige Pfade, sodass Sie Ihre Schlüssel haben können, wo immer Sie möchten.

Ist diese Lösung nicht mehr oder weniger gleichbedeutend mit dem manuellen Hinzufügen von Schlüsseln in der bashrc über `ssh-add`? Das gewünschte Verhalten ist, dass die Passphrase abgefragt wird, wenn der Schlüssel benötigt wird (** on demand **) und für die folgenden Aufgaben gespeichert wird. JD3 vor 10 Jahren 0
`keychain` ist wie oben erwähnt ein ** ssh-agent-Wrapper **, daher ist es eine bequeme Möglichkeit,` ssh-agent` nicht direkt verwenden zu müssen. Die Vorteile sind, dass ein "ssh-agent" (und ein "gpg-agent", falls es nötig ist) für Sie erledigt wird. Sie können mit einigen Schlüsseln beginnen, die beim Anmelden automatisch hinzugefügt werden, und den Rest bei Bedarf mit `ssh-add` hinzufügen. Diese Lösung, gekoppelt mit einer `~ / .ssh / config`-Datei, die angibt, welche Schlüssel zu Benutzer pro Host / Benutzer verwendet werden, ist für mich die bequemere Verwendung. dawud vor 10 Jahren 0