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