iptables 规则控制

利用注释控制 iptables 规则,可以使得管理 iptables 规则变得非常简单高效。通过检索 iptables 规则内的注释内容,可以方便地列出与移除一组 iptables 规则。

何谓“利用注释控制 iptables”

iptables 提供了注释功能,可以在添加规则的同时对添加的规则进行注释。如图,列出的 iptables 规则中,在 /* */ 中的即为注释。

iptables 规则示例

通过检索 iptables 规则中的注释,可以实现以下的功能:

  • 列出所有的注释
  • 对于给定的注释内容,列出所有匹配的规则
  • 对于给定的注释内容,删除所有匹配的规则

下面针对各个功能分别进行说明:

注释的添加

注释的添加通过 -m comment --comment [注释内容] 来完成。以下是一条示例语句:

上面的语句创建了一条拒绝 HTTPS 传入连接的 iptables 规则,并注释为 reject-https

注释的内容不建议使用空格。因为 bash 使用空格来分隔命令与参数。

列出所有注释

上面的命令会列出所有的注释,以上图之内容举例,会输出:

以下的命令也会输出相同的内容,但是因为速度太慢,因此不推荐:

列出所有匹配注释内容的规则

其中,$comment 是注释内容。以上图为例,有如下输出:

删除所有匹配注释内容的规则

其中,$comment 是注释内容。若 $comment 取 catboy-web,则该命令会删除所有匹配 catboy-web 注释的规则。

阅读剩余
THE END