我必须使用服务/etc/pam.d/su来允许我的系统中的任何用户执行

su user5

不需要密码。
我试过了但没用:
auth       [success=ignore default=1] pam_succeed_if.so user = user5

最佳答案

简单考虑一下:

# consider success given a match, but continue on to other auth steps in addition
auth pam_succeed_if.so user = user5

……或者。。。
# perform no further auth steps if this succeeds
auth [success=done] pam_succeed_if.so user = user5

success=ignore default=1标志在一个场景中是有意义的,在这个场景中,下一个模块是您想要为user5执行的,但对于所有其他用户都是跳过的。你所描述的情景并不是你的意图。
也就是说,su可能根本不是这项工作的正确工具。考虑由user5拥有的setuid二进制文件(例如shell)(设置了不可变标志,或者在只读文件系统上,如果您实际上不希望user5能够修改它)。

关于linux - 如何配置PAM以允许任何用户向用户5发出“su”?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37190080/

10-11 03:59