基于centos7版本测试
注意:修改任何配置文件,为保障安全请先备份,命令: cp -a +配置文件路径 +存放位置路径
1.密码长度与有效期
位置:vi /etc/login.defs
修改:
PASS_MAX_DAYS 90 注:密码有效期
PASS_MIN_DAYS 2 注:修改密码最短期限
PASS_MIN_LEN 8 注:密码最短长度
PASS_WARN_AGE 30 注:密码过期提醒
2.密码复杂度
位置:vi /etc/pam.d/system-auth
修改:
将这行注释 password requisite pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type=
并在其下面新增1行 password requisite pam_pwquality.so try_first_pass minlen=8 difok=5 dcredit=-1 lcredit=-1 ucredit=-1 ocredit=-1 retry=1 authtok_type=
如何要设定root也要履行该规则,需要添加enforce_for_root
例如:password requisite pam_pwquality.so try_first_pass minlen=8 difok=5 dcredit=-1 lcredit=-1 ucredit=-1 ocredit=-1 retry=1 enforce_for_root authtok_type=
解释:
minlen=8 最小长度8位
difok=5 新旧密码最少5个字符不同
dcredit=-1 最少1个数字
lcredit=-1 最少1个小写字符
ucredit=-1 最少1个大写字符
ocredit=-1 最少1个特殊字符
retry=1 1次错误后返回错误信息
type=XXX 此选项用来修改缺省的密码提示文本
3.新口令不能与近期相同
位置:vi /etc/pam.d/system-auth
修改:
在password sufficient pam_unix.so sha512 shadow nullok try_first_pass use_authtok
所在行的后面添加remember=5
解释:
remeber=5 记住近期5个密码,改密码不能与近期5个有相同的。
4.会话超时
位置:vi /etc/profile
修改:
在文件的末尾添加 export TMOUT=600
解释:
export TMOUT=600 10分钟超时
5.登录失败锁定
位置:vi /etc/pam.d/system-auth
修改:
在# User changes will be destroyed the next time authconfig is run.
下面添加auth required pam_tally2.so deny=5 unlock_time=600 even_deny_root root_unlock_time=1800
解释:
deny=5 5次登录失败
unlock_time=1800 锁定30分钟
6.SSH配置加固
位置:vi /etc/ssh/sshd_config
修改:
(1)禁止空密码登录
将#PermitEmptyPasswords no参数的注释符号去掉,改成
PermitEmptyPasswords no
(2)关闭ssh的tcp转发
将#AllowTcpForwarding yes参数改成
AllowTcpForwarding no
(3)关闭S/KEY(质疑-应答)认证方式
将#ChallengeResponseAuthentication yes参数,改成
ChallengeResponseAuthentication no
(4)关闭基于GSSAPI 的用户认证
将GSSAPIAuthentication yes参数,改成
GSSAPIAuthentication no
重启ssh服务:
systemctl restart sshd.service
7.重用名root
位置:vi /etc/passwd 把里面的root用户修改为想要设定的用户名。保存:wq
位置:vi /etc/shadow 把里面的root用户修改为想要设定的用户名。强制保存:wq!
重启:
重启服务器,使用修改过的用户名登录。
通过查询Id 当前用户 如果UID是0,就修改成功,否则就是未成功。
注意:
如果重启长时间处于运行的服务器可能会导致系统崩溃。
修改root用户名后,会导致登录系统出现10秒左右的延迟。
8.查询是否存在特权账户与空口令
awk -F: '$3==0 {print $1}' /etc/passwd 查询是否存在特权账户
awk -F: 'length($2)==0 {print $1}' /etc/shadow 查询是否存在空口令
修改:
如果存在特权账户,删除除root以外的任何账户。
如果存在空口令,为该用户设定密码。
9.删除多余用户
userdel 用户名
10.设定禁止root远程登录
位置:vi /etc/ssh/sshd_config
修改:
PermitRootLogin no
11.日志上传服务器
位置:vi /etc/rsyslog.conf
修改:
*.info;mail.none;news.none;authpriv.none;cron.none /var/log/messages 找到这行添加下面的内容
*.* @@172.16.x.xx:514
*.* @172.16.x.xx:514
注:
@@表示TCP流量,@表示UDP流量。
12.防火墙
systemctl start firewalld 开启防火墙
systemctl enable firewalld 自启动
firewall-cmd --per --add-port=80/tcp 开启80端口
firwall-cmd --reload 重载防火墙
firewall-cmd --list-all 查看防火墙端口
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/133464.html