web-dev-qa-db-fra.com

Je ne peux pas me connecter en tant que root avec la commande su, mais je peux le faire avec SSH

Comment est-il possible que je ne puisse pas me connecter en tant que root par su root ou su (j'obtiens une erreur de mot de passe incorrect), mais je peux me connecter en ssh root@localhost ou ssh root@my_local_IP avec le même mot de passe?

J'utilise CentOS 6.4.


pdate1:

cat /etc/pam.d/su

donne:

#%PAM-1.0
auth        sufficient  pam_rootok.so
# Uncomment the following line to implicitly trust users in the "wheel" group.
#auth       sufficient  pam_wheel.so trust use_uid
# Uncomment the following line to require a user to be in the "wheel" group.
#auth       required    pam_wheel.so use_uid
auth        include     system-auth
account     sufficient  pam_succeed_if.so uid = 0 use_uid quiet
account     include     system-auth
password    include     system-auth
session     include     system-auth
session     optional    pam_xauth.so

pdate2:

$ Sudo grep su /var/log/secure | grep -v Sudo

donne:

Feb 23 13:12:17 fallah su: pam_unix(su:auth): authentication failure;
logname=fallah uid=501 euid=501 tty=pts/0 ruser=fallah rhost=  user=root

répété environ 20 fois.

17
Alireza Fallah

Dans votre commentaire, vous avez dit que /bin/su a le mode/propriétaire suivant:

-rwxrwxrwx. 1 root root 30092 Jun 22 2012 /bin/su

Ici, nous avons deux problèmes.

  • il doit avoir le bit set-uid activé, afin qu'il s'exécute toujours avec les autorisations root, sinon, lorsqu'un utilisateur ordinaire (non root) l'exécute, il n'aura pas accès aux informations de mot de passe dans /etc/shadow ni la possibilité de définir l'ID utilisateur sur le nouvel utilisateur souhaité.

  • les bits d'écriture group et other doivent être désactivés, afin que les autres utilisateurs ne puissent pas les modifier.

Pour résoudre ce problème, connectez-vous en tant que root - vous avez dit que vous pouvez le faire avec ssh- et tapez

chmod 4755 /bin/su

ou bien,

chmod u+s,g-w,o-w /bin/su

(Le document standard pour chmod donne plus de détails sur les types d'arguments qu'il prend.) Cela restaurera les bits de mode à la façon dont ils étaient lorsque le système d'exploitation a été installé pour la première fois. Lorsque vous répertoriez ce fichier, il devrait ressembler à ceci:

-rwsr-xr-x. 1 root root 30092 Jun 22 2012 /bin/su

Comme l'a noté @ G-Man, les fichiers en mode 777 peuvent être remplacés par des utilisateurs non fiables, et si tel est le cas, vous pouvez les réinstaller à partir du support de distribution ou des sauvegardes.

23
Mark Plotnick

Si vous obtenez un message d'erreur comme celui-ci

su: PAM adding faulty module: /lib64/security/pam_tally.so
su: PAM unable to dlopen(/lib64/security/pam_tally.so): /lib64/security/pam_tally.so: cannot open shared object file: No such file or directory

Effectuez cette étape:

ln -s /lib64/security/pam_tally2.so /lib64/security/pam_tally.so

Essayez ensuite su. Ça devrait marcher.

0
Shaji A M