(Ho letto molte delle domande su questo sito che sembrano correlate e credo che questa sia una domanda veramente nuova.)
Ho molte chiavi su molti server e sono tutte protette da passphrase.
Mi piace inserire passphrase tanto quanto mi piace inserire le password: è una vera perdita di produttività.
I comandi ssh-agent + ssh-add possono essere utilizzati su una shell di login per indicare che è necessario inserire la passphrase solo una volta al login
il portachiavi può essere usato per mantenere in vita un agente ssh oltre il logout, quindi ad esempio puoi averlo così devi solo inserire la passphrase una volta all'avvio, oppure puoi tenerlo in vita per circa un'ora.
Il problema che ho è che entrambe queste soluzioni vengono in genere avviate in un login shell (ad esempio .zshrc
) basandosi sul fatto che inserisco la mia passphrase quando eseguo l'accesso, anche se non avrò bisogno di sbloccarlo. (Non sono contento che il portachiavi mantenga un agente in vita indefinitamente.)
Quello che mi piacerebbe ricevere una passphrase (per un agente) solo quando necessario .
Quindi posso accedere al server A, fare alcune cose, quindi ssh al server B e a quel punto chiedere la passphrase. Fare alcune cose sul server B, disconnettersi. Di nuovo su A, fai ancora un po 'di roba, di nuovo da ssh a B e non ho bisogno della mia passphrase (è trattenuta da un agente).
Noto che questo è possibile su desktop grafici come Gnome: si ottiene un pop-up che chiede la passphrase per sbloccare la chiave privata non appena si tenta di ssh. Quindi questo è quello che sto cercando, ma da una console.