Я не могу заставить пользователя без root получить sudo

Я пытаюсь использовать sudo в качестве пользователя не ROOT, поэтому я провел некоторое исследование в интернете и обнаружил, что пользователь (в данном случае creaz) должен быть добавлен в файл sudoers.

Так что я сделал [root@vps1484 ~]$ visudo как root и я добавил :

creaz     ALL=(ALL)     ALL

Когда я подключен к creaz@creaz.pro через ssh при вводе sudo я получаю :

[root@vps1484 ~]$ su creaz
creaz@creaz.pro [~]# sudo
sudo: effective uid is not 0, is sudo installed setuid root?

Если я сделаю :

creaz@creaz.pro [~]# ls -l `which sudo`
---x--x--x 1 root root 123832 Aug 13  2015 /usr/bin/sudo*

Я что-то пропустил ?

Усовершенствованный:

[root@vps1484 ~]$ stat /usr/bin/sudo
  File: `/usr/bin/sudo'
  Size: 123832          Blocks: 248        IO Block: 4096   regular file
Device: a7a0b651h/2812327505d   Inode: 149272      Links: 1
Access: (4111/---s--x--x)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2016-05-27 02:00:09.643651919 +1000
Modify: 2016-05-11 09:13:13.000000000 +1000
Change: 2016-05-27 01:11:02.486593149 +1000
[root@vps1484 ~]$

1 ответ

  1. Sudo исполняемый должен иметь набор бит suid:

    $ ll `which sudo`
    ---s--x--x. 1 root root 139024 Nov  5  2015 /usr/bin/sudo
    

    Вы можете достичь этого, запустив

    chmod 4111 `which sudo`
    

    под rootучетной записью.