iptable初识1
时间:2011-04-08 来源:fhefh
默认防火墙规则
拒绝与禁止一个数据包
IP防火墙的数据包传输
在IP防火墙中,有三个内建的过滤规则链被使用。所有到达接口的数据包都按照输入规则链被过滤。如果数据包被接受,它会被送到路由模块。路由功能决定数据包是被送到本地还是转发到另一个出站接口。
如果被转发,数据包会由转发规则链进行第二次过滤。如果数据包被接受,它会被送到输出规则链。
本地产生的出站数据包和将被转发的数据包都要经过输出规则链。如果数据包被接受,它会被送出接口。
回环路径包括两个规则链,如图示。每一个回环数据包在出回环接口之前需要通过输出规则链,在那里它会被送到回环的输入接口,然后输入规则链被应用。
Netfilter数据包传输
在Netfilter(iptables)中,使用内建的INPUT、OUTPUT和FORWARD过滤规则链。入站数据包都需要经过路由功能,由其决定将数据包送到本地主机的输入规则链还是转发规则链。
如果目的地址为本地的数据包被INPUT规则链的规则所接受,数据包就会在本地传送。如果目的地址为外地的数据包被FORWARD规则链的规则所接受,数据包就会被送出相应的接口。
经本地处理后的外出数据包被送到OUTPUT规则链。如果数据包被接受了,就会被送出相应的接口。于是,每个数据包被过滤一次(出了回环数据包被过滤两次)。
Iptables的基本语法
用Netfilter建立防火墙就是使用iptables防火墙管理命令。Iptables命令执行你所建立的防火墙策略管理防火墙的行为。Netfilter防火墙有三个表:filter、NAT和mangle。有了这些表,防火墙就可以由规则链来建立,规则链中的每一项都是一个iptables命令。
在默认的filter表中包括一个用于处理输入或即将进入防火墙的数据的规则链,一个用于处理输出或即将离开防火墙的数据的规则链,一个用于处理转发或通过防火墙被送出的数据的规则链,和由其他用户命名并配置的规则链,通常称作用户自定义规则链。NAT和mangel表有专门的规则链。现在filter表是用来实现基本的防火墙的默认表,NAT表用来提供NAT和相关的功能以及mangle表在数据包被防火墙修改时使用就已经足够了。
Iptables命令的基本语法以iptables本书开始,后面跟着一个或多个选项、一个规则链、一个匹配标准级和一个目标或部署。命令的设计很大程度上取决于要执行的操作。你可以参考这个语法:
Iptables <option> <chain> <matching criteria> <target>
Iptables的特点
Iptables在处理不同种类的数据包时使用不同的规则表。这些规则表由功能上相互独立的表模块来实现。三个主要的模块是filter表、nat表和对数据包进行特殊处理的mangel表。这三个表模块都有自己相应的扩展模块,它们会在首次应用时被动态载入,除非被直接编译进内核。
Filter表是默认的表。其他的表是通过命令行选项定义的。Filter表的基本特点包括:
(未完,待续。。。)