Received disconnect from 192.168.3.123 port 22:2: Too many authentication failures
Disconnected from 192.168.3.123 port 22
whilst trying to SSH into the box, using the new account: -
ssh testfest@192.168.3.123
even though I was able to SSH using my own account ....
On the target box, I was seeing: -
Sep 19 16:21:24 ubuntu sshd[192635]: error: maximum authentication attempts exceeded for testfest from 192.168.6.124 port 54324 ssh2 [preauth]
Sep 19 16:21:24 ubuntu sshd[192635]: Disconnecting: Too many authentication failures [preauth]
Sep 19 16:21:48 ubuntu su[192609]: pam_unix(su:session): session closed for user testfest
One key (!) difference ....
For my own user, I'm using my SSH private key ...
For this new user, I'm using a password ...
There was a correlation ...
In my Mac's local SSH directory ( ~/.ssh ) I had a file: -
~/.ssh/config
which was set to: -
Host *
AddKeysToAgent yes
UseKeychain yes
IdentityFile ~/.ssh/id_rsa
In broad terms, my Mac was trying to be helpful and send MY private key to assert the identity of this new user ... which wasn't ever going to work ...
I tried moving ~/.ssh/config to ~/.ssh/cheese but to no avail.
As ever, Google had the answer ( and, yes, Google is my friend ) : -
This is usually caused by inadvertently offering multiple ssh keys to the server. The server will reject any key after too many keys have been offered.
You can see this for yourself by adding the -v flag to your ssh command to get verbose output. You will see that a bunch of keys are offered, until the server rejects the connection saying: "Too many authentication failures for [user]". Without verbose mode, you will only see the ambiguous message "Connection reset by peer".
To prevent irrelevant keys from being offered, you have to explicitly specify this in every host entry in the ~/.ssh/config (on the client machine) file by adding IdentitiesOnly like so:
Host www.somehost.com
IdentityFile ~/.ssh/key_for_somehost_rsa
IdentitiesOnly yes
Port 22
If you use the ssh-agent, it helps to run ssh-add -D to clear the identities.
Of course, I didn't think to enable verbose mode on the SSH client via ssh -v but ...
I did try the tip of clearing the identities: -
ssh-add -D
and ... IT WORKED!!
Every day, it's a school day !
No comments:
Post a Comment