PAM 允许使用sufficent
和required
一些逻辑,比如
auth sufficient pam_a.so
auth required pam_b.so
auth required pam_c.so
这意味着“要么 a 为真,要么 b 必须为真,然后 c 必须为真”。
是否可以进行更复杂的操作?像“(a或b)和(c或d)”或“(a和b)或(c和d)”?可能还有更多层次的括号。
PAM 允许使用sufficent
和required
一些逻辑,比如
auth sufficient pam_a.so
auth required pam_b.so
auth required pam_c.so
这意味着“要么 a 为真,要么 b 必须为真,然后 c 必须为真”。
是否可以进行更复杂的操作?像“(a或b)和(c或d)”或“(a和b)或(c和d)”?可能还有更多层次的括号。
是的,可以跳过任意数量的行是有逻辑的。没有“分组括号”或任何类似的东西,但是如果您将刚才提到的逻辑与跳过行的能力结合起来,您可以有选择地排除行为。
这是我个人服务器的一个例子:
如果源 IP 来自我的本地网络,我真的不需要双重身份验证,所以我使用
pam_access.so
检查的结果来跳过成功的一行。如果检查失败,则不会发生任何事情并检查下一行。pam.conf
您可以在手册页中找到有关此内容的更多信息。搜索“值 1”。本节开始如下:请记住,此逻辑要复杂得多,如果人们编辑您的 PAM 配置而没有注意到存在跳行,他们可能会在错误的位置添加或删除行,从而导致各种混乱。