Как запретить пользователям переходить на Root-пользователя

12

Я отключил вход в систему пользователя root из файла Sshd.conf, так что теперь никто не может войти в систему, используя пользователя root, даже если они знают пароль SOMEHOW.

Теперь у меня есть 3 пользователя на сервере ROOT, EMERG и ORACLE. Я хочу разрешить переключение на ROOT только для EMERG пользователя с помощью su - а не для пользователя ORACLE.

потому что обычно, если пользователи знают пароль ROOT, они могут переключиться на root с помощью su -. И я хочу, чтобы эта функция была доступна только пользователю EMERG.

Как это сделать

Заранее спасибо......

OmiPenguin
источник
11
Взглянуть на sudoэто позволяет гораздо лучше и тоньше контроль доступа. Кроме того, он может аутентифицировать пользователей по их паролям.
Петер
1
Если мой ансер работает для вас, вы можете пометить его как правильный.
Bananguin

Ответы:

16

su(в основном) использует pam для аутентификации, а в pam есть модуль pam_wheel, который проверяет членство в группе аутентифицирующего пользователя. Короче говоря, добавив

auth       required   pam_wheel.so group=becomeroot

к файлу /etc/pam.d/su, только пользователи, которые являются членами группы, becomerootмогут стать суперпользователем, используя su. Теперь вы убедитесь, что только ваш пользователь EMERG является членом группы стал root. Некоторые дистрибутивы имеют / используют группу, названную wheelдля этого.

groupadd becomeroot         #add the group becomeroot to your system
gpasswd -a EMERG becomeroot # add the user EMERG to the group becomeroot

Дальнейшее чтение: РАМ (7) pam_wheel (8) GroupAdd (8) gpasswd (1) и многие дистрибутивы имеют объяснение в комментариях , /etc/pam.d/suа также

Bananguin
источник
2
Не во всех дистрибутивах есть wheelгруппа, иначе ее можно назвать по-разному.
vonbrand