Centos⽤户登录失败N次后锁定⽤户禁⽌登陆
针对linux上的⽤户,如果⽤户连续3次登录失败,就锁定该⽤户,⼏分钟后该⽤户再⾃动解锁
Linux有⼀个pam_tally2.so的PAM模块,来限定⽤户的登录失败次数,如果次数达到设置的阈值,则锁定⽤户。
1、修改配置⽂件
# vim /etc/pam.d/login
#%PAM-1.0
auth required pam_tally2.so deny=3 unlock_time=300 even_deny_root root_unlock_time=10 onerr=succeed file=/var/log/tallylog
centos vim命令
auth [user_unknown=ignore success=ok ignoreignore=ignore default=bad] pam_securetty.so
auth include system-auth
account required pam_nologin.so
account include system-auth
password include system-auth
# pam_selinux.so close should be the first session rule
session required pam_selinux.so close
session optional pam_keyinit.so force revoke
session required pam_loginuid.so
session include system-auth
session optional pam_console.so
# pam_selinux.so open should only be followed by sessions to be executed in the user context
session required pam_selinux.so open
各参数解释
even_deny_root 也限制root⽤户;
deny 设置普通⽤户和root⽤户连续错误登陆的最⼤次数,超过最⼤次数,则锁定该⽤户
unlock_time 设定普通⽤户锁定后,多少时间后解锁,单位是秒;
root_unlock_time 设定root⽤户锁定后,多少时间后解锁,单位是秒;
2、限制⽤户从tty登录
在#%PAM-1.0的下⾯,即第⼆⾏,添加内容,⼀定要写在前⾯,如果写在后⾯,虽然⽤户被锁定,但是只要⽤户输⼊正确的密码,还是可以登录的!
# vim /etc/pam.d/login
#%PAM-1.0
auth required pam_tally2.so deny=3 lock_time=300 even_deny_root root_unlock_time=10
3、验证ssh是否加载pam_tally2⾝份验证模块
ldd /usr/bin/passwd | grep libpam
libpam_misc.so.0 => /lib64/libpam_misc.so.0 (0x00007fb74f748000)
libpam.so.0 => /lib64/libpam.so.0 (0x00007fb74eb45000)
如看到有类似的输出,说明该程序使⽤了PAM,没有输出,则没有使⽤。
4、查看root⽤户登录失败次数
[root@bigdata ~]# pam_tally2 --user root
Login Failures Latest failure From
root 18 12/24/20 13:39:28 10.10.76.22
5、解锁指定⽤户
[root@bigdata ~]# pam_tally2 -r -u root
Login Failures Latest failure From
6、Linux中普通⽤户配置sudo权限(带密或免密)
配置步骤如下:
6.1、登陆或切换到root⽤户下;
6.2、添加sudo⽂件的写权限,命令是:chmod u+w /etc/sudoers
6.3、编辑sudoers⽂件:vi /etc/sudoers或者visudo
到这⾏ root ALL=(ALL) ALL,在他下⾯添加xxx ALL=(ALL) ALL (注:这⾥的xxx是你的⽤户名)
你可以根据实际需要在sudoers⽂件中按照下⾯四⾏格式中任意⼀条进⾏添加:
youuser ALL=(ALL) ALL
%youuser ALL=(ALL) ALL
youuser ALL=(ALL) NOPASSWD: ALL
%youuser ALL=(ALL) NOPASSWD: ALL
Defaults:bbders timestamp_timeout=-1,runaspw
第⼀⾏:允许⽤户youuser执⾏sudo命令(需要输⼊密码)。
第⼆⾏:允许⽤户组youuser⾥⾯的⽤户执⾏sudo命令(需要输⼊密码)。
第三⾏:允许⽤户youuser执⾏sudo命令,并且在执⾏的时候不输⼊密码。
第四⾏:允许⽤户组youuser⾥⾯的⽤户执⾏sudo命令,并且在执⾏的时候不输⼊密码。
第五⾏:timestamp_timeout=-1 只需验证⼀次密码,以后系统⾃动记忆,runaspw 需要root密码,如果不加默认是要输⼊普通账户的密码6.4、撤销sudoers⽂件写权限,命令:chmod u-w /etc/sudoers

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。