En OSX, el ssh-addcliente nativo tiene un argumento especial para guardar la frase de contraseña de la clave privada en el llavero OSX, lo que significa que su inicio de sesión normal lo desbloqueará para usarlo con ssh. En OSX Sierra y versiones posteriores, también debe configurar SSH para usar siempre el llavero (consulte el Paso 2 a continuación).
Alternativamente, puede usar una clave sin una frase de contraseña, pero si prefiere la seguridad, eso es ciertamente aceptable con este flujo de trabajo.
Paso 1 - Guarda la llave en el llavero
Solo haz esto una vez:
ssh-add -K ~/.ssh/[your-private-key]
Ingrese su frase clave y no se le volverá a pedir.
(Si está en una versión anterior de Sierra de OSX, ya ha terminado, no se requiere el Paso 2).
Paso 2: configura SSH para usar siempre el llavero
Parece que OSX Sierra eliminó el comportamiento conveniente de persistir sus claves entre inicios de sesión, y la actualización a ssh ya no usa el llavero por defecto. Debido a esto, se le pedirá que ingrese la frase de contraseña para una clave después de la actualización, y nuevamente después de cada reinicio.
La solución es bastante simple y se describe en este comentario de hilo de github . Así es como lo configuras:
Asegúrese de haber completado el Paso 1 anterior para almacenar la clave en el llavero.
Si aún no lo ha hecho, cree un ~/.ssh/configarchivo. En otras palabras, en el .sshdirectorio de su directorio de inicio, cree un archivo llamado config.
En ese .ssh/configarchivo, agregue las siguientes líneas:
Host *
UseKeychain yes
AddKeysToAgent yes
IdentityFile ~/.ssh/id_rsa
Cambie ~/.ssh/id_rsaal nombre de archivo real de su clave privada. Si tiene otras claves privadas en su ~.sshdirectorio, también agregue una IdentityFilelínea para cada una de ellas. Por ejemplo, tengo una línea adicional que se lee IdentityFile ~/.ssh/id_ed25519para una segunda clave privada.
Esta UseKeychain yeses la parte clave, que le dice a SSH que busque en su llavero OSX la frase clave.
¡Eso es! La próxima vez que cargue cualquier conexión ssh, probará las claves privadas que haya especificado y buscará su frase de contraseña en el llavero OSX. No se requiere escribir frase de contraseña.