web-dev-qa-db-fra.com

Erreur SSH: Aucune méthode d'authentification prise en charge disponible (clé publique envoyée par le serveur)

Sur un système Ubuntu 16.04 sur Google GCP, je dois créer un nouvel utilisateur hello et autoriser d'autres utilisateurs à utiliser SSH sur le système en tant qu'utilisateur hello à l'aide de leurs clés SSH actuelles.

Voici ce que j'ai fait pour ajouter ma clé publique SSH à authorized_keys de hello:

Sudo useradd -m hello -s /bin/bash
Sudo mkdir /home/hello/.ssh
Sudo chown hello:hello -R /home/hello
Sudo chmod 777 /home/hello/.ssh
Sudo cat ~/.ssh/authorized_keys >> /home/hello/.ssh/authorized_keys
Sudo chmod 700 /home/hello/.ssh/
Sudo chmod 600 /home/hello/.ssh/authorized_keys

Problème: Lorsque j'essaie de SSH sur le serveur en tant qu'utilisateur hello, j'obtiens l'erreur

Déconnecté: Aucune méthode d'authentification prise en charge disponible (clé publique envoyée par le serveur)

/var/log/auth.log contient

4 novembre 17:37:05 hello sshd [27298]: erreur: déconnexion reçue à partir du port 174.63.124.9 62346: 14: aucune méthode d'authentification prise en charge disponible [preauth] 4 nov. 17:37:05 hello sshd [27298]: déconnecté de 174.63 .124.9 port 62346 [preauth]

Qu'est ce qui ne s'est pas bien passé? Je vous remercie!

1
Nyxynyx

Vous devez changer le propriétaire du fichier authorized_keys après sa création, car il appartiendra à l'utilisateur qui exécute le script.

L'ajout de cette dernière ligne à votre script devrait faire l'affaire.

Sudo chown hello:hello /home/hello/.ssh/authorized_keys

2
Hubert

Vérifiez les autorisations du répertoire/home. CA devrait etre

  • drwxr-xr-x. 9 root root 113 Jun 28 22:57 home

et ensuite les détails de votre répertoire personnel:

  • drwxr----- 5 user group 124 May 18 17:00 User drwx------ 2 user group 29 May 18 12:05 .ssh -rw------- 1 user group 2235 Jun 28 23:09 authorized_keys



Mes messages d'erreur dans les journaux

/ var/log/auth.log> sshd [22565]: erreur: déconnexion reçue à partir de X.X.X.X: 14: aucune méthode d'authentification prise en charge disponible [preauth]

côté client

ssh [email protected] Permission denied (publickey). ssh -vvv [email protected] ... debug2: we did not send a packet, disable method debug1: No more authentication methods to try. Permission denied (publickey).
côté serveur

  • service sshd stop

  • lancer le mode de débogage sshd:

  • /usr/sbin/sshd -ddd

    ... debug1: trying public key file /home/USER/.ssh/authorized_keys debug1: Could not open authorized keys '/home/USER/.ssh/authorized_keys': Permission denied ...

0
Bed Mi

Peut-être que dans le site du serveur cet utilisateur "hello" est sur la liste noire

essaye ça:

grep **AllowUsers** /etc/ssh/sshd_config

ou ca:

grep **DenyUsers** /etc/ssh/sshd_config

essayez aussi avec les groupes AllowGroups et DenyGroups.

0
Leandro Noskoski