132 votos

La adición de Claves SSH para authorized_keys

Tengo un Ubuntu server en Amazon EC2, que yo uso para el desarrollo, y hoy yo estúpidamente borra todo lo que fuera de mi ~/.ssh/authorized_keys archivo. Por suerte tengo un SSH abierto, por lo que todavía estoy conectado, y puede arreglar el archivo, pero cuando trato de poner mi archivo de clave de nuevo, no funciona. Todavía se me pone permiso denegado desde el servidor en mi máquina local.

authorized_keys tiene los permisos 600. He probado añadiendo mi clave SSH con ssh-rsa y dejando el ssh-rsa-off. Yo también intenté hacer el SSH clave de todo en la misma línea, pero que no funciona tampoco.

¿Hay algo más que tengo que hacer como volver a cargar el archivo de alguna forma?

153voto

tidbeck Puntos281

Usted debe nunca guarde el archivo con su contenido a partir de -----BEGIN RSA PRIVATE KEY----- en el servidor, que es su privado clave. En su lugar, usted debe poner el público clave en la ~/.ssh/authorized_keys archivo.

Este público clave de la .pub de extensión cuando se genera usando ssh-keygen y su contenido de comenzar con ssh-rsa AAAAB3. (El formato binario es descrito en las respuestas a esta pregunta).

Los permisos de ~/.ssh sobre el servidor debe ser de 700. El archivo ~/.ssh/authorized_keys (en el servidor) se supone que tienen un modo de 600. Los permisos de la (privado) en el lado del cliente deben ser de 600.

Si la clave privada no estaba protegido con una contraseña, y se coloca en el servidor, te recomiendo que para generar una nueva:

ssh-keygen -t rsa

Puede omitir este si estás completamente seguro de que nadie puede recuperar eliminados de la clave privada del servidor.

Si esto no ayuda, ejecute ssh con opciones para más de verbosidad:

ssh -vvv user@example.com

En el lado del servidor, puede revisar /var/log/auth.log para más detalles.

130voto

Chris Puntos768

Una forma alternativa de instalar su clave pública en la máquina remota authorized_keys:

cat ~/.ssh/id_rsa.pub | ssh USER@HOST "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

Esto no requiere ssh-copy-id a ser instalado.

Esto también garantiza que mkdir obras antes de intentar anexar id_rsa.pub a authorized_keys.

2voto

georg Puntos1742

Si tienes de inicio de sesión de autenticación basada en, a continuación, utilizar ssh-copy-id a anexar a su público las claves en el servidor remoto.

ssh-copy-id user@host

2voto

BaronGrivet Puntos61
local> scp .ssh/id_dsa.pub remote.com:
local> ssh remote.com
remote> cat id_dsa.pub >> .ssh/authorized_keys
remote> rm id_dsa.pub
remote> exit

2voto

user273266 Puntos11

Después de guardar la clave pública debe guardar la clave privada en un directorio y archivo en su pc. Y en el auth sección de ssh sobre la masilla se debe señalar el archivo de clave privada, que guardó en su escritorio. Va a trabajar. A mí me funciona.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: