Я хотел бы разрешить определенным пользователям использовать su для другой учетной записи пользователя без необходимости знать пароль этой учетной записи, но не разрешать доступ к любой другой учетной записи пользователя (например, root).
Например, я бы хотел, чтобы Tom DBA прислал su пользователю oracle, но не пользователю tomcat или root.
Я полагаю, что это можно сделать с помощью файла / etc / sudoers - возможно ли это? Если так, то как?
Добавьте в ваш / etc / sudoers что-то вроде
Тогда пользователь tom должен иметь возможность использовать sudo для запуска вещей от имени пользователя oracle с параметром -u, не позволяя tom
Т.е. получить оболочку как пользовательский оракул (хорошо, учитывая, что ваш sudo достаточно новый, чтобы иметь опцию -i).
источник
tom ALL=(oracle)NOPASSWD:ALL
чтобы sudo не спрашивало парольЧтобы ТОЛЬКО предоставить возможности в вопросе, добавьте следующее в / etc / sudoers:
Тогда Том может:
источник
Мне нужно было сделать это с системой недавно, и мне было трудно найти свои заметки об альтернативной установке, которую я использовал несколько лет назад, которая также допускала синтаксис
su <user>
. В моей ситуации мне нужно было разрешить несколько пользователей дляsu
конкретного пользователя.Создайте группу, используя
addgroup <groupName>
которую другие пользователи смогутsu
без пароля. Затем добавьте эту группу к каждому пользователю, к которому вы хотитеsu
подключиться без пароля:usermod -a -G <groupName> <userName>
(илиusermod -a -G oracle tom
). Изменения в группе могут не вступить в силу до следующего входа в систему.Примечание: в вашем случае у вас уже есть группа, потому что
oracle
группа была бы создана, когда вы сделали пользователя oracle с помощьюadduser oracle
.Теперь отредактируйте
/etc/pam.d/su
и под следующим:..добавить строки правил авторизации, поэтому раздел выглядит так:
Заменить
<groupName>
наoracle
в этом случае. Это позволит любому пользователю , который является частью<groupName>
Tosu <groupName>
Теперь
tom
можно,su oracle
и если вам нужно предоставить другим пользователям такой же доступ, добавьте их вoracle
группу.подобный вопрос здесь
источник