linux防火墙iptables详细教程

2020-01-30 12:26:26王振洲
2.1 框架图
-->PREROUTING-->[ROUTE]-->FORWARD-->POSTROUTING-->
 mangle     |     mangle     ^ mangle
   nat       |     filter     | nat
           |               |
           |               |
           v               |
         INPUT           OUTPUT
           | mangle         ^ mangle
           | filter         | nat
           v ------>local------->| filter
2.2 链和表



     filter:   顾名思义,用于过滤的时候
     nat:     顾名思义,用于做 NAT 的时候
           NAT:Network Address Translator

     INPUT:     位于 filter 表,匹配目的 IP 是本机的数据包
     FORWARD:   位于 filter 表,匹配穿过本机的数据包,
     PREROUTING: 位于 nat 表,用于修改目的地址(DNAT)
     POSTROUTING:位于 nat 表,用于修改源地址 (SNAT)

3.1 iptables 语法概述
iptables [-t 要操作的表]
     <操作命令>
     [要操作的链]
     [规则号码]
     [匹配条件]
     [-j 匹配到以后的动作]
3.2 命令概述
操作命令(-A、-I、-D、-R、-P、-F)
查看命令(-[vnx]L)
3.2.1 -A
-A <链名>
 APPEND,追加一条规则(放到最后)

例如:
 iptables -t filter -A INPUT -j DROP

 在 filter 表的 INPUT 链里追加一条规则(作为最后一条规则)
 匹配所有访问本机 IP 的数据包,匹配到的丢弃
3.2.2 -I
-I <链名> [规则号码]
 INSERT,插入一条规则

例如: