135 votes

Comment récupérer le message "Too many Authentication Failures for user root" (trop d'échecs d'authentification pour l'utilisateur root) ?

J'ai fait plusieurs tentatives pour établir une connexion SSH pour l'utilisateur root@host en utilisant le terminal Putty. Au cours de cette opération, j'ai spécifié plusieurs fois des informations d'identification erronées, puis je les ai spécifiées correctement. Une fois les informations d'identification acceptées, la session ssh s'interrompt avec le message suivant

"Le serveur a fermé de manière inattendue la connexion".

Cette erreur est signalée par le terminal Putty. Lorsque vous essayez d'envoyer un ssh à root@localhost à partir de la console locale, cela fonctionne bien. Cela fonctionne également lorsque j'essaie d'accéder à otheruser@host depuis un autre hôte. Les problèmes de connectivité réseau ne sont donc pas coupables. La seule erreur à laquelle je pense est : "Trop d'échecs d'authentification pour l'utilisateur root" bien que Putty ait signalé une erreur différente.

La question est la suivante : comment récupérer de cette condition d'erreur et permettre à Putty de se connecter à nouveau ? Le redémarrage de sshd ne semble pas aider

198voto

Will Verna Points 1391

Si vous obtenez l'erreur SSH suivante :

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

Cela peut se produire si vous avez (par défaut sur mon système) cinq fichiers d'identité DSA/RSA ou plus stockés dans votre système d'information. .ssh répertoire. Dans ce cas, si le -i n'est pas spécifiée sur la ligne de commande, le client ssh tentera d'abord de se connecter en utilisant chaque identité (clé privée) et demandera ensuite une authentification par mot de passe. Cependant, sshd interrompt la connexion après cinq tentatives de connexion infructueuses (là encore, la valeur par défaut peut varier).

Ainsi, si vous avez un certain nombre de clés privées dans votre répertoire .ssh, vous pouvez désactiver l'option Public Key Authentication à la ligne de commande en utilisant l'option -o argument facultatif.

Par exemple :

$ ssh -o PubkeyAuthentication=no root@host

180voto

Peta Sittek Points 1652

"Too many Authentication Failures for user root" signifie que le système d'authentification de votre serveur SSH La limite MaxAuthTries a été dépassée . Il se passe que votre client essaie de s'authentifier avec toutes les clés possibles stockées dans /home/USER/.ssh/ .

Cette situation peut être résolue de la manière suivante :

  1. ssh -i /chemin/to/id_rsa root@host
  2. Précisez Fichier d'hôte/d'identité paire dans /home/USER/.ssh/config

Un seul hôte dans le config devrait ressembler à quelque chose comme ceci :

Host example.com
  IdentityFile /home/USER/.ssh/id_rsa

Vous pouvez également définir l'utilisateur afin de ne pas avoir à le saisir sur la ligne de commande et raccourcir les longs FQDN, voir cet exemple :

host short
  IdentityFile /home/USER/.ssh/id_rsa
  User someuser
  HostName really-long-domain.example.com

Vous vous connectez ensuite au serveur really-long-domain.example.com avec :

ssh short

Remarque : si vous choisissez d'utiliser uniquement la deuxième option, et que vous essayez d'utiliser ssh example.com, vous obtiendrez toujours des erreurs (si c'est ce qui vous a amené ici), la version courte ne donnera pas les erreurs, vous pouvez également utiliser les deux options afin de pouvoir ssh anyuser@example.com sans les erreurs.

  1. Augmenter MaxAuthTries sur le serveur SSH dans /etc/ssh/sshd_config (non recommandé).

31voto

Ninjaxor Points 399

Pour moi, ce problème a été résolu en créant le ssh_config ci-dessous pour l'hôte auquel je me connectais.

(~/.ssh/config)

Host example
HostName example.com
User admin
IdentityFile ~/path/to/ssh_key_rsa
IdentitiesOnly=yes

Le problème est survenu parce que j'ai beaucoup trop de clés ssh dans mon ~/.ssh dossier, environ 16. Et sans ces deux IdentityFile UND IdentitiesOnly dans la configuration, ma machine essayait apparemment toutes les clés dans le fichier ~/.ssh et atteindre le nombre maximal d'essais avant de tenter le bon fichier d'identité.

25voto

Sur la machine distante, ouvrez /etc/sshd_config et changez la valeur

MaxAuthTries 30

C'est un problème typique lorsque vous avez installé plusieurs clés ou ouvert plusieurs connexions. Le serveur vérifie étape par étape chaque clé et si MaxAuthTries est réglé sur 3, il vous déconnectera après les 3 premières tentatives. Sécurité typique de ssh.

Je vous suggère d'utiliser le mode verbeux pendant la connexion à la machine distante pour analyser le problème.

ssh -v -p port_number utilisateur@servername

Faire des suppositions comme le font la plupart des gens sur ce forum est une erreur et une perte de temps. Essayez d'abord d'analyser le problème, de collecter des informations et ensuite de demander.

Amusez-vous bien.

18voto

damorg Points 1188

Etes-vous sûr que la connexion root à ssh est autorisée ?

Vérifiez sshd_config et assurez-vous que la connexion root est autorisée. sshd devra être redémarré si le paramètre est modifié.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X