1.禁用默认账户adm、lp、mail、games、ftp,删除特权halt、shutdown
禁用:
[root@localhost ~]# usermod -L adm
[root@localhost ~]# usermod -L lp
[root@localhost ~]# usermod -L mail
[root@localhost ~]# usermod -L games
[root@localhost ~]# usermod -L ftp
删除:
[root@localhost ~]# userdel -r halt
[root@localhost ~]# userdel shutdown
查看:
[root@localhost ~]# cat /etc/passwd
2、密码长度至少8位,配置密码复杂度–大小写字母+数字+特殊字符
[root@localhost ~]# vim /etc/pam.d/system-auth
在对应位置 添加 如下内容:见图
minlen=8 ucredit=-1 lcredit=-1 dcredit=-1 ocredit=-1
3、登陆失败三次锁定一分钟,超时连接五分钟自动退出
3.1锁定通过tty终端登录的用户
编辑/etc/pam.d/login文件,在第一行下即#%PAM-1.0的下面添加:
auth required pam_tally2.so deny=3 unlock_time=180 even_deny_root root_unlock_time=30 per_user reset
说明:
deny 设置普通用户和root用户连续错误登录的最大次数,超过最大次数,则锁定该用户
unlock_time 设定普通用户锁定后,多长时间后解锁,此处我设置为180秒
even_deny_root 限制root用户
root_unlock_time 设定root用户锁定后,多长时间后解锁,此处我设置为30秒
per_user reset 解锁时间到了以后,清除用户锁定状态
3.2锁定通过ssh协议登录的用户
编辑/etc/pam.d/sshd文件,在第一行下即#%PAM-1.0的下面添加:
auth required pam_tally2.so deny=3 unlock_time=180 even_deny_root root_unlock_time=30 per_user reset
4、超时连接五分钟自动退出
vim /etc/ssh/sshd_config
在配置中找到
#ClientAliveInterval 0#ClientAliveCountMax 3
修改为
ClientAliveInterval 30
ClientAliveCountMax 3
ClientAliveInterval 指定了服务器端向客户端发送消息的间隔,默认 0 不发送消息。
ClientAliveInterval 30 服务器端每 30 秒发送一次消息。
ClientAliveCountMax 服务器端发送消息后客户端没有响应的次数达到一定值,就自动断开。
重启 sshd
重启 sshd 使配置生效。
service sshd restart
设置ssh超时断连
vim /etc/profile
在
HOSTNAME
HISTIZE
后追加timeout超时时间
MOUT=300;300表示超过300秒无操作即断开连接。
5、关闭不必要的端口
查看已经开放的端口:
firewall-cmd --list-ports
只开了必要的
6、关闭telnet服务
删除(卸载)telnet-server 包,命令如下:
rpm -e telnet-server --nodeps
7、强制90天更改密码,提前7天提醒
8、Tsl1.0/1.1启用 应该关闭
处理:
配置nginx禁用TSLv1.0、TSLv1.1
nginx中删 TSLv1.0、TSLv1.1的配置 ,修改如下图:
9、端口探测问题
只开了必要的端口,查询端口状态即可
10、路径探测问题
都是必要的路径内容,没问题
11、未实施内容安全策略(CSP),
解决如下: