我知道如何通过添加适当的配置行为所有 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