Demasiados fallos de autenticación para *nombre de usuario*

Demasiados fallos de autenticación para *nombre de usuario*

Tengo una cuenta de hostgator con acceso ssh habilitado. Al intentar cargar el archivo de clave .pub generado con este comando:

rsync -av -e "ssh -p2222" /home/user/.ssh/key.pub [email protected]:.ssh/authorized_keys

Sigo recibiendo:

Se recibió una desconexión de 111.222.33.44: 2: Demasiados errores de autenticación para el nombre de usuario
rsync: conexión cerrada inesperadamente (0 bytes recibidos hasta ahora) [remitente]
Error de rsync: error inexplicable (código 255) en io.c(601) [remitente=3.0.7]

He estado jugando anteriormente con ssh hasta que obtuve el error de autenticación. Pero ahora parece que el contador de fallas de autenticación no se reinicia (he estado esperando más de 12 horas, el soporte técnico "supone" que se reinicia después de 30 minutos a 1 hora, y otro tipo me dijo "se reinicia cada vez que intentas iniciar sesión con el nombre de usuario", jeesh).

Esto me está volviendo loco. Incluso configuré esto en un servidor personalizado de Slicehost y tuve menos problemas que con estos tipos.

¿Algun consejo? Quizás sea algo del lado del cliente y no del lado del servidor.

Respuesta1

Esto suele sercausado por ofrecer inadvertidamente múltiples claves sshal servidor. El servidor rechazará cualquier clave después de que se hayan ofrecido demasiadas claves.

Puede ver esto usted mismo agregando la -vbandera a su sshcomando para obtener una salida detallada. Verás que se ofrecen un montón de claves, hasta que el servidor rechaza la conexión diciendo:"Demasiados errores de autenticación para [usuario]". Sin el modo detallado, solo verás el mensaje ambiguo"Conexión restablecida por igual".

Para evitar que se ofrezcan claves irrelevantes, debe especificar esto explícitamente en cada entrada del host en el ~/.ssh/configarchivo (en la máquina cliente) agregando IdentitiesOnlylo siguiente:

Host www.somehost.com
  IdentityFile ~/.ssh/key_for_somehost_rsa
  IdentitiesOnly yes
  Port 22

Si utiliza el agente ssh, será útil ejecutarlo ssh-add -Dpara borrar las identidades.

Si no está utilizando ninguna configuración de hosts ssh, debe especificar explícitamente la clave correcta en el sshcomando de esta manera:

ssh -i some_id_rsa -o 'IdentitiesOnly yes' them@there:/path/

Nota: el parámetro 'IdentitiesOnly sí' debía estar entre comillas.

o

ssh -i some_id_rsa -o IdentitiesOnly=yes them@there:/path/

Respuesta2

Encontré una manera más fácil de hacer esto (si uso autenticación de contraseña):

ssh -o PubkeyAuthentication=no [email protected]

Esto fuerza la autenticación sin clave. Pude iniciar sesión inmediatamente.

Referencia

Respuesta3

También recibí este error y descubrí que sucedía porque el servidor estaba configurado para aceptar hasta 6 intentos:

/etc/ssh/sshd_config
...
...
#MaxAuthTries 6

Además de configurar IdentitiesOnly yesen su ~/.ssh/configarchivo, tiene un par de opciones más.

  1. Aumentar el MaxAuthTries(en el servidor ssh)
  2. elimine algunos de los pares de claves que tiene presentes en su ~/.ssh/directorio y ejecutessh-add -D
  3. vincular explícitamente una clave a un host determinado en su ~/.ssh/configarchivo

Al igual que:

host foo
hostname foo.example.com
IdentityFile /home/YOU/.ssh/foo
  1. Probablemente no sea una buena manera de hacerlo, dado que debilita un poco su servidor ssh ya que ahora aceptará más claves en un intento de conexión determinado. Piense aquí en vectores de ataque de fuerza bruta.

  2. Es una buena forma de hacerlo, suponiendo que tiene claves que no son necesarias y que pueden eliminarse permanentemente.

  3. ¡Y el enfoque de establecer Identities Only es probablemente la forma preferida de abordar este problema!

Respuesta4

Si recibe el siguiente error SSH:

$ Received disconnect from host: 2: Too many authentication failures for root

Esto puede suceder si tiene (predeterminado en mi sistema) cinco o más archivos de identidad DSA/RSA almacenados en su directorio .ssh y si la opción '-i' no está especificada en la línea de comando.

El cliente ssh primero intentará iniciar sesión utilizando cada identidad (clave privada) y luego solicitará la autenticación de contraseña. Sin embargo, sshd interrumpe la conexión después de cinco intentos fallidos de inicio de sesión (nuevamente, el valor predeterminado puede variar).

Si tiene varias claves privadas en su directorio .ssh, puede desactivar la "Autenticación de clave pública" en la línea de comando usando el argumento opcional '-o'.

Por ejemplo:

$ ssh -o PubkeyAuthentication=no root@host

información relacionada