监控 iptables 状态

监控 iptables 状态

有没有人有好的解决方案来检查 iptables 以确保应用了适当的规则(并且服务正在运行)?我正在使用 Zenoss 来监控我的环境。

此外,我想要检查的链中的一些规则会阻止来自特定网络的流量,而由于我的 Zenoss 监视器位于受信任的网络中,因此仅进行端口监视会产生误报。理想情况下,我需要一个可以读取和解释 iptables 进程的解决方案,并且在链中的确切规则可能发生变化时为环境提供一定的灵活性。

谢谢

答案1

编写一个脚本,将规则转储到文件(iptables -Liptables-save),然后在该文件中查找相应的规则。

请注意,您可以将输出限制为仅一个表。您还可以获取结果文件的哈希值来检测偏差,而无需使用杂乱的 grep 或正则表达式。

答案2

将已知的良好输出以只读文件的形式保存在某处。

每天运行一个 cron 作业,通过电子邮件向您发送 iptables -L 输出和已保存输出的任何非空差异。

答案3

我使用 Webmin (http://www.webmin.com/) 用于通过 GUI 检查 iptables。您可以直接通过 webmin 监视很多内容,包括 iptables 中当前应用了哪些规则。此外,您可以相对轻松地添加新规则。

如果您的意思是监控哪些端口由于当前正在运行的 iptables 规则而打开和关闭,您可以设置一个 Nagios 框来查询特定端口以查看服务是否在打开的端口上响应。

相关内容