linux安全-用户登录失败N次后锁定用户禁止登陆
【摘要】 linux登录安全,主要是红帽系linux
博主所在公司有安全合规同事专门做检查,最近提出一个需求“密码锁定策略为10次,锁定时间为5分钟”,于是百度一下,刚好有相关的资料,在此记录下来。
需求:
密码锁定策略为10次,锁定时间为5分钟
原理:
Linux有一个pam_tally2.so的PAM模块,来限定用户的登录失败次数,如果次数达到设置的阈值,则锁定用户。
此处使用的是 pam_tally2 模块,如果不支持 pam_tally2 可以使用 pam_tally 模块。另外,不同的pam版本,设置可能有所不同,具体使用方法,可以参照相关模块的使用规则。
在#%PAM-1.0的下面,即第二行,添加内容,一定要写在前面,如果写在后面,虽然用户被锁定,但是只要用户输入正确的密码,还是可以登录的!
操作:
[root@ecs ~]# vim /etc/pam.d/sshd
#%PAM-1.0
## add by xxxxxxx for security
auth required pam_tally2.so deny=10 unlock_time=300 even_deny_root root_unlock_time=300
auth required pam_sepermit.so
auth substack password-auth
auth include postlogin
# Used with polkit to reauthorize users in remote sessions
-auth optional pam_reauthorize.so prepare
account required pam_nologin.so
account include password-auth
password include password-auth
# pam_selinux.so close should be the first session rule
session required pam_selinux.so close
session required pam_loginuid.so
# pam_selinux.so open should only be followed by sessions to be executed in the user context
session required pam_selinux.so open env_params
session required pam_namespace.so
session optional pam_keyinit.so force revoke
session include password-auth
session include postlogin
# Used with polkit to reauthorize users in remote sessions
-session optional pam_reauthorize.so prepare
参数解释:
- even_deny_root 表示限制root用户;
- deny 表示显示所有的非root用户连续登录密码错误的最大次数,超过锁定用户;
- unlock_time 表示设定用户锁定的时间,锁定时间后解锁,单位秒;
- root_unlock_time 表示root用户锁定的时间,锁定时间后解锁,单位秒;
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)