web-dev-qa-db-fra.com

Pourquoi ne puis-je pas su rooter?

J'ai utilisé Sudo passwd root pour définir le mot de passe de root avec succès, puis j'ai essayé de passer à la racine, mais cela a échoué sans réponse.

ubuntu@VM-44-117-ubuntu:~$ Sudo su root
ubuntu@VM-44-117-ubuntu:~$

Vous pouvez voir que le nom d'utilisateur n'est pas changé.

Ensuite, j'ai essayé d'utiliser su root mais le nom d'utilisateur n'a toujours pas changé.

ubuntu@VM-44-117-ubuntu:~$ su root
Password: 
ubuntu@VM-44-117-ubuntu:~$ 

Comment puis-je faire fonctionner su correctement?

1
jansma

La partie "racine" est prise en charge par défaut. Alors:

doug@s15:~$ Sudo su
[Sudo] password for doug:
root@s15:/home/doug# exit
exit
doug@s15:~$

Bien sûr, je suis (doug) membre de Sudo et je suis donc autorisé à devenir root:

doug@s15:~$ groups
doug adm cdrom Sudo dip plugdev lxd lpadmin sambashare libvirtd

Cependant, vous pouvez également spécifier le nom d'utilisateur que vous souhaitez utiliser. Exemples:

doug@s15:~$ Sudo su root    
root@s15:/home/doug# exit
exit
doug@s15:~$ Sudo su richard
richard@s15:/home/doug$ exit
exit

Pour plus d'informations, reportez-vous aux pages su man .

Maintenant que tout cela est dit, le comportement de votre système semble étrange. Si je retire les droits Sudo de l'utilisateur richard:

doug@s15:~$ Sudo deluser richard Sudo
Removing user `richard' from group `Sudo' ...
Done.

Et puis, dans un autre terminal, connectez-vous en tant que richard et essayez d'utiliser su, je reçois:

richard@s15:~$ groups
richard adm cdrom dip plugdev lxd lpadmin sambashare libvirtd
richard@s15:~$ Sudo su
[Sudo] password for richard:
richard is not in the sudoers file.  This incident will be reported.
richard@s15:~$

Alors pourquoi n'obtenez-vous rien? (quelle était votre question initiale)?
Votre ordinateur est-il virtuel et hébergé ailleurs? Les sites d'hébergement font souvent des choses étranges pour root et autres. Votre version de su correspond-elle à cela ?:

-rwsr-xr-x 1 root root 40128 May 16  2017 /bin/su
4
Doug Smythies

Vous pouvez éviter cela complètement et ne pas compromettre la sécurité de votre système. Si vous avez besoin d'un shell racine:

Sudo -s

Maintenant, vous êtes dans un shell en tant que root. Déconnectez-vous normalement pour revenir. Certes, il arrive parfois que root ait un mot de passe qui semble fonctionner, ce qui semble bien, par exemple lorsque vous devez exécuter un service tel que rsync pour configurer ou restaurer des éléments sur un ordinateur en réseau. Ce que je fais habituellement dans ces cas-là, c'est de tirer le service au lieu de me faire pousser. Par exemple,

Sudo rsync -a you@remotehost:/root_owned_dirs/ /root_owned_dirs/

Si des autorisations root sont nécessaires des deux côtés, j'essaie de définir le mot de passe root sur la machine la moins exposée au monde extérieur et d'extraire du côté le plus exposé. De cette façon, si je suis pressé, l'erreur est plus difficile à attaquer.

Dans ce cas:

Sudo passwd root

Définissez le mot de passe, puis

su

et vous avez un shell en tant que racine.

Mon agenda secret consiste à KILL the stupide habitude de lancer "Sudo su". Cela signifie littéralement

"Oh, ordinateur, donnez-moi plus de privilèges que ce que j'ai actuellement, afin que je puisse vous demander de plus grands privilèges."

Ce n'est pas terrible , juste idiot.

1
Hack Saw

Essaye ça:

Comme vous l'avez fait auparavant:

$ Sudo su
[Sudo] password for doug:

Cela demande le nouveau mot de passe pour root:

root@s15:/home/doug# passwd
[[new password for root]]

Sortez comme avant

$ exit

Maintenant, essayez de vous connecter en tant que root avec le mot de passe que vous avez fourni ci-dessus

$ su
0
Eric Mintz