目录
一、加固策略
1.1、设置复杂密码
服务器设置大写、小写、特殊字符、数字组成的12-16位的复杂密码 ,也可使用密码生成器自动生成复杂密码。
可以参考密码生成器 生成随机密码 - 密码生成器 (bmcx.com) 给出的密码。
echo "root:wgr1TDs2Mnx0XuAv" | chpasswd
1.2、 设置密码策略
修改文件/etc/login.defs添加密码策略
vim /et/login.defs
#密码最长有效期
PASS_MAX_DAYS 90
#密码修改之间最小的天数
PASS_MIN_DAYS 10
#密码长度
PASS_MIN_LEN 8
#口令失效前多少天开始通知用户修改密码
PASS_WARN_AGE 7
1.3、 对密码强度进行设置
vim /etc/pam.d/password-auth
添加
password requisite pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type= difok=1 minlen=8 ucredit=-1 lcredit=-1 dcredit=-1
-
difok= 定义新密码中必须要有几个字符和旧密码不同
-
minlen=新密码的最小长度
-
ucredit= 新密码中可以包含的大写字母的最大数目。-1 至少一个
-
lcredit=新密码中可以包含的小写字母的最大数
-
dcredit=定新密码中可以包含的数字的最大数目
注:这个密码强度的设定只对"普通用户"有限制作用,root用户无论修改自己的密码还是修改普通用户的时候,不符合强度设置依然可以设置成功
1.4、对用户的登录次数进行限制
vim /etc/pam.d/sshd
添加
auth required pam_tally2.so deny=3 unlock_time=150 even_deny_root root_unlock_time300
设置成功后,多次登录失败的用户将被锁定
# 查看被锁定的用户
pam_tally2
#将被锁定的用户解锁
pam_tally2 --reset -u username
1.5、禁止root用户远程登录
vim /etc/ssh/sshd_config
修改
# PermitRootLogin no
1.6、 更改ssh端口 (可选)
vim /etc/ssh/sshd_config ,更改Port或追加Port
注:生效要重启sshd进程。
1.7、关闭没必要的端口
服务器为了应用部署方便都选用了完全安装,导致很多没有使用的服务也在启动状态。
本环节需要卸载服务器上不必要的服务,禁用多余的端口。
1.8、设置账户保存历史命令条数,超时时间
设置成功后,五分钟没有指令动作服务器会超时自动断开与客户端的链接。
vim /etc/profile
修改
#历史命令数量方便回溯
HISTSIZE=1000
TMOUT=600