Dépannage et résolution des échecs d'authentification Su
Maintenant que nous comprenons les causes courantes des échecs d'authentification su et comment configurer le contrôle d'accès, concentrons-nous sur le dépannage et la résolution de ces échecs.
Diagnostic des échecs d'authentification
Lorsque vous rencontrez un échec d'authentification su, suivez ces étapes systématiques pour diagnostiquer le problème :
Étape 1 : Vérifier le message d'erreur
Le message d'erreur peut fournir des indices précieux sur la nature de l'échec. Les messages d'erreur courants incluent :
su: Authentication failure - Indique généralement un mot de passe incorrect.
su: user username does not exist - Le compte utilisateur spécifié n'existe pas.
su: permission denied - Les restrictions de contrôle d'accès empêchent l'opération.
Étape 2 : Vérifier le compte utilisateur
Assurez-vous que le compte utilisateur cible existe et n'est pas verrouillé :
grep testuser /etc/passwd
Cela devrait afficher l'entrée pour testuser dans le fichier de mots de passe, confirmant que le compte existe.
Vérifiez si le compte est verrouillé :
sudo passwd -S testuser
La sortie inclut l'état du compte. S'il indique "L" (verrouillé), le compte est verrouillé.
Étape 3 : Vérifier les restrictions de contrôle d'accès
Comme nous l'avons appris à l'étape précédente, la configuration PAM peut restreindre l'accès su. Vérifiez ces restrictions :
grep -v "^#" /etc/pam.d/su | grep pam_wheel
Si cela renvoie une ligne contenant pam_wheel.so, l'accès à su peut être restreint aux membres d'un groupe spécifique.
Étape 4 : Examiner les journaux système
Les journaux système peuvent fournir des informations détaillées sur les échecs d'authentification :
sudo tail -n 20 /var/log/auth.log
Recherchez les entrées liées aux échecs su, qui peuvent fournir un contexte supplémentaire.
Résolution des échecs d'authentification Su courants
Maintenant, abordons les échecs d'authentification su courants et comment les résoudre :
1. Mot de passe incorrect
Si vous entrez le bon mot de passe mais que vous obtenez toujours des échecs d'authentification, le mot de passe devra peut-être être réinitialisé :
sudo passwd testuser
Entrez un nouveau mot de passe pour testuser lorsque vous y êtes invité.
2. Compte verrouillé
Si le compte est verrouillé, déverrouillez-le :
sudo passwd -u testuser
3. Restrictions de contrôle d'accès
Si les restrictions de contrôle d'accès empêchent l'accès su, vous pouvez soit :
a. Ajouter l'utilisateur au groupe requis :
sudo usermod -aG sugroup testuser2
Cela ajoute testuser2 au sugroup.
b. Désactiver temporairement la restriction en commentant la ligne pertinente dans la configuration PAM :
sudo sed -i 's/^auth\s\+required\s\+pam_wheel.so/#&/' /etc/pam.d/su
Cette commande commente la ligne contenant pam_wheel.so dans la configuration PAM de su.
4. Problèmes de permissions de fichiers
Si le binaire su a des permissions incorrectes, corrigez-les :
sudo chmod u+s $(which su)
Cela garantit que le bit setuid est défini sur le binaire su.
Tester les corrections
Après avoir appliqué les corrections, testez si l'authentification su fonctionne correctement :
su - testuser
Entrez le mot de passe de testuser lorsque vous y êtes invité. En cas de succès, vous devriez maintenant être connecté en tant que testuser.
Essayez de passer à l'utilisateur root :
su -
Si vous avez le mot de passe root et que les restrictions de contrôle d'accès ont été correctement traitées, vous devriez pouvoir passer à l'utilisateur root avec succès.
Ces étapes de dépannage et ces corrections traitent les échecs d'authentification su les plus courants. En diagnostiquant et en résolvant systématiquement ces problèmes, vous pouvez vous assurer que la commande su fonctionne correctement sur votre système.