如何安全关闭VPS的22端口?关闭后如何确保远程连接不受影响?
| 操作步骤 |
使用工具 |
命令示例 |
注意事项 |
| 1. 检查当前SSH服务状态 |
systemctl |
systemctl status sshd |
确认服务正在运行 |
| 2. 修改SSH配置文件 |
nano/vim |
nano /etc/ssh/sshdconfig |
备份原配置文件 |
| 3. 禁用22端口 |
防火墙工具 |
ufw deny 22 或 firewall-cmd –zone=public –remove-port=22/tcp |
确保有其他访问方式 |
| 4. 重启SSH服务 |
systemctl |
systemctl restart sshd |
测试新端口连接 |
| 5. 验证端口状态 |
netstat/ss |
netstat -tuln |
确认22端口已关闭 |
VPS端口22关闭操作指南
为什么要关闭22端口?
SSH默认使用的22端口是黑客攻击的主要目标之一。通过关闭或修改默认端口,可以显著提高VPS的安全性。但需注意,关闭前必须确保有其他访问方式。
详细操作步骤
1. 检查当前SSH服务状态
在关闭端口前,先确认SSH服务是否正在运行:
systemctl status sshd
2. 修改SSH配置文件
使用文本编辑器打开配置文件:
nano /etc/ssh/sshdconfig
找到
Port 22行,修改为其他端口号(如2222),或直接注释掉该行以禁用SSH。
3. 配置防火墙规则
根据使用的防火墙工具执行相应命令:
UFW防火墙:
ufw deny 22
Firewalld防火墙:
firewall-cmd --zone=public --remove-port=22/tcp --permanent
4. 重启SSH服务
使配置生效:
systemctl restart sshd
5. 验证端口状态
检查22端口是否已关闭:
netstat -tuln | grep 22
常见问题解决方案
| 问题 |
原因 |
解决方案 |
| 关闭后无法连接 |
未配置替代端口 |
通过控制台访问VPS,恢复配置 |
| 防火墙规则未生效 |
规则未永久保存 |
添加--permanent参数后重载防火墙 |
| SSH服务启动失败 |
配置文件错误 |
检查/var/log/auth.log日志排查错误 |
| 连接超时 |
新端口未开放 |
确保新端口在防火墙中已放行 |
安全建议
- 修改SSH默认端口后,建议使用密钥认证替代密码登录
- 定期检查
/var/log/auth.log文件中的异常登录尝试
- 考虑配置fail2ban等工具防止暴力破解
发表评论