云服务器 Linux 如何修改默认的 SSH 端口?

    2025-10-26 22:37:16

    Linux云服务器SSH端口修改完全指南:提升安全性的关键步骤

    在云服务器管理中,SSH端口修改是最基础却至关重要的安全措施之一。本文将详细介绍在Linux系统上修改默认SSH端口的完整流程,包含CentOS、Ubuntu等主流发行版的具体操作方法,以及修改后必须注意的防火墙配置和连接测试等关键环节。

    目录

    为什么要修改SSH端口

    修改前的准备工作

    详细修改步骤

    防火墙配置调整

    测试与验证

    常见问题排查

    为什么要修改SSH端口

    默认SSH端口22是黑客攻击的首要目标。通过修改默认端口可以:

    减少自动化扫描攻击

    降低暴力破解风险

    提高服务器整体安全性

    满足某些合规性要求

    修改前的准备工作

    在进行任何SSH配置修改前,必须做好以下准备:

    确保有其他可用的连接方式(如控制台访问)

    在本地保留当前SSH会话不关闭

    备份SSH配置文件:sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak

    检查SELinux状态(如启用需要额外配置)

    详细修改步骤

    1. 编辑SSH配置文件

    sudo vi /etc/ssh/sshd_config

    找到#Port 22这行,取消注释并将22改为新端口号(如23456):

    Port 23456

    2. 重启SSH服务

    根据发行版选择相应命令:

    CentOS/RHEL: sudo systemctl restart sshd

    Ubuntu/Debian: sudo service ssh restart

    防火墙配置调整

    必须同步更新防火墙规则:

    # 查看当前防火墙状态

    sudo firewall-cmd --state

    # 添加新端口

    sudo firewall-cmd --permanent --add-port=23456/tcp

    # 移除旧端口

    sudo firewall-cmd --permanent --remove-port=22/tcp

    # 重新加载防火墙

    sudo firewall-cmd --reload

    测试与验证

    在关闭当前SSH会话前,务必进行测试:

    新开终端窗口尝试使用新端口连接:

    ssh username@server_ip -p 23456

    确认连接成功后,再关闭原会话

    使用netstat验证端口监听状态:

    sudo netstat -tulnp | grep sshd

    常见问题排查

    连接被拒绝

    检查防火墙规则是否生效,确认sshd服务正常运行

    SELinux导致的问题

    执行:sudo semanage port -a -t ssh_port_t -p tcp 23456

    服务启动失败

    检查配置文件语法:sudo sshd -t

    总结

    修改SSH端口是服务器安全加固的基础操作,但需要谨慎执行。本文介绍的完整流程包括配置文件修改、服务重启、防火墙调整和连接测试等关键步骤,可确保修改过程顺利且不影响正常远程管理。建议在修改后配合Fail2Ban等工具进一步增强SSH安全性。