如何在 RHEL5 中创建仅“su”用户(无 SSH 或 SFTP)并限制谁可以“su”进入该帐户?

如何在 RHEL5 中创建仅“su”用户(无 SSH 或 SFTP)并限制谁可以“su”进入该帐户?

可能重复:
我怎样才能允许一个用户通过 su 访问另一个用户,但不允许 root 访问?

我们有一个 DBA 使用的用户帐户(oracle)。我不想在这个帐户上设置密码,只想允许dba组中的用户访问su - oracle

我怎样才能做到这一点?

我原本想让他们sudo访问su - oracle命令。不过,如果有更完善/优雅/安全的方法,我也不会感到惊讶。

答案1

如果您无论如何都要授予他们用户帐户的完全访问权限,为什么不让他们直接做任何他们想做的事情呢sudo

%dba     ALL = (oracle) ALL

此行将sudoers允许dba用户组中的任何人以用户身份运行任何命令oracle,包括使用sudo -su oracle或获取sudo -iu oracle登录 shell。

或者,如果您不希望他们访问所有内容,您可以用ALL命令列表替换最后一个命令以限制他们,例如

%dba     ALL = (oracle) /bin/chmod, /usr/local/bin/oracleclient localhost

答案2

是的,有。使用

sudo -u oracle -i

并为 nopasswd 默认 shell 添加权限,例如:

%dba    ALL=(oracle)NOPASSWD: /bin/bash

相关内容