iptable范例

1、语法:

成都创新互联长期为上千客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为会同企业提供专业的网站建设、成都网站制作会同网站改版等技术服务。拥有十余年丰富建站经验和众多成功案例,为您定制开发。

   Usage:

   iptables -t [table] -[AD] chain rule-specification[options]

2、基本的处理行为:ACCEPT(接受)、DROP(丢弃)、REJECT(拒绝)

3、匹配指定协议外的所有协议

    iptables -A INPUT -p ! tcp

   匹配主机源IP

    iptables -A INPUT -s 10.0.0.14

    iptables -A INPUT -s ! 10.0.0.14

   匹配网段

   iptables -A INPUT -s 10.0.0.0/24

   iptables -A INPUT -s ! 10.0.0.0/24

   匹配单一端口

   iptables -A INPUT -p tcp --sport 53

   iptables -A INPUT -p udp --dport 53

4、封端口:

    iptables -t filter -A INPUT -p tcp --dport 80 -j DROP            

    (--sports 源端口)

   (2280 端口范围)

    iptables -t filter -A INPUT -p tcp -m multiport  --dport 222,323 -j ACCEPT

   (-m multiport列元素 222,323)

5、 封ip :

    iptables -t filter -A    INPUT   -ieth0 -s 10.0.0.105 -j DROP 

    -s源地址

    -i 进  -o 出指定网络接口

    

6、禁ping

    iptables -t filter -A INPUT -p icmp --icmp-type 8   ! -s 10.10.70.0/24 -j DROP     

    (!非)
 iptables -t filter -I INPUT  2 -p icmp --icmp-type any  -s 10.10.70.0/24 -j DROP            (any 所有类型)

    ( -I 2 指定位置)

7、匹配网络状态:

    iptables -A INPUT  -m state --state ESTABLISHED,RELATED -j ACCEPT
    iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

    -m state --state:允许关联的状态包通过

     NEW:已经或将启动新的连接
    ESTABLISHED:已建立的连接
    RELATED:正在启动新连接
    INVALID:非法或无法识别的

8、本机地址:172.16.14.1,允许172.16.0.0/16网络ping本机,但限制每分钟请求不能超过20,每次并发

  不能超过6个.

  iptables -A INPUT -s 172.16.0.0/16 -d 172.16.14.1 -p icmp --icmp-type 8 -m limit --limit 20/min --limit-burst 6 -j ACCEPT

   iptables -A OUTPUT -s 172.16.14.1 -d 172.16.0.0/16 -p icmp --icmp-type 0 -j ACCEPT

    -m limit

    --limit n/{second/minute/hour}:指定时间内的请求速率"n"为速率,后面为时间分别为:秒、分、时   

    --limit-burst [n]:在同一时间内允许通过的请求"n"为数字,不指定默认为5

9、自定义链处理syn***
    iptables -N syn-flood
    iptables -A INPUT -i eth0 -syn -j syn-flood
    iptables -A syn-flood -m limit -limit 5000/s -limit-burst 200 -j RETURN
    iptables -A syn-flood -j DROP

10、网关服务器配置端口地址转换

    iptables -t nat -A PREROUTING -d192.168.1.9 -p tcp --dport 80 -j DNAT --to-destination10.10.70.60:9000

12、配置网关:

   server 1 :eht0 10.10.70.60 eth2 192.168.1.10

    server 2 : eth0 192.168.1.9

    开启路由转发:

    sed -n "s/net.ipv4.ip_forward = 0/net.ipv4.ip_forward = 1/g" /etc/sysctl.conf

    sysctl  -p    

    清除配置:

    iptables -F
    iptables -Z
    iptables -X

    开启FORWORD  :  iptables -P    FORWARD ACCEPT

    查看是否有配置内核模块:lsmod | grep nat,如无,请加载。

   配置:

     iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth0-j SNAT --to-source 10.10.60.10

      或:

     iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j MASQUERADE  伪装

13、映射多个外网IP上网
iptables -t nat -A POSTROUTING -s 10.0.0.0/255.255.240.0 -o eth0 -j SNAT --to-source 124.42.60.11-124.42.60.16
iptables -t nat -A POSTROUTING -s 172.16.1.0/255.255.255.0 -o eth0 -j SNAT --to-source 124.42.60.103-124.42.60.106


当前文章:iptable范例
文章网址:http://scyanting.com/article/gpgppo.html