Haga que SSH_AUTH_SOCK sea el mismo archivo cada vez

1

Necesito poder hacer que ssh-agent use el mismo archivo para su socket cada vez que inicio sesión. Actualmente usa un archivo aleatorio en una carpeta temporal, y esto está causando problemas para un servicio systemd en vagabundo.

Ejecutamos un comando para crear un archivo env que define la ubicación del archivo de socket para que systemd lo use, sin embargo, sigue cambiando de ubicación en cada inicio de sesión y, por lo tanto, después de provisiones vagabundas, la ubicación escrita en el archivo env ha cambiado y ya no es válido.

¿Hay alguna forma en que pueda obligarlo a ser siempre, /etc/ssh/ssh_auth_socketpor ejemplo?

diseñadormonkey
fuente

Respuestas:

0

No. No es posible con el valor predeterminado ssh-agent. También crea el archivo $TMPDIR/ssh-XXXXXXXXXX/agent.<ppid>como se indica en la página del manual. Es para asegurarse de que el zócalo sea seguro (no solo accesible por su usuario).

Pero puedes usar gnome-keyring. Crean socket /run/user/1000/keyring/ssh, por lo que está en un lugar seguro y utiliza el mismo protocolo (común en los escritorios Gnome).

¿Para qué lo necesitas? Si tiene la ruta en variable, simplemente puede crear .bashrcpara crear un enlace simbólico desde su ubicación "conocida" hasta el lugar real.

Jakuje
fuente
Es un poco doloroso. Necesitamos un túnel autossh que se cree en otro servidor para imitar una máquina en red para un cuadro de prueba vagabundo. El problema es que somos un equipo con diferentes claves rsa y, por lo tanto, utilizamos el reenvío de agente ssh para que funcione, pero systemd no tiene acceso al agente. Creo que necesito volver a imaginar este escenario de otra manera :(
designermonkey