ebtables_包过滤工具

2019-04-26  本文已影响0人  古佛青灯度流年
命令为:  ebtables  -L  查看全部规则

ebtables的使用指南:

一、过滤时机

要了解过滤时机,首先得了解网络数据包进入网卡后,在系统中的转换流程,见下图:
流转图:


image.png

从上图可以看到数据包从进入到离开系统,要经过PreRoute,Input,Forward,Output,PostRoute这五个阶段。每个阶段中包括了一些节点,每个节点就是一个过滤时机。当数据包行进到某个节点时,系统就是检测对应节点的过滤规则并进行过滤。从图中还可以发现,对于每个阶段,ebtables的过滤时机都比iptables要早。

二、ebtables配置

ebtables的配置分为表、链和规则三级。

## Ebtables使用规则如下:
ebtables [-t table] -[ADI] chain rule-specification [match-extensions] [watcher-extensions]

-t table :一般为FORWARD链。

-ADI:A添加到现有链的末尾;D删除规则链(必须指明规则链号);I插入新的规则链(必须指明规则链号)。

-P:规则表的默认规则的设置。可以DROP,ACCEPT,RETURN。

-F:对所有的规则表的规则链清空。

-L:指明规则表。可加参数,--Lc,--Ln

-p:指明使用的协议类型,ipv4,arp等可选(使用时必选)详情见/etc/ethertypes

--ip-proto:IP包的类型,1为ICMP包,6为TCP包,17为UDP包,在/etc/protocols下有详细说明

--ip-src:IP包的源地址

--ip-dst:IP包的目的地址

--ip-sport:IP包的源端口

--ip-dport:IP包的目的端口

-i:指明从那片网卡进入

-o:指明从那片网卡出去

三、ebtables基本命令

有了上面的简单介绍,再熟悉一些基本命令就可以使用了。

ebtables -L
ebtables -L –Lc , 查看各rule的匹配次数以及字节数
ebtables -N <chain_name>
ebtables -X <chain_name>
ebtables -A <chain_name> [ rules ]
[rules]有几种
-s 源MAC -d 目标MAC -i 入接口 -o 出接口

命令示例:

ebtables -P FORWARD ACCEPT 

ebtables -P INPUT ACCEPT

ebtables -P OUTPUT ACCEPT

ebtables -F 

ebtables -A FORWARD -p ipv4 -i eth0/eth1 --ip-proto (6/17) --ip-dst(目的IP)  --ip-dport(目的端口) -j DROP

ebtables -A FPRWARD -p ipv4 -i eth0/eth1 --ip-proto (7/17) --ip-src(源IP) --ip-sport(源端口) -j DROP

上一篇 下一篇

猜你喜欢

热点阅读