Les clés SSH sont une excellente méthode à utiliser pour authentifier les sessions SSH sans avoir besoin d'un mot de passe à chaque connexion. Cependant, comme toutes les technologies, les clés SSH ne sont pas parfaites, et vous pouvez rencontrer des erreurs lors de leur utilisation. L'une des erreurs les plus courantes lorsque vous travaillez avec des clés SSH est l'erreur d'autorisation refusée (clé publique).
Cet article discutera des différentes raisons de cette erreur et vous montrera les étapes rapides que vous pouvez suivre pour corriger l'erreur.
Erreur 1 : clés autorisées et autorisations d'annuaire
L'une des causes de cette erreur peut être les autorisations et la propriété configurées pour le .répertoire ssh et fichier authorised_keys.
Pour résoudre ce problème, définissez le .les autorisations du répertoire ssh à 700 et les autorisations enabled_keys à 6oo.
sudo chmod 700 ~/.ssh sudo chmod 600 clés_autoriséesErreur 2 : Configurations SSH incorrectes
Une autre cause courante de l'erreur de clé publique est une configuration incorrecte dans le fichier sshd_config. Pour résoudre ce problème, modifiez le fichier /etc/ssh/sshd_config et modifiez les entrées suivantes.
#PermitRootLogin prohibit-password#PasswordAuthentication oui
Les entrées ci-dessus doivent être comme indiqué ci-dessous :
PermitRootLogin ouiMot de passeAuthentification oui
Enregistrez la configuration et redémarrez le service :
sudo systemctl redémarrer sshd.un serviceErreur 3 : Clés manquantes
Une autre cause possible de l'erreur d'autorisation de clé publique refusée pourrait être des clés manquantes de votre ordinateur local. Si vous avez ajouté vos clés au fichier authorised_keys du serveur mais qu'il vous manque les clés privées correspondantes, cela peut provoquer une erreur.
Pour résoudre ce problème, modifiez le fichier de configuration ssh, désactivez l'authentification par clé publique et activez la connexion par mot de passe, comme suit :
Authentification Pubkey oui#PasswordAuthentication oui
Remplacez par les entrées suivantes :
#PubkeyAuthentication ouiMot de passeAuthentification oui
Une fois la configuration modifiée, enregistrez le fichier et redémarrez le service SSH :
sudo systemctl redémarrer sshd.un serviceSi vous êtes certain que vos clés ont été compromises, vous pouvez les supprimer deauthorized_keys ou ajouter une clé spécifique à la liste révoquée en SSH.
Conclusion
Ce guide rapide vous a montré comment résoudre divers problèmes pouvant entraîner l'erreur d'autorisation refusée (clé publique) dans SSH. Si ce problème persiste, envisagez d'autres méthodes de dépannage.