在线上的服务器有时需要限制用户登录次数.这个功能可以通过pam的pam_tally2.so模块来实现
PAM模块是用sun提出的一种认证机制
pam_tally2.so模块
一.格式
- pam_tally2.so [file=/path/to/counter] [onerr=[fail|succeed]] [magic_root] [even_deny_root] [deny=n] [lock_time=n] [unlock_time=n]
- [root_unlock_time=n] [serialize] [audit] [silent] [no_log_info]
参数:
file:指定统计次数用的文件,默认是/var/log/tallylog
magic_root:如果用户uid=0,在帐户认证时调用该模块发现失败时,不计入统计
even_deny_root:root用户一样被锁定
deny:普通用户锁定次数
lock_time:普通用户锁定后等待的时间
unlock_time:普通用户锁定后解锁要等待的时间
二.实例
auth required pam_tally2.so deny=3 unlock_time=300 even_deny_root root_unlock_time=300
/etc/pam.d/login中配置只在本地文本终端上做限制
/etc/pam.d/kde在配置时在kde图形界面调用时限制
/etc/pam.d/sshd中配置时在通过ssh连接时做限制
/etc/pam.d/system-auth中配置凡是调用 system-auth 文件的服务,都会生效
三.查看命令
查看root用户的登录失败的次数
pam_tally2 --user root
重置计数器,即手动解锁
pam_tally2 --user root --reset