1. Problema
Al configurar el inicio de sesión ssh sin contraseña, encontré que algunas máquinas iniciaban sesión normalmente y algunas máquinas mostraban un mensaje de error: falló la autenticación de clave pública con el servidor para el usuario gzsun. Verifique el nombre de usuario y el par de claves pública / privada.
2. Resuelve
2.1 Ver registro ssh, depurar
Localmente, use el cliente ssh para iniciar sesión.
# ssh root@xxxx -p 2222 -v
En el servidor ssh, verifique el registro.
# more /var/log/secure
Entre ellos, muestra que la carpeta .ssh del usuario y el directorio de inicio del usuario / home / jack no tienen permisos.
Authentication refused: bad ownership or modes for directory /home/jack/.ssh
Authentication refused: bad ownership or modes for directory /home/jack/.ssh
Authentication refused: bad ownership or modes for directory /home/jack/.ssh
error: Received disconnect from 36.111.140.26 port 59536:14: Unable to authenticate using any of the configured authentication methods. [preauth]
Authentication refused: bad ownership or modes for directory /home/jack
Authentication refused: bad ownership or modes for directory /home/jack
Authentication refused: bad ownership or modes for directory /home/jack
error: Received disconnect from 36.111.140.26 port 62668:14: Unable to authenticate using any of the configured authentication methods. [preauth]
Debido a que el directorio /home/jack/.ssh es solo para que el usuario propietario lo lea, escriba y ejecute, no se permiten otros usuarios, lo que conduce a la
falla de lectura de /home/jack/.ssh/authorized_keys, lo que conduce a la falla de la autenticación ssh .
2.2 Solución
La solución es muy simple, verifique los permisos de directorio relevantes y configure los permisos necesarios para aquellos que no cumplan con los requisitos.
# chmod 700 /home/jack/
# chmod 700 /home/jack/.ssh
# chmod 600 /home/jack/.ssh/authorized_keys
# chown -R jack:jack /home/jack
Nota: Independientemente de la herramienta, debug debe leer la documentación.
3. Artículos de referencia
https://wiki.centos.org/HowTos/Network/SecuringSSH