如何仅向 wheel 组中的一个用户授予无需密码的 su 访问权限(FreeBSD)?

如何仅向 wheel 组中的一个用户授予无需密码的 su 访问权限(FreeBSD)?

我知道如何通过添加适当的配置行为所有 wheel 组用户启用无需密码的 su /etc/pam.d/su

我不想为所有 wheel 用户启用此功能,而只想为某个特定用户启用。

我正在使用 FreeBSD 8.1。我该怎么做?

更新以回应以下评论

这是一个 pfSense 盒子。底层操作系统是 FreeBSD 8.1,但与 pfSense 一样,缺少许多功能,尤其是整个端口集合。我希望有一个特权用户(在 wheel 组中)能够调用 su - 而无需输入 root 密码。使用 PAM 为所有 wheel 用户启用此功能很容易。我不知道正确的 PAM 配置以允许绕过某个特定用户的密码。公司政策限制了我可以进行的更改程度。这是一台正在运行的关键任务机器,我不能冒险意外将其关闭。我继承了这台机器的管理权,但目前无法或不允许对其配置进行彻底更改。我有 PAM;我没有 sudo。我希望有,但我没有。

答案1

FreeBSD 有用户私有组吗?如果没有,请创建一个组并只将该用户放入其中。然后添加/etc/pam.d/su类似

auth            sufficient      pam_group.so            no_warn group=foo

foo群组名称在哪里?

答案2

我建议使用sudo它来做这件事。这是一个简单且经过充分测试的方法。

请参考 sudo 手册页以获取更多信息。

答案3

仅将一个用户放入 wheel 组有什么问题?

答案4

Mark Wagner 想出了一个解决方案,非常感谢。我创建了一个组nopw并将特权用户添加到其中。然后我使用 pam_group.so 模块为该组制定了“足够的”no_warn 规则。现在auth我的/etc/pam.d/su文件部分如下所示:

auth   sufficient   pam_rootok.so   no_warn
auth   sufficient   pam_self.so     no_warn
auth   sufficient   pam_group.so    no_warn group=nopw root_only fail_safe
auth   requisite    pam_group.so    no_warn group=wheel root_only fail_safe
auth   include      system

相关内容