怎么可以不允许su -

怎么可以不允许su -

我是系统管理员,我不希望用户使用su - $appuser并尝试输入应用程序用户的密码

相当

使用sudo su - $appuser并输入自己的密码。

一些不知情的天真用户会尝试su - $appuser输入错误的密码,如果输入错误密码,应用程序用户会在 3 次尝试失败后被锁定(由 AD 团队定义;无法更改)。我们希望强迫用户使用sudo su -

这能实现吗?

答案1

好吧,你总是可以使用传统的 BSD 路线......

创建一个群组 -车轮是传统的名字...

将允许使用的用户添加su到该组中 - 在您的情况下,没有(可能除了, 但无论如何都是允许的)。

将组所有权设置su车轮

带走其他的执行权su

到最后su应该有词根:轮子所有权,其权限应为:rws--x---(即chmod u=rwxs,g=x,o= su)(或者更好;--s--x--- ;即chmod u=xs,g=x,o= su

这将阻止任何人,除了以及成员车轮从执行su.由于sudo有效使用使任何用户sudo su ...也应该有效。

答案2

如果您使用的系统使用 PAM(例如,几乎所有 Linux 系统),那么您还有更多选择。

  1. 编辑/etc/pam.d/su并添加一行,就像su auth required pam_wheel.so在 LDAP/AD/等之前一样。验证。这wheel通过 PAM 而不是文件所有权为您提供组。您还可以使用 做更灵活的事情pam_succeed_if
  2. 编辑相同的内容,然后将auth sufficient pam_rootok.so(让root使用su)更改为auth required pam_rootok.so(让仅有的root 使用su),或者放在auth required pam_deny.so某个时刻。
  3. 同一个文件,您可以执行类似auth required pam_succeed_if.so uid ne $appuser阻止su应用程序用户之类的操作。

我提前道歉,我没有测试过其中任何一个。

相关内容