我不小心禁止了到远程服务器的 SSH 连接...下一步是什么?

tom*_*Guy 61 firewall ssh iptables connection

再说一遍,我们都会犯错,而我刚刚犯了一个。

简史:当我注意到一些奇怪的行为时,我正在租用的 VPS (Debian) 上做一些事情。使用该netstat命令,我看到了一个通过 SSH 的非授权连接。我不知道该怎么办,所以我决定使用iptables以下命令关闭他的连接:

iptables -A INPUT -p tcp --dport ssh -s IP -j DROP
Run Code Online (Sandbox Code Playgroud)

但我累了,我写了

iptables -A INPUT -p tcp --dport ssh -j DROP
Run Code Online (Sandbox Code Playgroud)

我把自己(和其他人)踢出去了......

我该如何解决?

g49*_*491 60

有几种选择:

  • 看看他们是否有对服务器的 IPMI/“KVM”/控制台访问权限,让您可以像控制物理键盘一样控制它。
  • 如果他们不提供,请查看您是否可以将 VM 引导到恢复 linux CD(某些提供商提供),然后以这种方式更正防火墙规则,然后像正常一样引导它。
  • 如果您没有控制台访问权限,在启动恢复或将卷附加到另一个 VM 之前(如在亚马逊案例中,信用 user3550767 的回答),如果您还没有保存规则,您可以先尝试 Ankh2054 的重启回答(很可能是这种情况,因为你在有机会挽救之前就把自己踢出去了)。使用控制面板或要求某人使用非正常重置/关机(也称为硬重启或硬关机)重启它,以防 init 脚本在正常重启时自动保存规则(信用 @jfalcon,@joshudson)。

    权衡这样做的缺点(例如,在重启期间写入的数据可能会丢失,并且在启动时可能需要进行文件系统检查,因此启动时间更长,尽管该延迟可能小于启动恢复)。

  • 也就是说,如果它在亚马逊/谷歌空间中,他可以对驱动器进行快照并从另一个虚拟机安装它以进行修复。 (4认同)

Ank*_*054 47

如果您还没有保存 IPtables 规则,您可以在 VPS 上重新启动服务器(如果可用),该规则应该会消失。

  • @jfalcon 这也是为什么在关机时自动保存是个坏主意......让保存成为系统管理员有意识的决定,而不是由系统盲目执行。 (22认同)
  • @jfalcon:这就是为什么你可以要求他们拔掉虚拟插头。 (3认同)

小智 30

这就是人工服务热线的用途。致电服务提供商,让他们的一位接线员为您删除规则。