pam:做认证的,nss:做用户(像ldap)
/lib64/security/:所有pam模块都在这里存放着。(64位系统便是在/lib64存放着)
/etc/pam.d/:pam服务的配置文件。
模块调用必须放在/lib64/security/这个目录下。
每个模块有4个功能的认证
auth:认证用户是否存在,然后再寻找pam
account:比对账户的,例如账户身份是否过期。
password:控制认证的更新,如密码的更改、复杂度。
session:只记录事件、行为。例如:控制用户的进程、使用的内存,记录日志,什么时候登录,什么时候登出等。
required:必须通过,若不通过我也不会提示你,但最后流程走完是失败的。
sufficient:只要认证成功,立马返回成功。
optional:可选
include:包含
requisite:如果第一次失败了,后面只要有一次成功,便会允许通过。
例如:利用pam模块让账户尝试密码2次后被锁定10秒
/usr/share/doc/pam-1.1.1/txts/ 存放着所有pam模块里的作用
README.pam_tally2 今天这次用到的模块就是这个
首先修改/etc/pam.d/system-auth与/etc/pam.d/password-auth配置文件,添加两行
auth required pam_tally2.so deny=2 even_deny_root unlock_time=10
account required pam_tally2.so
前面是尝试的次数,我这里是2次,后面是锁定的失常:10秒
锁定时间要和尝试完全一样,否则会不同步。
接着我们再次连续输入2次错误的密码,便会有以下的效果。
时间: 2024-10-25 22:18:06