Acabo de actualizar a OSX 10.9, y cuando intento establecer una conexión SSH con autenticación de clave pública, aparece un mensaje que me solicita la contraseña de mi clave SSH.
Inicialmente pensé que la actualización hizo que el llavero olvidara algunas contraseñas, así que volví a ingresar la mía. Aparentemente, esa no fue la causa, porque el aviso seguía reapareciendo.
Primero pensé que podría estar usando la contraseña incorrecta, pero mientras el siguiente comando:
$ ssh-keygen -vvv -y -f id_rsa >| id_rsa.pub
debug3: Incorrect RSA1 identifier
debug1: key_parse_private_pem: PEM_read_PrivateKey failed
debug1: read PEM private key done: type <unknown>
Enter passphrase:
debug3: Incorrect RSA1 identifier
debug1: key_parse_private_pem: PEM_read_PrivateKey failed
debug1: read PEM private key done: type <unknown>
load failed
...¡No funciona! Si intento usar openssl:
$ openssl rsa -in id_rsa -text
Enter pass phrase for id_rsa:
Private-Key: (2048 bit)
modulus:
00:...
mi clave privada está descifrada correctamente y se imprime toda la información.
¿Qué pasó con la actualización a Mavericks? ¿Cómo puedo recuperar mi clave privada en un estado utilizable?
El mismo problema aquí, mis teclas muestran el mismo comportamiento.
Seguí el problema hasta esta publicación de blog. Modifiqué mis teclas ssh de la forma en que se describió en este artículo para aumentar la seguridad y funcionó en Mountain Lion. http://martin.kleppmann.com/2013/05/24/improving-security-of-ssh-private-keys.html
Supongo que Apple cambió algo con openssh y la "nueva" versión no es capaz de leer el nuevo formato PKCS # 8.
Mi versión Mavericks OpenSSH:
OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
No tengo otra Mac, así que no puedo compararla con la versión Mountain Lion.
fuente
/usr/bin/ssh -V
imprimeOpenSSH_5.9p1, OpenSSL 0.9.8r 8 Feb 2011
en mi VM 10.8.0.El uso de brew openssl y openssh corrige el problema PCKS # 8 en Mavericks.
No estoy seguro si forzar el enlace openssl rompe algo en Mavricks. Hasta ahora, no he notado ningún problema.
fuente
Pude solucionar este problema simplemente haciendo lo siguiente:
Ahora ve y conéctate. Cuando hace la pregunta estándar para agregar el tipo de huella digital, sí.
fuente
Pasó a tener este problema. Al tratar de especificar el cifrado, pude hacer que funcionara bien.
En Linux, cuando intentas generar pares de claves, usa esto:
La clave pública ahora con el cifrado aes256 puede ser reconocida correctamente por ssh en OSX (aquí, la mía es 10.12.1).
fuente
Puede convertir una clave PuTTY en una clave OpenSSL OS X:
Escriba la frase de contraseña y ya está.
fuente