Chinaunix首页 | 论坛 | 博客

分类: 网络与安全

2014-04-06 12:41:39

原文地址:如何使用iptables(三) 作者:GFree_Wind

四、重要的iptables命令和 操作

iptables脚本的每一行不仅可以是跳转,也可以加上一些命令,并把规则追加到链上,用于匹配定义好的特征包。也有一些选项用 于清除chain来让你重新开始设置chain。下面的表中是常用选项。

iptables 命令开关 描述
-t <-table-> 如果不知道表名,那么默认使用filter表。如上文所述,内建表包括filter、nat、和mangle。
-j 当包匹配当前规则时,跳转到指定链
-A 向一个chain追加 规则
-F 清空。删除所选择表所有规则
-p 匹配协议。类型包括 icmp,tcp,upd和all
-s 匹配源ip地址
-d 匹配目的ip地址
-i 匹 配收到包的网卡
-i 匹配发包的网卡

下面是一个示例:

iptables –A INPUT –s 0/0 –i eth0 –d 192.168.1.1 –p TCP –j ACCEPT

这条命令的意思是允许防火墙接受目的地址是192.168.1.1,源地址是任意地址,网卡eth0所受到的 TCP包。0/0表示任意IP。

下表是常用的TCP和UDP 匹配规则

switch 描述
-p tcp --sport TCP源端口。可以为一个值也可以是一个范围。start_port:end_port
-p tcp --dport TCP目的端口。可以为一个值也可以是一个范围。
-p tcp -- syn 用 于识别一个新的TCP连接请求。! – sync意思是不是一个新的连接请求。
-p udp -- sport UDP源端口。可以为单值,亦可以是一个范围。
-p udp – dport UDP 目的端口。可以为单值,也可以为一个范围值。

下面是一个例子

iptables –A FORWARD –s 0/0 –i eth0 –d 192.168.1.158 –o eth1 –p TCP -- sport 1024:65535 – dport 80 –j ACCEPT

iptables被配置为允许防火墙转发由eth0收到的来自于任何 IP地址,且目的地址为192.168.1.158,出口为eth1的数据包。源端口地址范围要求为1024到65535。


翻译:gfree.wind@gmail.com

阅读(1241) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~