¿Por qué SSH está pidiendo mi contraseña de clave privada cada vez?
9
Desde ayer, cada vez que intento conectarme a un servidor ssh, me piden mi contraseña. ¿Qué debo hacer para que SSH no solicite mi contraseña cada vez?
Adivina ciegamente por mí: comprueba que tu clave esté cargada ssh-add -l.
jw013
¿Supongo que estás usando claves ssh? Si no usa un administrador de claves y tiene una frase de contraseña no vacía, esto es normal. Utilice un administrador de claves o cree una frase de contraseña vacía para su clave. Supongo que lo primero es recomendable.
si es "desde ayer", tal vez es solo que ha actualizado su sistema y ahora ssh-agent ya no funciona.
Coren
Respuestas:
5
Ingrese su clave pública hostnachine:~/.ssh/authorized_keysy asegúrese de que tenga los permisos adecuados: chmod 600. Consulte la página del manual, sección AUTENTICACIÓN, para obtener más detalles. Tenga en cuenta que sshd puede estar configurado para no permitir este método de inicio de sesión, aunque no puedo entender por qué.
Gracias, eso funcionó. Sin embargo, ¿podría explicarme por qué tengo que ponerlo en claves_autorizadas y por qué funcionaba sin él antes?
Ben D
1
La página del manual tiene la información en la sección AUTENTICACIÓN. En cuanto a por qué funcionaba de antemano, no puedo estar seguro sin tener acceso a la raíz de sus máquinas y hacer un trabajo forense.
Sardathrion - contra el abuso SE
2
También puede usar ssh-copy-id para que su clave pública se copie automáticamente en el host de destino, si no desea / necesita copiarla manualmente.
Coren
2
Verifique los permisos de directorio y los permisos de archivo.
$HOME no se puede escribir por grupo u otro.
$HOME/.sshnecesita tener 700permisos, no legibles, grabables o ejecutables por grupo y otros.
$HOME/.ssh/authorized_keys no ser escribible o ejecutable por nadie.
Si encuentra que los permisos no son lo suficientemente estrictos, intente averiguar qué causó el problema. La última vez que me sucedió esto, había compilado PHP desde cero. Ejecutar make installcomo root (Slackware) cambió los permisos y la propiedad de /o, /homesegún recuerdo, y evitó que ssh trabajara con authorized_keysy los id_rsa.pubarchivos que habían estado en su lugar y funcionaban durante años. Desea determinar qué causó el problema, ya que puede cambiar la propiedad y / o el permiso del directorio debido a una instalación de rootkit o algo así.
Esto lo arregló para mí ... Después de arreglar mis permisos, lo agregué usando 'ssh-add' ... después de cerrar ese terminal y volver a abrirlo y hacer 'ssh-add -l' (L inferior) pude ver mi identidad , que funcionó ... ¡¡¡pude SSH a todos mis cuadros sin tener que escribir mi clave privada más de 300 veces al día !! ¡Gracias!
ssh-add -l
.Respuestas:
Ingrese su clave pública
hostnachine:~/.ssh/authorized_keys
y asegúrese de que tenga los permisos adecuados: chmod 600. Consulte la página del manual, sección AUTENTICACIÓN, para obtener más detalles. Tenga en cuenta que sshd puede estar configurado para no permitir este método de inicio de sesión, aunque no puedo entender por qué.fuente
Verifique los permisos de directorio y los permisos de archivo.
$HOME
no se puede escribir por grupo u otro.$HOME/.ssh
necesita tener700
permisos, no legibles, grabables o ejecutables por grupo y otros.$HOME/.ssh/authorized_keys
no ser escribible o ejecutable por nadie.Si encuentra que los permisos no son lo suficientemente estrictos, intente averiguar qué causó el problema. La última vez que me sucedió esto, había compilado PHP desde cero. Ejecutar
make install
como root (Slackware) cambió los permisos y la propiedad de/
o,/home
según recuerdo, y evitó que ssh trabajara conauthorized_keys
y losid_rsa.pub
archivos que habían estado en su lugar y funcionaban durante años. Desea determinar qué causó el problema, ya que puede cambiar la propiedad y / o el permiso del directorio debido a una instalación de rootkit o algo así.fuente