Frase de contraseña SSH recordada en MacOSX Snow Leopard

8

Me enfrento a una situación muy extraña con Snow Leopard. Tengo un servidor Linux, configurado para aceptar una conexión ssh autenticada solo a través de la clave RSA. Sin contraseña. En mi computadora portátil, implementé correctamente la clave RSA con ssh-keygen, y mientras lo hacía, agregué una frase de contraseña. Luego moví id_rsa.pub en el servidor Linux .ssh / Authorized_keys.

Hasta aquí todo bien. Ahora intento desde mi laptop Snow Leopard iniciar sesión en la máquina Linux. Aparece una ventana emergente que me pide la frase de contraseña. Esto es lo primero que me sorprende, ya que hubiera esperado una solicitud de frase de contraseña de shell, no una ventana emergente. La aplicación que solicita la frase de contraseña es ssh, de acuerdo con los detalles en esta ventana emergente. Además, hay una opción "recordar frase en el llavero", que está deshabilitada.

Ingresé mi contraseña. La ventana emergente desaparece y el terminal inicia sesión correctamente en la máquina Linux. Ahora, si cierro la sesión e intento volver a ssh, el inicio de sesión se realiza sin ninguna solicitud de frase de contraseña, que no es lo que quiero.

Cosas que revisé:

  • nada se guarda en el llavero. Navegué y no encontré nada.
  • si cierro / salgo del terminal y abro uno nuevo, todavía no se me solicita la frase de contraseña, y el ssh inicia sesión sin ninguna consulta.
  • Si salgo de la sesión de MacOSX y vuelvo a iniciar sesión, la frase de contraseña se solicita en el siguiente intento, nuevamente con un cuadro de diálogo emergente. Entonces ya no se solicita.

¿Dónde se almacena la frase de contraseña? ¿Qué está sucediendo exactamente y cómo puedo forzar la solicitud de la frase de contraseña en cada intento de ssh?

Stefano Borini
fuente

Respuestas:

10

OS X iniciará automáticamente ssh-agent cuando necesite su clave privada. Su clave estará disponible a través de ssh-agent (sin ingresar su frase de contraseña nuevamente) hasta que cierre sesión en OS X o elimine la clave (a través de ssh-add -do ssh-add -Dpara eliminar todas las claves).

Esto es similar al comportamiento estándar del sistema * NIX con ssh-agent, y permite una funcionalidad útil como el reenvío de autenticación del agente ( ssh -A) para que no tenga que poner su clave privada en toda la red.


Si desea deshabilitar ssh-agent (para todos los usuarios de su Mac), puede eliminar el archivo /System/Library/LaunchAgents/org.openbsd.ssh-agent.plist


Otra forma es descargar y deshabilitar LaunchAgent:

sudo launchctl -w /System/Library/LaunchAgents/org.openbsd.ssh-agent.plist

Esto -whace que no solo se descargue sino que se marque y recuerde como deshabilitado.

voretaq7
fuente