1.修改sshd_config端口
vi /etc/ssh/sshd_config
#找到#Port 22的位置,添加22和新端口,如下:
Port 22
Port 2345
#wq保存后重启
systemctl restart sshd
2.查看系统SELinux当前的状态
#getenforce
enforcing:强制模式(临时开启)
permissive:宽容模式(临时关闭)
disabled:永久关闭
临时开启、关闭SELinux(大白话:重启后会恢复为系统配置文件中设置的状态)
#临时关闭
setenforce 0
#临时开启
setenforce 1
3.配置firewall
- 启用防火墙、查看防火墙状态
systemctl enable firewalld
systemctl start firewalld
systemctl status firewalld
systemctl-cmd --state
- 查看firewall当前和激活的zone
firewall-cmd --get-default-zone
firewall-cmd --get-active-zones
#显示
public
interfaces:eth0
#如果没有激活,激活public区域,添加所有网卡:
firewall-cmd --set-default-zone=public
firewall-cmd --zone=public --add-interface=eht0 #根据自己服务器,把所有网卡:eth0,eth1,enss33等全部添加
- 为public zone开放2345端口
#防火墙中暴露22端口,防止新端口未生效
firewall-cmd --permanent --zone=public --add-port=22/tcp
firewall-cmd --permanent --zone=public --add-port=2345/tcp
firewall-cmd --reload
#查看暴露的端口
firewall-cmd --permanent --list-port
firewall-cmd --zone=public --list-all #查看所有设置
#推出后尝试新端口连接,连接成功后禁用22端口
ssh -p 2345 root@ip
- 禁用22端口连接
#sshd_config文件中删除22端口
vi /etc/ssh/sshd_config
#Port 22
systemctl restart sshd
#用ss命令检查ssh监听端口,没有22证明成功
ss -tnlp | grep ssh
#防火墙移除22端口
firewall-cmd --permanent --zone=public --remove-port=22/tcp
firewall-cmd --reload
firewall-cmd --permanent --list-port
上述配置已经完毕