(He leído muchas de las preguntas en este sitio que parecen relacionadas y creo que esta es una pregunta realmente nueva).
Tengo muchas claves en muchos servidores y todas están protegidas con frases de contraseña.
Me gusta ingresar frases de contraseña tanto como me gusta ingresar contraseñas: es una verdadera pérdida de productividad.
Los comandos ssh-agent + ssh-add se pueden usar en un shell de inicio de sesión para significar que solo tiene que ingresar su frase de contraseña una vez al iniciar sesión
El llavero se puede usar para mantener vivo un agente ssh más allá del cierre de sesión, por ejemplo, puede tenerlo para que solo tenga que ingresar la frase de contraseña una vez en el arranque, o puede hacer que lo mantenga vivo durante una hora más o menos.
El problema que tengo es que estas dos soluciones generalmente se inician en un inicio de sesión de shell (por ejemplo .zshrc
), confían en que ingrese mi frase de contraseña cuando inicie sesión, incluso si no voy a necesitar que se desbloquee. (No estoy contento con el llavero que mantiene vivo a un agente indefinidamente).
Lo que me gustaría es que se me solicite una frase de contraseña (para un agente) solo cuando sea necesario .
Entonces puedo iniciar sesión en el servidor A, hacer algunas cosas, luego enviar ssh al servidor B y en ese momento se me pedirá la frase de contraseña. Haga algunas cosas en el servidor B, cierre la sesión. De vuelta en A, haga algunas cosas más, vuelva a enviar ssh a B y no necesite mi frase de contraseña (está en manos de un agente).
Observo que esto es posible en escritorios gráficos como Gnome: aparece una ventana emergente que solicita la frase de contraseña para desbloquear su clave privada tan pronto como intenta ssh. Entonces esto es lo que busco, pero desde una consola.