资源描述
RouterOS防火墙与过滤详解(二)
RouterOS IP firewall filter工作原理
下面是三条预先设置好了的chains,他们是不被能删除的:
input – 用于处理进入路由器的数据包,即数据包目标IP地址是到达路由器一个接口的IP地址,经过路由器的数据包不会在input-chains处理。
forward – 用于处理通过路由器的数据包
output – 用于处理源于路由器并从其中一个接口出去的数据包。
当处理一个chain(数据链),策略是从chain列表的顶部从上而下执行的。即先进先出法(First In First Out)如图:
我们通过先进先出法可以理解到,过滤数据时我们可以通过以下的两种原则“先丢弃后接受和先接受后丢弃”:
现在我来看事例中的防火墙规则,我先从input链表开始,这里是对所有访问路由的数据进行过滤和处理:
从input链表中可以看到,我们对进入路由器的数据采用先拒绝非法的数据和连接,并将ICMP数据跳转到自定义的ICMP的链表中过滤。
下面是forward链表一个应用防火墙事例:
forward链表,我们首先拒绝大多数机器狗访问的目标地址,然后跳转到机器狗链表中对相应的域名和IP进行过滤,接下来是对非法数据包、TCP连接数、非单播数据、ICMP协议和常见的病毒等进行过滤。
事例:
下面是禁止任何地址通过TCP/135端口访问到本地路由器,因为是访问本地路由器的数据,这里进入input链表进行操作:
试验:
1、在input中配置一个规则组,通过接受192.168.10.6和192.168.11.10的IP能访问路由器,其他地址禁止访问路由器
2、导入一个防火墙脚本,并禁止ICMP协议通过路由器访问外网。
我们来看看Jump操作在forward链表中的工作过程:
在forward中数据遇到jump规则,会判断数据是否符合定义jump规则,如果满足条件将跳转到指定的链表,如上图的ICMP和virus链表,当在数据进入这些链表执行完后,会返回jump规则所在的forward链表中。
展开阅读全文