PAM 可插拔认证模块
PAM 控制 Linux 的认证、账户、密码和会话流程,/etc/pam.d/ 下的配置决定谁能登录、密码策略、资源和多因素认证。改错 PAM 可能导致所有人无法登录。
常见模块:pam_unix、pam_tally2/pam_faillock、pam_pwquality、pam_limits、pam_mfa。
查看服务的 PAM 配置:
cat /etc/pam.d/sshd
cat /etc/pam.d/system-auth
限制失败登录:
auth required pam_faillock.so preauth silent deny=5 unlock_time=900
auth [default=die] pam_faillock.so authfail deny=5 unlock_time=900
account required pam_faillock.so
查看锁定用户:
faillock --user alice
faillock --user alice --reset
密码复杂度:
password requisite pam_pwquality.so try_first_pass retry=3 minlen=12
资源限制:
session required pam_limits.so
pam_faillock 和 pam_tally2 混用,行为冲突。include/substack 顺序错误,规则不生效。pam_limits 没有启用,ulimit 配置不生效。pamtester 或新会话验证。