J'ai mis à niveau mon serveur distant vers Ubuntu 16.04 (à partir de 14.10).
Ensuite, je l'ai reconfiguré pour n'utiliser que des clés et non des mots de passe. Je l'ai fait en modifiant le fichier /etc/ssh/sshd_config
dans lequel j'ai changé comme suit:
PasswordAuthentication no
PubkeyAuthentication yes
ChallengeResponseAuthentication no
Rechargez ensuite le service shh avec: systemctl reload sshd
Le problème est que toutes les clés ssh publiques dans le fichier ~/.ssh/registered_keys semblent être non valides pour une raison quelconque.
Alors maintenant, je ne peux plus me connecter. Je ne reçois que la permission refusée (publickey). J'ai essayé de nombreuses options -o pour forcer une invite de mot de passe sans succès. Tout ce dont j'ai besoin, c'est de pouvoir me connecter avec un mot de passe.
Toute aide est très appréciée.
Si vous ne pouvez pas démarrer dans un shell racine, vous êtes un peu désossé. J'ai déjà vu cela se produire lorsque des personnes ont oublié de modifier l'accès au fichier de clés. La méthode recommandée est d'essayer d'utiliser la clé avant désactiver l'authentification par mot de passe.
S'il s'agit d'une instance dans un nuage, appelez votre fournisseur et demandez-lui de réinitialiser le mot de passe (qui peut ne pas être gratuit ni même offert).
Si c'est une boîte réelle et que vous avez quelqu'un à proximité, appelez-les et achetez-les avec une pizza.
Sinon, vous devez monter dans votre voiture.
Lorsque vous arrivez sur votre ordinateur, appuyez sur la touche F de magie qui vous amène au menu de démarrage, puis sélectionnez "shell racine". Montez le système de fichiers en écriture. Editez ensuite le fichier de configuration à son point de départ et réessayez.
En outre, je fais normalement cela alors que je suis assis devant la boîte pour cette raison exacte. Dans un cas VPS, je pratique d'abord la méthode sur une boîte locale pour m'assurer que tout est correct.
Ubuntu 16.04 a désactivé les clés DSA et n'accepte plus que les clés RSA. Cela m'a aussi touché, mais heureusement, l'accès par mot de passe était toujours activé.
Vous pouvez ajouter
Host *
PubkeyAcceptedKeyTypes=+ssh-dss
sur ~/.ssh/config, ou passez aux touches rsa. Une fois que vous entrez ...