一般 SSH 默认端口是 22,不安全。最好修改一下。
修改 /etc/ssh/sshd_config 文件
vi /etc/ssh/sshd_config
找到 #Port 22,去掉前面的 #,并添加一行 Port xxxx (xxxx 为新的 SSH 端口)
可以使用下面命令查看端口是否被占用:
netstat -tnlp # 查看端口
netstat -tnlp |grep ssh # 查看ssh端口
关掉 SELINUX
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
grep SELINUX=disabled /etc/selinux/config
setenforce 0
添加端口到防火墙
firewall-cmd --zone=public --add-port=XXXX/tcp --permanent //XXXX为新的 SSH 端口
如防火墙未运行,需要手动启动:
systemctl start firewalld.service
重启防火墙:
firewall-cmd --reload
确认端口是否添加成功:
firewall-cmd --zone=public --query-port=XXXX/tcp //XXXX为新的 SSH 端口
添加成功会返回 yes,否则返回 no。
删除默认的 22 端口
至此,如无意外,重启 sshd 就可以使用新端口连接。
systemctl restart sshd.service
测试新端口能正常连接,就把 Port 22 从配置文件(/etc/ssh/sshd_config)中删除,或者前面加个 # 号注释掉,然后再重启 sshd。
参考资料
Jevin's Blog - CentOS 7修改SSH端口
jaywcjlove - Centos7中修改ssh端口号的方法
关掉 SELINUX 會影響安全性, 正確方法是允許 SSH 使用其他埠
https://www.phpini.com/linux/centos-7-change-ssh-port-selinux-enable
@huwatex 谢谢。