Наприклад, я хотів би дозволити Tom DBA вступити на користувача оракула, але не на користувача 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
..add auth правила рядків, щоб розділ виглядав так:
# 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>доsu <groupName>
Тепер tomможна, su oracleі якщо вам потрібно надати іншим користувачам такий самий доступ, додайте їх до oracleгрупи.
подібне питання тут