Puede que se de el caso de que halles algún error en tu código o trabajo, recuerda probar siempre en un entorno de testing antes añadir el código al proyecto final.
Solución:
Debería nunca guardar el archivo con su contenido comenzando con -----BEGIN RSA PRIVATE KEY-----
en el servidor, ese es tu privado key. En su lugar, debe poner el público key en el ~/.ssh/authorized_keys
Archivo.
Esta público key tiene el .pub
extensión cuando se genera usando ssh-keygen
y su contenido comienza con ssh-rsa AAAAB3
. (El formato binario se describe en las respuestas a esta pregunta).
Los permisos de ~/.ssh
en el servidor debe ser 700. El archivo ~/.ssh/authorized_keys
(en el servidor) se supone que tiene un modo de 600. Los permisos del (privado) key en el lado del cliente debe ser 600.
Si el privado key no estaba protegido con contraseña, y la pusiste en el servidor, te recomiendo generar una nueva:
ssh-keygen -t rsa
Puede omitir esto si está completamente seguro de que nadie puede recuperar el privado eliminado. key desde el servidor.
Si esto no ayuda, ejecute ssh
con opciones para más verbosidad:
ssh -vvv [email protected]
En el lado del servidor, puede revisar /var/log/auth.log
para detalles.
Una forma alternativa de instalar su público key en la máquina remota authorized_keys
:
cat ~/.ssh/id_rsa.pub | ssh [email protected] "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
Algunas ventajas:
-
no requiere
ssh-copy-id
Para ser instalado. -
garantiza que
mkdir
funciona antes de intentar agregarid_rsa.pub
aauthorized_keys
.
Si tiene autenticación basada en inicio de sesión, utilice ssh-copy-id
para agregar tu público keys al servidor remoto.
ssh-copy-id [email protected]
Al final de todo puedes encontrar las referencias de otros sys admins, tú igualmente puedes dejar el tuyo si lo deseas.