最近发现我的vps一直被人尝试暴力破解
日志居然达到了4G大小。真是够持之以恒的。
我虽然相信自己的密码够坚挺,不过看着服务器占用有事没事就原地起飞。还是有些烦。
这里记录其中一个比较简单的应对方案,就是修改ssh端口
安全修改默认 SSH 端口的步骤
1. 确保当前的 SSH 会话保持连接
在修改 SSH 配置时,不要关闭当前已连接的 SSH 会话,以便在出现问题时可以直接回滚操作。
2.添加新端口到防火墙规则
在修改 SSH 配置之前,先在防火墙中允许新端口的连接。
以 ufw
为例
sudo ufw allow <新端口号>/tcp
例如,将 SSH 从 22 改为 22022:
sudo ufw allow 22022/tcp
3.修改 SSH 配置文件
编辑 SSH 配置文件:
sudo vi /etc/ssh/sshd_config
找到 Port
参数,并按照以下方式修改:
Port 22 # 可以保留旧端口以测试
Port 22022 # 新端口号
⚠️ 初次修改时,不要直接删除 Port 22
,同时启用多个端口方便测试。
4.重启 SSH 服务
保存文件后,重启 SSH 服务以使更改生效:
sudo systemctl restart sshd
5.测试新端口连接
在新窗口中测试用新端口连接 SSH(不要关闭原 SSH 会话):
ssh -p 22022 your-user@your-server-ip
如果能够成功登录,说明新端口配置正常。
如果失败,检查以下内容:
- 确保防火墙允许新端口。
- 确认配置文件是否保存并正确重启 SSH 服务。
- 确保服务器未被其他网络规则阻止。
6.移除旧端口
确认新端口连接无误后,可以移除旧端口(22)的防火墙规则:
sudo ufw delete allow 22/tcp
并在 SSH 配置文件中删除旧端口:
# Port 22 # 注释或删除旧端口
Port 22022
再次重启 SSH 服务:
sudo systemctl restart sshd
注意事项
- 防火墙规则优先配置 确保防火墙不会阻止你新的 SSH 端口,否则可能会导致失联。
配置错误时的紧急恢复方法 如果修改后失联,可以尝试以下方法:
- 登录 VPS 提供商的控制面板(如阿里云、腾讯云等),使用其提供的“远程终端”或“VNC”工具修复配置。
- 确认
/etc/ssh/sshd_config
文件的正确性。
- 选择安全的非常用端口 选择一个高位端口(1024-65535)且不与常见服务冲突,例如
22022
、55000
等。
总结操作顺序
- 保持原 SSH 会话不关闭。
- 提前配置防火墙允许新端口。
- 修改 SSH 配置文件,启用新端口,同时保留旧端口。
- 重启 SSH 服务并测试新端口连接。
- 确认新端口正常后,禁用旧端口并更新防火墙规则。
评论 (0)