Come rendere ssh ricordare le chiavi ssh sbloccate non nella directory predefinita


0

Ho strutturato le mie chiavi private / pubbliche in una sottocartella di ".ssh" chiamata "chiavi". La mappatura è fatta da un file .ssh / config. Ora devo ridigitare la passphrase per ogni chiave ogni volta che la uso.

Prima di questa modifica, la chiave sbloccata veniva automaticamente ricordata su richiesta come comportamento predefinito (OS: Ubuntu).

Risposte:


0

Uso keychain, un semplice ssh-agent wrapper, per gestire questo per voi.

Aggiungi al tuo ~/.bashrc:

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

In questo modo hai solo bisogno di digitare le tue passphrase una volta al login. Puoi comunque aggiungere e elencare manualmente le chiavi direttamente usando l'agente come al solito:

$ 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)

Il --eval argomento in keychain(1) accetta percorsi completi, così puoi avere le tue chiavi ovunque tu voglia.


Non è questa soluzione più o meno equivalente all'aggiunta manuale delle chiavi nel bashrc tramite ssh-add? Il comportamento desiderato è che la passphrase è richiesta quando è richiesta la chiave ( su richiesta ) e memorizzati per le seguenti attività.
JD3

keychain è un wrapper ssh-agent come notato sopra, quindi è un modo conveniente per non dover usare ssh-agent direttamente. I vantaggi stanno avendo un ssh-agent (e a gpg-agent se ce n'è bisogno) gestito per te. Puoi iniziare con alcune chiavi aggiunte automaticamente al login e aggiungere il resto su richiesta usando ssh-add. Questa soluzione, accoppiato con a ~/.ssh/config file che specifica quali chiavi utente per host / utente è ciò che ho trovato più comodo da usare.
dawud
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.