
公司Linux服务器(尤其是MySQL数据库服务器)出于安全管控,明确禁止直连22端口,要求所有SSH登录必须使用自定义端口;但22端口又不能修改或关闭,需保留给堡垒机、安全审计等核心服务使用。

一边是安全策略的硬性要求,一边是运维登录的实际需求,此时SSH多端口配置就成了最优解,既保留22端口供堡垒机等专用,又新增自定义端口供运维人员正常登录,兼顾安全与效率,无需妥协。
一、先明确核心需求
在动手前,先理清3个关键前提,避免做无用功:
补充说明:为什么不直接修改22端口?因为公司安全策略中,22端口通常会绑定堡垒机的审计、管控规则,修改后会导致堡垒机无法正常对接,触发安全告警,甚至影响整个服务器集群的安全管控。
二、SSH多端口配置全流程
SSH服务本身支持多端口监听,只需在配置文件中添加多个Port指令,再配置防火墙放行新端口,最后重启服务即可,全程不影响原有22端口的正常使用。
1. 备份SSH配置文件
修改配置前,一定要先备份原配置文件,防止配置错误导致SSH连接失效,无法远程登录服务器(血的教训,新手必看)。
执行备份命令(所有发行版通用):
cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
备份完成后,即使配置出错,也能通过备份文件恢复。
2. 编辑SSH配置文件,添加多端口
打开SSH核心配置文件sshd_config,执行编辑命令,例如在CentOS、RHEL、openEuler上使用vim:
vim /etc/ssh/sshd_config在配置文件中找到Port 22这一行(默认存在,若被注释则删除前面的#)

然后在其下方添加自定义端口,格式为Port 自定义端口,示例如下(新增2222端口,可根据需求替换):
# 保留原有22端口(供堡垒机使用,不可删除)
Port 22
# 新增自定义SSH端口(供运维登录,可添加多个)
Port 2222
注意事项:

3. 重启SSH服务,生效配置
所有配置完成后,重启SSH服务,使多端口监听生效(不同发行版命令略有差异):

注意事项:

处理后再重启sshd服务后正常

4. 测试连接,确认可用
配置完成后,一定要测试新端口的连接,避免后续无法登录:
[root@c7 ~]# ssh 192.168.56.102
The authenticity of host '192.168.56.102 (192.168.56.102)' can't be established.
ECDSA key fingerprint is SHA256:NkGBgO5NgJGsw3bLUCVpwZ6lz7+eWTQMzm/2KsQnNPs.
ECDSA key fingerprint is MD5:95:ca:10:fb:cd:ec:eb:14:2d:30:19:ab:45:75:8d:01.
Are you sure you want to continue connecting (yes/no)? ye^C
[root@c7 ~]# ssh 192.168.56.102 -p 2222
The authenticity of host '[192.168.56.102]:2222 ([192.168.56.102]:2222)' can't be established.
ECDSA key fingerprint is SHA256:NkGBgO5NgJGsw3bLUCVpwZ6lz7+eWTQMzm/2KsQnNPs.
ECDSA key fingerprint is MD5:95:ca:10:fb:cd:ec:eb:14:2d:30:19:ab:45:75:8d:01.
Are you sure you want to continue connecting (yes/no)? 
三、 总结
企业Linux MySQL服务器的SSH多端口配置,核心是不改动原有22端口,新增自定义端口,既满足公司安全策略对22端口的管控要求,又能保障运维人员正常远程登录,兼顾安全与效率。
整个配置流程并不复杂,核心步骤就是备份→编辑配置→放行端口→处理安全模块→重启测试
最后提醒:MySQL服务器作为核心数据存储节点,除了配置多端口,还需配合公司安全策略,做好密钥登录、IP限制、日志审计等加固措施,全方位保障服务器和数据安全。
如果操作过程中遇到其他异常,欢迎在评论区留言,一起交流解决~