起因
由于防火墙设置不当,导致服务器失联无法登录,记录一下救援过程
办法
在ovh后台点击Reboot in rescue mode
进入救援模式,稍后会发邮件让你设置密码登录服务器,
登录服务器后,执行以下命令
mount /dev/sdb1 /mnt/
cd /mnt
chroot /mnt
查询使用什么防火墙
which iptables
如果系统使用的是 iptables,让我们来修复它:
- 首先,让我们查看当前的 iptables 规则:
iptables -L
- 直接使用 iptables 命令设置基本规则:
清除所有现有规则
iptables -F
iptables -X
iptables -Z
设置默认策略
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
允许已建立的连接
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
允许本地回环接口
iptables -A INPUT -i lo -j ACCEPT
允许 SSH 连接(端口 22)根据实际情况修改
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
如果您需要添加其他端口的访问权限(比如网站的 80/443 端口),可以这样添加:
# 允许 HTTP
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
# 允许 HTTPS
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
- 保存规则:
# 对于 Debian/Ubuntu 系统
iptables-save > /etc/iptables/rules.v4
# 如果上面的目录不存在,可以尝试
mkdir -p /etc/iptables
iptables-save > /etc/iptables/rules.v4
- 确保规则在重启后仍然生效,检查是否安装了 iptables-persistent:
apt-get install iptables-persistent
- 完成后,退出 chroot 环境并重启:
exit
umount /mnt
reboot
验证规则
nft list ruleset
回到ovh官网后台,点击reboot my vps
重启服务器,稍后登录恢复正常
完结