售前咨询400-838-0503

云服务器Linux系统如何修改SSH端口?

发布:2025-04-27 04:34

云服务器Linux系统SSH端口修改完全指南

2023年10月15日 技术专家

在云服务器运维管理中,修改默认SSH端口是增强系统安全性的重要措施。本文将详细介绍在Linux系统中修改SSH端口的完整流程,包括操作步骤、注意事项以及常见问题解决方案。

为什么要修改SSH端口?

默认SSH端口22是黑客攻击的主要目标。通过修改为非常用端口,可以:

  • 减少自动化扫描攻击
  • 降低暴力破解风险
  • 提高服务器整体安全性

修改SSH端口的完整步骤

第一步:检查当前SSH配置

sudo nano /etc/ssh/sshd_config

查找"Port 22"配置行,确认当前使用的端口号。

第二步:选择新端口号

建议选择1024-65535之间的端口,避免使用知名服务端口。常用选择范围:

  • 2222-2299
  • 50000-51000
  • 60000-65000

第三步:修改SSH配置文件

sudo nano /etc/ssh/sshd_config

找到"#Port 22"行,去掉注释并修改为:

Port 22222  # 示例端口号

建议保留原端口22作为备份,新增一行指定新端口。

第四步:防火墙配置

根据不同的防火墙工具进行配置:

1. 使用iptables

sudo iptables -A INPUT -p tcp --dport 22222 -j ACCEPT
sudo service iptables save

2. 使用firewalld(CentOS/RHEL)

sudo firewall-cmd --permanent --add-port=22222/tcp
sudo firewall-cmd --reload

3. 使用ufw(Ubuntu)

sudo ufw allow 22222/tcp

第五步:重启SSH服务

sudo systemctl restart sshd

或根据系统版本使用:

sudo service ssh restart

第六步:测试新端口连接

保持现有SSH会话不关闭,新开终端测试:

ssh -p 22222 username@server_ip

确认连接成功后,再关闭22端口的配置。

常见问题解决方案

Q1: 修改后无法连接服务器怎么办?

A: 可通过云服务商的控制台使用VNC登录检查:

  1. 确认sshd服务正在运行
  2. 检查防火墙规则是否正确
  3. 验证配置文件语法是否正确

Q2: 如何检查端口是否开放?

A: 使用以下命令测试:

telnet your_server_ip 22222
# 或
nc -zv your_server_ip 22222

Q3: SELinux导致的问题如何解决?

A: 对于使用SELinux的系统,需要额外执行:

sudo semanage port -a -t ssh_port_t -p tcp 22222

安全增强建议

  • 结合密钥认证禁用密码登录
  • 配置fail2ban防止暴力破解
  • 定期审计SSH访问日志
  • 考虑使用端口敲门(knockd)技术

通过修改SSH默认端口,可以显著提高云服务器的安全性。建议在修改前做好测试和备份,确保有替代的访问方式,避免被锁在服务器外。定期检查SSH日志,及时发现和阻止可疑访问。

按文档操作后还是不行,把机器编号、出问题的时间点和现象截图一起提工单,能少来回一轮。

提交工单