IPTABLES:通过 SSH 刷新并从头开始 - VPS - CentOS 5.5 x86_64

IPTABLES:通过 SSH 刷新并从头开始 - VPS - CentOS 5.5 x86_64

我在一家托管公司有一台 VPS,因此我可以通过 SSH 远程访问它。我试图刷新所有 iptables 规则并从头开始...问题是,当我输入 # iptables INPUT DROP(因为我想阻止所有传入和白名单)时,PuTTY 会退出,我无法连接。

当我输入该命令时,如何才能做到这一点而不被 CentOS 踢出?

或者有其他方法可以做到。

谢谢

答案1

您需要确保在添加该规则时现有连接保持打开状态。

-A INPUT -i eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i lo -j ACCEPT

然后在此下方添加允许列表,最后在 INPUT 链的末尾添加一行

-A INPUT -j DROP


一个适合你入门的阅读/教程是: 这里

答案2

Iptables 在第一次比赛获胜时才起作用,因此您必须将捕获的所有 DROP 放在列表的末尾。

查看/etc/sysconfig/iptables文件。在 CentOS 系统上,它通常具有基本配置,允许您通过 ssh 进入框,仅此而已 - 这将是一个很好的起点。

答案3

如果您远程工作,我强烈建议您使用像 firehol 这样的工具。

Firehol 是一个 iptables/netfilter 前端。它包含代码来验证您是否没有将自己锁定。您使用该firehol try命令,它将启动一组新规则,然后提示您输入提交。如果您在 30 秒内没有提交,它将假定您破坏了某些东西并恢复到旧规则集。

答案4

编写一个“cron”脚本并添加 iptables 规则以允许您访问,并将其设置为在您刷新命令后 5/10 分钟运行。这样,您将在 5 分钟后再次获得访问权限。

相关内容