Chinaunix首页 | 论坛 | 博客
  • 博客访问: 189829
  • 博文数量: 57
  • 博客积分: 1625
  • 博客等级: 上尉
  • 技术积分: 715
  • 用 户 组: 普通用户
  • 注册时间: 2007-07-15 10:55
文章分类
文章存档

2012年(2)

2011年(12)

2010年(15)

2009年(19)

2008年(9)

我的朋友

分类: LINUX

2008-04-02 23:53:57

iptables命令参数非常多,记忆起来比较困难,以下是一些速记规则,从其它帖子上粘过来,备急需时查看。
 
 
iptables
-t
filter:     顾名思义,用于过滤的时候
nat:        顾名思义,用于做 NAT 的时候
-A、-I、-D、-R、-P、-F
       APPEND,追加一条规则
       INSERT,插入一条规则
       DELETE,删除一条规则
       REPLACE,替换一条规则
       POLICY,设置某个链的默认规则
       FLUSH,清空规则
INPUT:      位于 filter 表,匹配目的 IP 是本机的数据包
FORWARD:    位于 filter 表,匹配穿过本机的数据包,
PREROUTING: 位于 nat 表,用于修改目的地址(DNAT)
POSTROUTING:位于 nat 表,用于修改源地址  (SNAT)
-i、-o
        流入、流出接口
        -i ppp0
-s、-d
        来源、目的地址
        -s 192.168.0.1     匹配来自 192.168.0.1 的数据包
        -s 192.168.1.0/24  匹配来自 192.168.1.0/24 网络的数据包
-p
        协议类型
        -p icmp --icmp-type 类型
        -p tcp
--sport、--dport
        来源、目的端口
        --sport 1000       匹配源端口是 1000 的数据包
        --sport 1000:3000  匹配源端口是 1000-3000 的数据包(含1000、3000)
        --sport :3000      匹配源端口是 3000 以下的数据包(含 3000)
        --sport 1000:      匹配源端口是 1000 以上的数据包(含 1000)
-m
state --state NEW、RELATED、ESTABLISHED、INVALID
mac --mac-source xx:xx:xx:xx:xx:xx
limit --limit 50/s
-m multiport --dports 21,22,25,80,110
-j
ACCEPT
DROP
SNAT
DNAT
MASQUERADE
 
典型应用:
iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 80 \
    -j DNAT --to 192.168.1.1
做dnat,内网提供web服务
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 \
    -j SNAT --to 1.1.1.1
做snat,为内网提供上网服务

-L [链名]
    LIST,列出规则
    v:显示详细信息,包括每条规则的匹配包数量和匹配字节数
    x:在 v 的基础上,禁止自动单位换算(K、M)
    n:只显示 IP 地址和端口号码,不显示域名和服务名称
 
所有链名必须大写
       INPUT/OUTPUT/FORWARD/PREROUTING/POSTROUTING
所有表名必须小写
       filter/nat/mangle
所有动作必须大写
       ACCEPT/DROP/SNAT/DNAT/MASQUERADE
所有匹配必须小写
       -s/-d/-m /-p/--sport/--dport
阅读(1001) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~