web-dev-qa-db-fra.com

Erreur SSH: permission refusée, veuillez réessayer

J'ai une configuration de serveur Ubuntu utilisant une instance Amazon ec2. Je dois connecter mon bureau (qui est aussi une machine Ubuntu) au serveur Ubuntu à l'aide de SSH.

J'ai installé open-ssh sur le serveur Ubuntu. J'ai besoin de tous les systèmes de mon réseau pour connecter le serveur Ubuntu à l'aide de SSH (inutile de se connecter via des clés PEM ou pub).

Par conséquent ouvert le port SSH 22 pour mon IP statique dans les groupes de sécurité (AWS).

Mon fichier SSHD-CONFIG est:

# Package generated configuration file
# See the sshd_config(5) manpage for details

# What ports, IPs and protocols we listen for
Port 22
# Use these options to restrict which interfaces/protocols sshd will bind to
#ListenAddress ::
#ListenAddress 0.0.0.0
Protocol 2
# HostKeys for protocol version 2
HostKey /etc/ssh/ssh_Host_rsa_key
HostKey /etc/ssh/ssh_Host_dsa_key
HostKey /etc/ssh/ssh_Host_ecdsa_key
#Privilege Separation is turned on for security
UsePrivilegeSeparation yes

# Lifetime and size of ephemeral version 1 server key
KeyRegenerationInterval 3600
ServerKeyBits 768

# Logging
SyslogFacility AUTH
LogLevel INFO

# Authentication:
LoginGraceTime 120
PermitRootLogin yes
StrictModes yes

RSAAuthentication yes
PubkeyAuthentication yes
#AuthorizedKeysFile %h/.ssh/authorized_keys

# Don't read the user's ~/.rhosts and ~/.shosts files
IgnoreRhosts yes
# For this to work you will also need Host keys in /etc/ssh_known_hosts
RhostsRSAAuthentication no
# similar for protocol version 2
HostbasedAuthentication no
# Uncomment if you don't trust ~/.ssh/known_hosts for RhostsRSAAuthentication
#IgnoreUserKnownHosts yes

# To enable empty passwords, change to yes (NOT RECOMMENDED)
PermitEmptyPasswords no

# Change to yes to enable challenge-response passwords (beware issues with
# some PAM modules and threads)
ChallengeResponseAuthentication no

# Change to no to disable tunnelled clear text passwords
#PasswordAuthentication yes

# Kerberos options
#KerberosAuthentication no
#KerberosGetAFSToken no
#KerberosOrLocalPasswd yes
#KerberosTicketCleanup yes

# GSSAPI options
#GSSAPIAuthentication no
#GSSAPICleanupCredentials yes

X11Forwarding yes
X11DisplayOffset 10
PrintMotd no
PrintLastLog yes
TCPKeepAlive yes
#UseLogin no

#MaxStartups 10:30:60
#Banner /etc/issue.net

# Allow client to pass locale environment variables
AcceptEnv LANG LC_*

Subsystem sftp /usr/lib/openssh/sftp-server

# Set this to 'yes' to enable PAM authentication, account processing,
# and session processing. If this is enabled, PAM authentication will
# be allowed through the ChallengeResponseAuthentication and
# PasswordAuthentication.  Depending on your PAM configuration,
# PAM authentication via ChallengeResponseAuthentication may bypass
# the setting of "PermitRootLogin without-password".
# If you just want the PAM account and session checks to run without
# PAM authentication, then enable this but set PasswordAuthentication
# and ChallengeResponseAuthentication to 'no'.
UsePAM yes

Par l'intermédiaire de webmin (Command Shell), j'ai créé un nouvel utilisateur nommé 'senthil' et ajouté ce nouvel utilisateur au groupe 'Sudo'.

Sudo adduser -y senthil
Sudo adduser senthil Sudo

J'ai essayé de me connecter en utilisant ce nouvel utilisateur 'senthil' dans 'webmin'. J'ai pu me connecter avec succès.

Quand j'ai essayé de connecter le serveur Ubuntu à partir de mon terminal via SSH,

ssh senthil@SERVER_IP

Il m'a demandé d'entrer un mot de passe. Après la saisie du mot de passe, il affiche:

Permission denied, please try again.

Après quelques recherches, j'ai réalisé que je devais surveiller le journal d'authentification de mon serveur pour cela. J'ai eu l'erreur suivante dans mon journal d'authentification (/var/log/auth.log)

Jul  2 09:38:07 ip-192-xx-xx-xxx sshd[3037]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=MY_CLIENT_IP  user=senthil
Jul  2 09:38:09 ip-192-xx-xx-xxx sshd[3037]: Failed password for senthil from MY_CLIENT_IP port 39116 ssh2

Quand j'ai essayé de déboguer en utilisant:

ssh -v senthil@SERVER_IP


    OpenSSH_5.9p1 Debian-5ubuntu1, OpenSSL 1.0.1 14 Mar 2012
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: Connecting to SERVER_IP [SERVER_IP] port 22.
debug1: Connection established.
debug1: identity file {MY-WORKSPACE}/.ssh/id_rsa type 1
debug1: Checking blacklist file /usr/share/ssh/blacklist.RSA-2048
debug1: Checking blacklist file /etc/ssh/blacklist.RSA-2048
debug1: identity file {MY-WORKSPACE}/.ssh/id_rsa-cert type -1
debug1: identity file {MY-WORKSPACE}/.ssh/id_dsa type -1
debug1: identity file {MY-WORKSPACE}/.ssh/id_dsa-cert type -1
debug1: identity file {MY-WORKSPACE}/.ssh/id_ecdsa type -1
debug1: identity file {MY-WORKSPACE}/.ssh/id_ecdsa-cert type -1
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.8p1 Debian-7ubuntu1
debug1: match: OpenSSH_5.8p1 Debian-7ubuntu1 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.9p1 Debian-5ubuntu1
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr hmac-md5 none
debug1: kex: client->server aes128-ctr hmac-md5 none
debug1: sending SSH2_MSG_KEX_ECDH_INIT
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
debug1: Server Host key: ECDSA {SERVER_Host_KEY}
debug1: Host 'SERVER_IP' is known and matches the ECDSA Host key.
debug1: Found key in {MY-WORKSPACE}/.ssh/known_hosts:1
debug1: ssh_ecdsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: password
debug1: Next authentication method: password
senthil@SERVER_IP's password: 
debug1: Authentications that can continue: password
Permission denied, please try again.
senthil@SERVER_IP's password: 

Pour mot de passe, j'ai entré la même valeur que celle que j'utilise normalement pour l'utilisateur 'ubuntu'.

Quelqu'un peut-il m'indiquer où se situe le problème et suggérer une solution?

23
Senthil Kumaran

J'ai trouvé où le problème est et résolu.

J'ai créé un nouvel utilisateur (nommé: senthil) et je viens de l'utiliser pour SSH. Dans Ubuntu, j’ai le sentiment que lors de la création d’un nouvel utilisateur, le mot de passe de l’utilisateur root sera attribué par défaut au nouvel utilisateur. Même dans ce cas, réinitialisez et attribuez un nouveau mot de passe aux utilisateurs nouvellement créés.

Une fois après la réinitialisation du mot de passe de l'utilisateur et les modifications suivantes dans sshd_config, je peux maintenant connecter tous mes systèmes (à partir de mon réseau) au serveur distant.

Remarque: j'ai désactivé toutes les authentifications SSH (telles que RSAAuthentication, PubkeyAuthentication et KerberosAuthentication). J'ai activé uniquement PasswordAuthentication.

Merci.

2
Senthil Kumaran

Vous avez verrouillé le compte.

Dans la page de manuel de usermod(8):

-L, --lock
           Lock a user's password. This puts a '!' in front of the encrypted password,
           effectively disabling the password.

Regardez maintenant votre ligne shadowname__:

ubuntu:!$6$rWDSG...HSi1:15347:0:99999:7:::

Débloquez-le:

usermod -U ubuntu

Remarque importante! Si cet utilisateur est préinstallé sur le système, il est peut-être verrouillé pour une raison (raisons de sécurité), mais je ne peux pas en décider pour vous car ce n'est pas une installation habituelle d'Ubuntu.


Si ce qui précède vous met mal à l'aise, vous pouvez créer un utilisateur distinct:

Sudo adduser username

et répondez aux questions. Vous devriez être capable de vous connecter très bien. Assurez-vous également qu’il devienne root (utilisez Sudoname__) en l’ajoutant au groupe Sudoname__:

Sudo adduser username Sudo

Si vous devez basculer vers l'utilisateur ubuntusur la ligne de commande, vous devrez utiliser vos privilèges élevés, car vous ne pouvez pas fournir d'informations d'identification pour la même raison que celle pour laquelle vous ne pouvez pas vous connecter à l'aide de SSH. Connectez-vous à l’aide de SSH sous le nom usernameet exécutez-le pour devenir ubuntuname__:

Sudo su -l ubuntu

Pour des raisons de sécurité, je ne conseillerais pas d'utiliser rootpour vous connecter directement.

11
gertvdijk

J'ai le même problème et cela me prend de nombreuses heures.

Cependant, je remarque qu’il s’agit d’un mot de passe incorrect en raison des différences entre la disposition du clavier du client snd du serveur:

Dans Server, je pensais que je définissais le mot de passe: WEwd@ds Et, je remarque que @ est " dans la disposition du clavier du serveur.

Le bon mot de passe est donc: WEwd"ds


Ainsi, vous devez vérifier:

Disposition du clavier du serveur [vs] Disposition du clavier du poste de travail

7
Abdennour TOUMI

Ce n'est pas une réponse exacte à cette question. Mais dans mon cas, il y avait des lignes redondantes. (il y avait deux fois la même ligne)

PermitRootLogin yes

et aussi

AllowUsers otheruser

Vous devez ajouter l'utilisateur 'root' à cette ligne ou commenter cette ligne.

Et redémarrez ssh service sshd restart

5
Sadee

J'ai une solution pour vous Dans votre fichier sshd_config, vous ajoutez cette ligne à la fin du fichier:

AllowUsers senthil

Cette ligne permettra à votre serveur de se connecter au nom de l'utilisateur: senthil. Un autre utilisateur sera refusé. Après cela, allez sur votre terminal sur votre serveur tapez cette commande:

ssh senthil@yourhostname

Terminé! Bonne chance à vous Plus d'informations que vous pouvez venir ici et voir. http://www.htpcbeginner.com/install-ssh-server-on-ubuntu-1204/

2
Dang_Ho

Dans mon cas, cela a résolu le problème: Sur le serveur exécutant openssh-server, j'ai changé le mot de passe utilisateur (myserverusername) et le mot de passe root (root) en un mot que j'utilisais précédemment:

Sudo passwd myserverusername

et

Sudo passwd root

Puis redémarrez le démon de serveur ssh:

Sudo service ssh restart

C'est étrange parce que je ne me rappelle pas avoir changé de mot de passe

Vérifier la liste d'accès sshdpour les utilisateurs autorisés (fichier de configuration)

  1. cat /etc/ssh/sshd_config
  2. AllowUsersname__

ne devrait pas être défini, il devrait être commenté # comme indiqué dans l'exemple ci-dessous.

# Example of overriding settings on a per-user basis
#Match User anoncvs
#       X11Forwarding no
#       AllowTcpForwarding no
#       ForceCommand cvs server
Ciphers aes128-ctr,aes192-ctr,aes256-ctr
ClientAliveInterval 432000
ClientAliveCountMax 0
#AllowUsers TestUser
0
willer

J'ai vu beaucoup de réponses à ces questions. Moi aussi j'ai fait face au problème. Mon cas était ma connexion ssh fonctionnaient avant, je suis passé à Windows 10 mis à jour automatiquement. Je n'ai pas travaillé longtemps sur Ubuntu sur mon bureau.

Je ne sais pas quel était le problème. J'ai vérifié le fichier\etc\hosts, le fichier sshd_config, tout se présentait bien. Ensuite, j'ai décidé de vérifier mes paramètres antivirus - c'est le problème du bingo!

L'application PuTTY figurait sur la liste des refus. Donc activé ... puis connectez-vous avec succès. Un grand cri!

0
Niranjan Das

Pour les désespérés, revérifiez votre fichier /etc/hosts pour vous assurer que vous ne persuadez pas votre ordinateur de penser qu'un certain nom d'hôte a une adresse IP différente de celle dont il dispose réellement. >. <

0
Alexander Taylor