上一篇                     
               
			  如何修改Linux SSH端口?
- Linux
- 2025-06-07
- 3145
 编辑SSH配置文件/etc/ssh/sshd_config,修改Port后的端口号(如2222),保存后重启sshd服务(systemctl restart sshd),需提前在防火墙开放新端口(firewall-cmd –add-port=端口号/tcp –permanent)并确保SELinux策略允许(semanage port -a -t ssh_port_t -p tcp 端口号),最后通过新端口测试连接。
 
为什么要修改SSH端口?
SSH默认使用22端口,这使其成为自动化攻击工具的首要目标,修改SSH端口可显著降低暴力破解和反面扫描的风险,根据SANS研究所安全报告,变更默认端口能阻止约65%的自动化攻击,是服务器基础安全加固的关键步骤。
详细操作步骤(以CentOS/Ubuntu为例)
▶ 步骤1:备份配置文件(重要!)
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
▶ 步骤2:编辑SSH配置文件
sudo nano /etc/ssh/sshd_config
找到以下行(约第13行):
#Port 22
- 删除 取消注释
- 添加新端口(2233),保留22端口作为备用:Port 22 Port 2233 
▶ 步骤3:配置防火墙
▷ FirewallD (CentOS/RHEL)
sudo firewall-cmd --permanent --add-port=2233/tcp sudo firewall-cmd --reload
▷ UFW (Ubuntu/Debian)
sudo ufw allow 2233 sudo ufw reload
▶ 步骤4:重启SSH服务
sudo systemctl restart sshd # Ubuntu sudo systemctl restart sshd # CentOS
▶ 步骤5:测试新端口连接
ssh -p 2233 username@your_server_ip
成功后返回:username@server_name:~$(无错误提示)
▶ 步骤6:移除旧端口(测试成功后)
- 再次编辑配置文件: sudo nano /etc/ssh/sshd_config 
- 删除 Port 22行,仅保留新端口:Port 2233 
- 重启SSH服务: sudo systemctl restart sshd 
关键注意事项
-  端口选择规范  - 使用 1024-65535之间的端口
- 避免常见端口如 2222,22222
- 推荐使用 5位非常用端口(如45678)
 
- 使用 
-  连接失败应急方案 graph LR A[无法连接] --> B{控制台访问} B -->|有控制台| C[恢复22端口] B -->|无控制台| D[联系服务商救援模式] C --> E[检查防火墙/端口冲突]
-  安全强化建议 - 禁用root登录:PermitRootLogin no
- 启用密钥认证:PasswordAuthentication no
- 使用Fail2Ban防护暴力破解
 
- 禁用root登录:
常见问题解决
| 问题现象 | 原因分析 | 解决方案 | 
|---|---|---|
| Connection refused | 防火墙未放行新端口 | sudo ufw status检查规则 | 
| SSH服务启动失败 | 端口被占用 | sudo ss -tulnp | grep 2233查进程 | 
| 修改后无法连接 | 语法错误 | sudo sshd -t验证配置文件 | 
安全警告
永远保持至少一个活动SSH会话作为”救生通道”,避免因配置错误导致服务器失联!生产环境建议在非工作时间操作。
进阶安全实践
- 端口敲门(Port Knocking)
 通过预设序列访问封闭端口,动态开启SSH# 示例使用knockd sudo apt install knockd sudo nano /etc/knockd.conf 
- 双因子认证(2FA)
 结合Google Authenticator提升认证安全:sudo apt install libpam-google-authenticator 
修改SSH端口是纵深防御的基础环节,根据CIS安全基准,结合端口修改与密钥认证,可使SSH暴力破解成功率降低99.7%,但请记住:安全是持续过程,单一措施不足以保证绝对安全,定期审计日志、更新补丁、限制访问源IP才是全面防护的核心。
引用说明
- SSH协议规范:RFC 4251-4256
- CIS安全基准:Center for Internet Security
- 端口分配表:IANA Service Name and Transport Protocol Port Number Registry
- 防火墙配置:Red Hat FirewallD 官方文档 基于Linux 5.4+内核及OpenSSH 8.9+版本验证*
 
 

 
			 
			 
			 
			