Поиск по сайту:

Как отключить доступ «su» для пользователей Sudo


Команда su — это специальная команда Linux, которая позволяет запускать команду от имени другого пользователя и группы. Он также позволяет вам переключиться на учетную запись root (если запускается без каких-либо аргументов) или другую указанную учетную запись пользователя.

По умолчанию всем пользователям разрешен доступ к команде su. Но как системный администратор вы можете отключить доступ su для пользователя или группы пользователей, используя файл sudoers, как описано ниже.

Файл sudoers управляет плагином политики безопасности sudo, который определяет привилегии пользователя sudo. команда sudo позволяет пользователям запускать программы с правами безопасности другого пользователя (по умолчанию как пользователь root).

Чтобы переключиться на другую учетную запись пользователя, пользователь может запустить команду su из текущего сеанса входа в систему, как показано. В этом примере пользователь aarunk переключается на учетную запись testuser. Пользователю aarunk будет предложено ввести пароль для учетной записи testuser:

su testuser

Чтобы переключиться на учетную запись root, пользователь должен иметь пароль root или иметь права на вызов команды sudo. Другими словами, пользователь должен существовать в файле sudoers. В этом примере пользователь aarunk (пользователь sudo) переключается на учетную запись root.

После вызова sudo пользователю aarunk предлагается ввести свой пароль. Если он действителен, пользователю предоставляется доступ к интерактивной оболочке с правами root:

sudo su

Отключить доступ su для пользователя Sudo

Чтобы отключить доступ su для пользователя sudo, например пользователя aaronk, указанного выше, сначала создайте резервную копию исходного файла sudoers, расположенного по адресу /etc/sudoers. следующее:

sudo cp /etc/sudoers /etc/sudoers.bak

Затем откройте файл sudoers с помощью следующей команды. Обратите внимание, что редактировать файл sudoers вручную не рекомендуется, всегда используйте команду visudo:

 
sudo visudo

В разделе команды aliases создайте следующий псевдоним:

Cmnd_Alias DISABLE_SU = /bin/su

Затем добавьте следующую строку в конец файла, замените имя пользователя aaronk на пользователя, для которого вы хотите отключить доступ su:

aaronk ALL=(ALL) NOPASSWD: ALL, !DISABLE_SU

Сохраните файл и закройте его.

Затем проверьте, работает ли установка следующим образом. Система должна вернуть такое сообщение об ошибке: «К сожалению, пользователю aaronk не разрешено выполнять «/bin/su» от имени пользователя root в tecmint.».

sudo su

Отключить доступ su для группы пользователей Sudo

Вы также можете отключить доступ su для группы пользователей sudo. Например, чтобы отключить доступ su для всех пользователей в группе admin, измените строку:

%admin ALL=(ALL) ALL

к этому:

%admin ALL=(ALL) ALL, !DISABLE_SU

Сохраните файл и закройте его.

Чтобы добавить пользователя в группу admin, выполните команду usermod (замените имя пользователя фактическим пользователем):

sudo usermod -aG  admin  username

Для получения дополнительной информации о su, sudo и sudoers посетите их справочные страницы:

man su
man sudo
man sudoers