首页 > 代码库 > iptables总结_01

iptables总结_01

一、3表5链

    3表:Filter、NAT、Mangle

    5链:INPUT、OUTPUT、FORWARD、PREROUTING、POSTROUTING

    

    Filter表:INPUT、OUTPUT、FORWARD

    NAT表:PREROUTING、POSTROUTING、OUTPUT

    Mangle(破坏者):早期仅有PREROUTING及OUTPUT链,从kernel2.4.18之后加入INPUT及FORWARD链


二、iptables语法

    1、规则的查看与清除

        iptables [-t table] [-L] [-nv]

        -t :后接table,比如nat或filter,默认为filter

        -L :列出table的规则

        -n :不进行IP与HOSTNAME反查

        -v :列出更多信息


    2、列出完整防火墙规则

        iptables-save [-t table]

    3、清除规则

        iptables [-t table] [-FXZ]

        -F :清除所有的已制定的规则

        -Z :清除掉所有自定义的tables

        -X :将所有的chain的计数与流量统计都归零


    4、定义默认的策略(policy)

        iptables [-t nat] -p [INPUT,OUTPUT,FORWARD] [ACCEPT,DROP]

    5、针对IP、网络及接口设备的设置

        iptables [-AI 链名] [-io 网络接口] [-p 协议] [-s 来源IP/网络] [-d 目标IP/网络] 

                 -j [ACCEPT|DROP|REJECT|LOG]

        -A :新增一条规则

        -I ;插入一条规则

        -i :数据包进入的网络接口,如eth0,lo等。需与INPUT链结合

        -o :数据包出去的网络接口,需与OUTPUT链结合

        -p :协议

    6、针对端口的设置

        iptables [-AI 链] [-io 接口] [-p tcp,udp] [-s 来源IP/网络] [--sport 端口范围]

                 [-d 目标IP/网络] [--dport 端口范围] -j [ACCEPT|DROP|REJECT|LOG]

    7、iptables外挂模块:mac与state

        iptables -A INPUT [-m state] [--state 状态]

        -m :iptables的外挂模块

            state :状态模块

            mac :网卡硬件地址

                --mac-source :来源主机mac

        --state :一些数据包的状态

            INVALID :无效数据包

            ESTABLISHED :已经连接成功的连接状态

            NEW :新建立连接的数据包状态

            RELATED :数据包是与主机发送出去的数据包有关

    8、针对ICMP数据包规则设置

        iptables -A INPUT [-p icmp] [--icmp-type 类型] -j ACCEPT

    9、规则保存

        /etc/init.d/iptables save

    10、IPV4的内核管理功能:/proc/sys/net/ipv4/*

        1)/proc/sys/net/ipv4/tcp_syncookies(阻挡SYN Flooding)

            echo "1" > /proc/sys/net/ipv4/tcp_syncookies

        2)/proc/sys/net/ipv4/icmp_echo_ignore_broadcasts

            echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts

        3)/proc/sys/net/ipv4/conf/网络接口/*

            rp_filter:逆向路径过滤

            log_martians:记录不合法的IP来源

         注:可以修改系统设置,即/etc/sysctl.conf

            vi /etc/sysctl.conf

                ……

            

            sysctl -P

        


本文出自 “行走中成长,点滴记录…” 博客,请务必保留此出处http://poseidon2011.blog.51cto.com/7553825/1886813

iptables总结_01