一、不安装多余的软件,能最小化安装就不要安装图形化界面,然后根据需求安装需要的软件。
二、防火墙要启用,如果您的这台服务器对外有服务只要放开服务就好了,就是说白了白名单,切忌一上来第一件事儿就是关闭防火墙,这是一种极不负责任的。
如果需要开通对外某项服务就开通对应的端口或者协议
**需要开通80端口**:
firewall-cmd --zone=public --add-port=80/tcp --permanent
**需要开通对外dns服务**
firewall-cmd --zone=public –add-service=dns --permanent
三、禁止root直接登录,只能用普通用户登录,然后根据需要,如果必须用root 则su root ;这点debian做的比较好,默认安装后就不能让root直接登录
vi /etc/sshd_config
找到PermitRootLogin yes 将yes改为no
修改后
三、增加一个root权限的用户,其实还是平时不用root账户
useradd -g root robert #增加robert的用户属于root组
passwd robert #修改robert密码
vim /etc/sudoers
找到## Allows root to run any commands anywhere下面增加一行如下图所示
退出时需要执行wq!
执行root组命令时,只要在命令前增加sudo即可
四、用户登录IP地址限制,白名单
vi /etc/hosts.allow #白名单文件
输入sshd:192.168.1.254 允许192.168.1.254登录
输入sshd:192.168.1.0/24 允许192.168.1.0/24网段的用户登录
vi /etc/hosts.deny #黑名单文件
输入sshd:all(拒绝所有) #拒绝所有,配置白名单的时候用
也可以输入某个IP或者某个网段
五、不操作自动退出、密码输入错误5次锁定300秒
vi /etc/pam.d/sshd
在#%PAM-1.0下添加一行
auth required pam_tally2.so deny=5 unlock_time=180 even_deny_root root_unlock_time=180
解释:
deny=5 密码输入错误次数达到3次
unlock_time=180 普通账户锁定3分钟(单位是秒)
even_deny_root 代表包含root用户
root_unlock_time=180 root账户锁定3分钟(单位是秒)
命令:pam_tally2查看被锁定的用户
命令:pam_tally2 --reset -u username可以将被锁定的用户解锁
所有针对ssh的配置需要systemctl restart sshd 重启服务生效
systemctl restart sshd 重启服务生效