共计 1515 个字符,预计需要花费 4 分钟才能阅读完成。
SSH
1、SSH超时自动退出
vi /etc/profile
export TMOUT=60
source /etc/profile
2、SSH验证失败3次断开链接
vi /etc/ssh/sshd_config
MaxAuthTries 3
systemctl restart sshd
密码
1、密码过期时间
密码过期时间有两种方式配置:
方式一:
chage -l user
-m 密码可更改的最小天数。为零时代表任何时候都可以更改密码。
-M 密码保持有效的最大天数 -W 用户密码到期前,提前收到警告信息的天数
-E 帐号到期的日期。过了这天,此帐号将不可用
-d 上一次更改的日期
-i 停滞时期。如果一个密码已过期这些天,那么此帐号将不可用
-I 锁定时间,密码过期后,锁定该账号的天数
-l 例出当前的设置。由非特权用户来确定他们的密码或帐号何时过期
举例:
1、强制用户下次登陆时修改密码(-d 0)并且设置密码最低有效期0和最高有限期90,提前15天发警报提示
chage -d 0 -m 0 -M 90 -W 15 os(linux)
2、将密码期限设为2014年6月3日。另外,修改密码的最短周期为5天,最长周期为90天。密码过期前14天会发送消息提醒用户,过期后帐号会被锁住30天。将密码期限设为2014年6月3日。另外,修改密码的最短周期为5天,最长周期为90天。密码过期前14天会发送消息提醒用户,过期后帐号会被锁住30天。
chage -E 6/30/2014 -m 5 -M 90 -I 30 -W 14 os
方式二(推荐):
vi /etc/login.defs
PASS_MAX_DAYS 90
PASS_MIN_DAYS 2
PASS_MIN_LEN 8
2、密码复杂强度
apt-get install libpam-cracklib(ubuntu)
找到同时有 “password” 和 “pam_cracklib.so” 字段并且附加有 “ucredit=-1 lcredit=-1 dcredit=-3 ocredit=-1” 的那行,它表示密码必须至少包含
[v_notice]
大写字母(ucredit)
小写字母(lcredit)
数字(dcredit)
标点符号(ocredit)
[/v_notice]
Debian、Ubuntu 或 Linux Mint 系统上:
$ sudo vi /etc/pam.d/common-password
password requisite pam_cracklib.so retry=3 minlen=10 difok=3 ucredit=-1 lcredit=-1 dcredit=-3 ocredit=-1
CentOS、Fedora、RHEL 系统上:
$ sudo vi /etc/pam.d/system-auth
password requisite pam_cracklib.so retry=3 difok=3 minlen=10 ucredit=-1 lcredit=-1 dcredit=-3 ocredit=-1
3、密码错误账号锁定
vim /etc/pam.d/password-auth
auth required pam_tally2.so deny=3 unlock_time=300 even_deny_root root_unlock_time=11
注意:
1、必须加到第一行,否则会出现锁定账户后输入正确密码依然可登陆的情况
2、配置到system-auth不生效(我测试时不生效,不知道为什么。。。)
3、even_deny_root 项慎用,该项表示对于root账户该策略同样生效,如果root密码错误3次,则root被锁定,只能进单用户模式恢复了
查看账户失败次数信息:
pam_tally2 -u user
重置失败次数:
pam_tally2 -u user
--reset