目的
如何改变Linux云服务器的SSH端口
SSH(Secure shell)是一种加密网络协议,用于安全地连接到远程服务器,它在主机和客户机之间以加密的形式传输数据。
SSH的默认TCP端口是22,如果将这个默认端口改为另一个,可以防止自动机器人和恶意用户被残忍地强行进入服务器。
在更改默认的SSH端口号之前,可以使用下面的命令检查当前的端口。
# netstat -ntlp | grep ssh
本指南将描述在Linux服务器的防火墙中更改SSH端口和添加新的自定义SSH端口的步骤。
更改SSH端口
1. 打开SSH守护进程主配置文件/etc/ssh/sshd_config
# vi /etc/ssh/sshd_config
2. 现在搜索行以Port 22开始,并在行前添加标签(#)。然后在下面添加一条新的Port line,其中包含自定义,如图所示。
注意:将示例端口号2223替换为需要设置的自定义端口。
3. 保存并退出。
在服务器防火墙中添加新的自定义SSH端口
1. 使用UFW (Ubuntu/Debian)设置防火墙。
# ufw allow 2223/tcp
2. 添加IPTables并验证(所有Linux操作系统)。
# iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 2223 -j ACCEPT
# iptables -L
3. 在FirewallD (CentOS 7/8)中添加。
# firewall-cmd --permanent --zone=public --add-port=2223/tcp
# firewall-cmd --reload
注意:示例端口号2223替换为需要设置的自定义端口号。
重启SSH进程使修改生效
运行以下命令重新启动SSH daemon,并验证端口是否已更改。
# systemctl restart sshd
# netstat -ntlp | grep ssh