设为首页 加入收藏

TOP

Linux iptables自定义链
2023-07-23 13:30:26 】 浏览:15
Tags:Linux iptables

iptables自定义链

target相关概念

target可以是一个动作,也可以是一个自定义链。

  • 当target为一个动作时,表示报文按照指定的动作处理

  • 当target为自定义链时,表示报文由自定义链中的规则处理

自定义链:

  • 用来解决多条规则的情况下,方便我们对不用服务的规则进行管理。

  • 自定义链并不能直接使用,而是需要被默认链引用才能够使用

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

  • 自定义链并不能直接使用,而是需要被默认链引用才能够使用

范例:创建一个叫做IN_WEB的自定义链

[root@CentOS8 ~]# iptables -t filter  -N IN_WEB

[root@CentOS8 ~]# iptables -vL -t filter 
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination

Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination

Chain IN_WEB (0 references)
 pkts bytes target     prot opt in     out     source               destination

说明:

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

在自定义链中配置规则

范例:实现别的主机不能ping通本机

[root@CentOS8 ~]# iptables -t filter  -I IN_WEB -p icmp --icmp-type 8/0 -j REJECT

说明:

因为没有在默认链里面引用自定义规则,所以配置的规则不生效。

引用自定义的规则
[root@CentOS8 ~]# iptables -t filter  -I INPUT -j IN_WEB

说明:

  • 自定义链在哪里创建,应该被哪条默认链引用,取决于实际的工作场景,因为此处示例的规则是匹配入站报文,所以在INPUT链中引用自定义链

  • IN_WEB链的引用计数已经变为1,表示这条自定义链已经被引用了1次,自定义链还可以引用其他的自定义链

修改自定义的链名

"-E"选项可以修改自定义链名

删除自定的链

"-X"选项可以删除自定义链,但是删除自定义链时,需要满足两个条件:

  • 1、自定义链没有被任何默认链引用,即自定义链的引用计数为0。

  • 2、自定义链中没有任何规则,即自定义链为空。

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇操作系统学习笔记4 | CPU管理 && .. 下一篇Shell第一章《变量》

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目