你如何testingiptables规则,以防止远程locking和检查匹配?

当我学习iptables的时候,我犯了一些错误,把自己locking了。

你用什么方法来testing规则而不locking自己?

我正在使用Ubuntu的服务器12.04 LTS


以下所有的答案是有帮助的。 最后我使用了一些选项。 以防万一,这也有助于让IPMI访问您的远程服务器! 但理想情况下,在复制环境本地testing规则并首先进行testing。 在这方面,Vagrant有助于快速testing设置。

iptables-apply是专门为此devise的。 它适用你的规则,然后提示你确认。 如果你不肯定的话,它会把它推回去。 因此,如果您将系统刷新或locking,则会回滚。

你用什么方法来testing规则而不locking自己?

在键入之前考虑您input内容的效果。

把我锁在外面

在您开始远程更改可能会将您locking的事物之前,请在列表的开头插入与您的连接匹配的接受规则。 如果你不重置定时器的话,可以使用一个看门狗脚本来重新启动所有的规则。 您可以使用文件监视循环来执行此操作,并在处理事务时运行touch命令来重置时间戳。 只要记住要在最终确定规则时closures它。 非常简单的格式是:

 sleep $((10*60)) && iptables-restore /path/to/working/script 

您可以在input链上不设置默认的DROP规则来设置iptables。 如果你创build一个规则,然后把这个命令:

$ iptables -nvL

然后你看到数据包的数量,看看你是否有来自你的主机的命中。

另外一个select是制作一个运行脚本的crontab。 在这个脚本中,你可以写

$ iptables -F

用这个命令你可以刷新你的IPTABLES-config