一叶知秋.

业精于勤,荒于嬉;行成于思,毁于随。

8.iptables自定义链

为什么要自定义链?

当默认链中的规则越来越多时,比如INPUT链中100条规则,里面有针对内网的,有针对外网访问的,有针对nginx服务的,有针对sshd服务的;此时,有一个需求,要修改nginx服务的相关规则,这就需要从到到尾在这100条规则内找出哪些是nginx的,这显然十分浪费时间,也不便于运维人员的管理。

在iptables中,可以自定义链,通过自定义链即可分开进行规则管理。

示例:自定义一个链,将所有针对tcp 80端口的入站规则都写入这条自定义链中,当想要修改针对web服务的入站规则时,直接修改这条自定义链就好了。
自定义链并不能直接使用,而是需要被默认链引用才能够使用。

使用-N选项可以创建自定义链

可以看到这条自定义链的引用计数为0,也就是说,这条自定义链还没有被任何默认链所引用,即使WEB链中配置了规则,也不会生效。

在自定义链中添加规则,添加方式和默认链的添加方式一毛一样!

这些规则应该去匹配入站的报文,所有我们应该用INPUT链去引用它。

验证:

16主机:

修改自定义链名:-E选项

删除自定义链:-X选项

但是删除自定义链,需要满足:
1.自定义链的引用计数为0
2.自定义链为空

posted @ 2020-09-18 21:35  ccku  阅读(274)  评论(0编辑  收藏  举报