1 编辑sshd配置,修改默认的端口
vi /etc/ssh/sshd_config
#添加新的端口
port 62222
ps:先添加新的端口,用新端口能远程登录后再注销22端口,防止修改有问题,导致22端口也不能远程登录
2 重启sshd
/etc/init.d/sshd restart
或
service sshd restart或
systemctl restart sshd.service
3 更新防火墙规则
3.1 修改防火墙规则
如果Linux系统启用了防火墙,则还需更新防火墙规则以允许新的SSH端口通过。否则,无法通过新的端口进行SSH连接。
如果您使用的是iptables防火墙,可以使用以下命令允许新的SSH端口通过:
sudo iptables -A INPUT -p tcp --dport <new_port> -j ACCEPT
或vi /etc/sysconfig/iptables
# 添加新的端口,添加此端口号至防火墙,允许端口号通过防火墙
-A INPUT -m state --state NEW -m tcp -p tcp --dport 62222 -j ACCEPT
或
firewall-cmd --zone=pulic --add-port=62222/tcp --permanent
firewall-cmd --reload
如果您使用的是ufw防火墙,可以使用以下命令允许新的SSH端口通过:
sudo ufw allow <new_port>/tcp
3.2 重启防火墙
service iptables restart
4 测试
ssh <username>@<hostname> -p <new_port>
其中,<username>
是您在目标系统上的用户名,<hostname>
是目标系统的主机名或IP地址,<new_port>
是新SSH端口号
5 禁止22端口登录
把相关的内容屏蔽就可以了,需重启sshd和防火墙
即注释掉: port 22
和注释掉:-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
6 其他
注:
把新的Port口告诉SELinux
semanage port -a -t ssh_port_t -p tcp 62222