GNU/Linux >> Tutoriels Linux >  >> Linux

l'authentification par clé publique échoue UNIQUEMENT lorsque sshd est un démon

Solution 1 :

Oui, SELinux en est probablement la cause. Le .ssh dir est probablement mal étiqueté. Regardez /var/log/audit/audit.log . Il doit être étiqueté ssh_home_t . Vérifiez avec ls -laZ . Exécutez restorecon -r -vv /root/.ssh si besoin.

Solution 2 :

J'ai eu le même problème. Dans mon cas, restorecon et chcon n'ont pas fonctionné.

Je ne voulais pas désactiver selinux. Après de nombreuses recherches, j'ai finalement compris que c'était parce que mon répertoire personnel avait été monté d'ailleurs (NFS). J'ai trouvé ce rapport de bogue qui m'a éclairé.

J'ai couru :

> getsebool use_nfs_home_dirs
use_nfs_home_dirs --> off

pour confirmer que use_nfs_home_dirs était désactivé, puis :

sudo setsebool -P use_nfs_home_dirs 1

pour l'activer.

Maintenant, je peux me connecter en ssh à ma machine en utilisant ma clé et sans entrer de mot de passe. Basculer le booléen use_home_nfs_dirs était ce qu'il fallait pour moi.

Solution 3 :

Pour ajouter à la réponse de Mark Wagner, si vous utilisez un chemin de répertoire personnel personnalisé (c'est-à-dire pas /home ), vous devez vous assurer que vous avez défini le contexte de sécurité SELinux. Pour ce faire, si vous avez des répertoires d'accueil des utilisateurs dans, par exemple, /myhome , exécutez :

semanage fcontext -a -e /home /myhome
restorecon -vR /myhome

Linux
  1. Comment configurer l'authentification basée sur une clé SSH sous Linux

  2. Ssh - Vous obtenez toujours une invite de mot de passe avec Ssh avec authentification par clé publique ?

  3. Quand `relatime` a-t-il été défini par défaut ?

  4. Journaliser uniquement les fichiers transférés avec Rsync ?

  5. Autorisation refusée lors du clonage du dépôt git

Comment utiliser l'authentification par clé publique avec SSH

Concepts de base du cryptage en cryptographie

Comment ajouter une clé publique SSH au serveur

Ajouter la clé publique au fichier known_hosts

Ajouter la clé à authorised_users sans avoir à redémarrer sshd

L'authentification par clé publique SSH échoue lorsque UsePAM est défini sur no