Например, я бы хотел, чтобы Tom DBA прислал su пользователю oracle, но не пользователю tomcat или root.
Мне нужно было сделать это с системой недавно, и мне было трудно найти свои заметки об альтернативной установке, которую я использовал несколько лет назад, которая также допускала синтаксис 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
и под следующим:
# This allows root to su without passwords (normal operation)
auth sufficient pam_rootok.so
..добавить строки правил авторизации, поэтому раздел выглядит так:
# This allows root to su without passwords (normal operation)
auth sufficient pam_rootok.so
auth [success=ignore default=1] pam_succeed_if.so user = <groupName>
auth sufficient pam_succeed_if.so use_uid user ingroup <groupName>
Заменить <groupName>
на oracle
в этом случае. Это позволит любому пользователю , который является частью <groupName>
Tosu <groupName>
Теперь tom
можно, su oracle
и если вам нужно предоставить другим пользователям такой же доступ, добавьте их в oracle
группу.
подобный вопрос здесь