• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            isware

            IPTABLES語法入門

            一:IPTABLES語法入門:
            iptables 是建立在 netfilter 架構(gòu)基礎(chǔ)上的一個(gè)包過濾管理工具
            用戶通過 /sbin/iptables 命令來管理 iptables,和 route 命令相同,iptables 命令的效果在重新啟動以后就不再有效。
            可以使用 /etc/rc.d/init.d/iptables save 將當(dāng)前 iptables 規(guī)則寫到 /etc/sysconfig/iptables 文件中,那么每次開機(jī)時(shí)/etc/rc.d/init.d/iptables start 命令會使 /etc/sysconfig/iptables 中的規(guī)則生效。
            iptables 可以操縱3 個(gè)表:filter 表,nat 表,mangle 表。NAT 和一般的 mangle 用 -t 參數(shù)指定要操作哪個(gè)表。filter 是默認(rèn)的表,如果沒有 -t 參數(shù),就默認(rèn)對 filter 表操作。
            Rule 規(guī)則:過濾規(guī)則,端口轉(zhuǎn)發(fā)規(guī)則等,例如:禁止任何機(jī)器 ping 我們的服務(wù)器,可以在服務(wù)器上設(shè)置一條規(guī)則:
            bash> iptables -A INPUT -s ! 127.0.0.1 -p icmp -j DROP
            從 –s 開始即是一條規(guī)則,-j 前面是規(guī)則的條件,-j 開始是規(guī)則的行為(目的)。整條命令解釋為,在filter 表中的 INPUT 規(guī)則鏈中插入一條規(guī)則,所有源地址不為 127.0.0.1 的 icmp 包都被拋棄。
            Chain 規(guī)則鏈:由一系列規(guī)則組成,每個(gè)包順序經(jīng)過 chain 中的每一條規(guī)則。chain 又分為系統(tǒng) chain
            和用戶創(chuàng)建的 chain。下面先敘述系統(tǒng) chain。
            filter 表的系統(tǒng) chain: INPUT,F(xiàn)ORWAD,OUTPUT
            nat 表的系統(tǒng) chain: PREROUTING,POSTROUTING,OUTPUT
            mangle 表的系統(tǒng) chain: PREROUTING,OUTPUT
            每條系統(tǒng) chain 在確定的位置被檢查。比如在包過濾中,所有的目的地址為本地的包,則會進(jìn)入INPUT 規(guī)則鏈,而從本地出去的包會進(jìn)入 OUTPUT 規(guī)則鏈。
            所有的 table 和 chain 開機(jī)時(shí)都為空,設(shè)置 iptables 的方法就是在合適的 table 和系統(tǒng) chain 中添加相應(yīng)的規(guī)則。
            用戶可以創(chuàng)建新的chain。用戶 chain 只有作為某個(gè)系統(tǒng) chain 的目的才有作用。比如創(chuàng)建一個(gè)名叫AAA 的規(guī)則鏈,想讓 icmp 包通過它的檢驗(yàn)。
            bash> iptables -A INPUT -p icmp -j AAA
            上述命令將用戶創(chuàng)建的規(guī)則鏈 AAA 作為了一條系統(tǒng) chain(INPUT)中的規(guī)則 “-p icmp” 的目的。
            對每條 chain 有一個(gè)默認(rèn)策略,也就是對包的默認(rèn)的行為。可以設(shè)為拋棄(DROP)或接受(ACCEPT)。系統(tǒng)啟動的時(shí)候所有的默認(rèn)策略都是 ACCEPT。當(dāng)包通過了 chain 所有的規(guī)則(不符合所有的規(guī)則的條件)的時(shí)候,系統(tǒng)按默認(rèn)策略處理這個(gè)包。
            iptables 命令
            � 針對表的操作
            查看:iptables -t table_name -L
            刷新:
            1、清除所有的規(guī)則和用戶創(chuàng)建的chain
            iptables -t table_name -F
            2、清除所有的記數(shù)(符合規(guī)則的包的數(shù)目)
            iptables -t table_name -Z
            � 針對鏈的操作(注意以下都省略了 -t table_name)
            查看:iptables -L chain_name
            刷新:iptables -F chain_name
            清除記數(shù):iptables -Z chain_name
            創(chuàng)建新鏈:iptables -N chain_name
            刪除鏈:iptables -X chain_name
            重命名:iptables -E chain_old_name chain_new_name
            設(shè)置策略:iptables -P chain_name policy
            � 針對規(guī)則的操作
            添加一條規(guī)則:iptables -A chain_name rule-spec
            插入一條規(guī)則:iptables -I chain_name 規(guī)則號 new_rule_spec (插入后的規(guī)則號為命令中指定的
            號,原來存在的規(guī)則號順延)。
            刪除一條規(guī)則:有兩種方法刪除規(guī)則:通過指定規(guī)則號刪除一條規(guī)則或通過指定規(guī)則的內(nèi)容來刪除一
            條規(guī)則。每個(gè)規(guī)則鏈中的規(guī)則號從1 開始記數(shù)。
            iptables -D chain_name 規(guī)則號
            iptables -D chain_name 規(guī)則內(nèi)容
            修改一條規(guī)則:iptables -R chain_name 規(guī)則號 new_rule_spec
            ----------------------------------------------------------------------------------
            二,IPTABLES舉例:
            1,鏈的基本操作:
            清除預(yù)設(shè)表filter中所有規(guī)則鏈中的規(guī)則:
            iptables -F
            清除預(yù)設(shè)表filter中使用者自定鏈中的規(guī)則:
            iptables -X
            將指定鏈中所有規(guī)則的包字節(jié)計(jì)數(shù)器清零:
            iptables -Z
            --------------------------------
            2,設(shè)置鏈的默認(rèn)規(guī)則:
            首先允許所有包的規(guī)則:
            iptables -P INPUT   ACCEPT
            iptables -P OUTPUT ACCEPT
            iptables -P FORWARD ACCEPT
            首先禁止所有包的規(guī)則:
            iptables -P INPUT DROP
            iptables -P OUTPUT DROP
            iptables -P FORWARD DROP
            --------------------------------
            3,列出表/鏈中的規(guī)則:
            列出表/鏈中的所有規(guī)則
            iptables -L
            若顯示較慢可以使用
            iptables -L -n
            --------------------------------
            4,向鏈中添加規(guī)則:
            如:
            iptables -A INPUT -i lo -j ACCEPT
            iptables -A OUTPUT -o lo -j ACCEPT
            iptables -A INPUT -i eth0 -j ACCEPT
            iptables -A OUTPUT -o eth0 -j ACCEPT
            iptables -A FORWARD -i eth0 -j ACCEPT
            iptables -A FORWARD -o eth0 -j ACCEPT
            注:由于本地進(jìn)程不會經(jīng)過FORWARD鏈,因此lo環(huán)回接口只在INPUT和OUTPUT兩個(gè)鏈上工作。
            --------------------------------
            5,使用用戶自定義鏈:
            iptables -N brus
            iptables -A brus -s 0/0 -d 0/0 -p icmp -j DROP
            iptables -A INPUT -s 0/0 -d 0/0 -j brus
            此例子的意思是:
            第一句建立了一個(gè)叫做brus的用戶自定義鏈;
            第二句用-A參數(shù)添加了一條用戶自定義的封堵規(guī)則;
            第三句向默認(rèn)的INPUT鏈添加一條新規(guī)則,使所有的包都由brus自定義鏈處理。
            ---------------------------------
            6,設(shè)置默認(rèn)的匹配規(guī)則:
            匹配指定的協(xié)議:
            iptables -A INPUT -p tcp
            匹配指定協(xié)議之外的所有協(xié)議:
            iptables -A INPUT -p ! tcp
            -------------
            指定地址匹配:
            指定匹配的主機(jī)
            iptables -A INPUT -s 192.168.1.1
            指定匹配的網(wǎng)絡(luò)
            iptables -A INPUT -s 192.168.1.0/24
            指定匹配主機(jī)之外的地址
            iptables -A FORWARD -s ! 192.168.0.1
            指定匹配網(wǎng)絡(luò)之外的網(wǎng)絡(luò)
            iptables -A FORWARD -s ! 192.168.0.0/24
            -----------------
            指定網(wǎng)絡(luò)接口匹配:
            指定單一的網(wǎng)絡(luò)接口匹配
            iptables -A INPUT -i eth0
            iptables -A FORWARD -o eth0
            指定同類型的網(wǎng)絡(luò)接口
            iptables -A FORWARD -o eth+
            -------------
            指定端口匹配:
            指定單一端口匹配
            iptables -A INPUT -p tcp --sport www
            iptables -A INPUT -p tcp --sport 80
            iptables -A INPUT -p udp --sport 53
            iptables -A INPUT -p udp --dport 53
            匹配指定端口以外的端口
            iptables -A INPUT -p tcp --sport ! 22
            匹配指定的端口范圍
            iptables -A INPUT -p tcp --sport 22:80
            匹配ICMP端口和ICMP類型
            iptables -A INPUT -p icmp --icmp-type 8

            posted on 2011-06-01 13:52 艾斯維亞 閱讀(330) 評論(0)  編輯 收藏 引用


            只有注冊用戶登錄后才能發(fā)表評論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            久久国产成人亚洲精品影院| 久久99国产精一区二区三区| 久久精品18| 青青草国产97免久久费观看| 久久精品国产久精国产一老狼| 色偷偷偷久久伊人大杳蕉| 精品久久国产一区二区三区香蕉| 2020久久精品亚洲热综合一本| 国产美女久久精品香蕉69| 亚洲国产精品成人久久蜜臀 | 色综合久久久久综合99| 久久久久亚洲av无码专区喷水| 精品无码人妻久久久久久| 精品综合久久久久久888蜜芽| 久久人人爽人人爽AV片| 国产精品对白刺激久久久| 国内精品久久国产| 久久人人爽人人澡人人高潮AV | 午夜精品久久久久9999高清| 99久久99久久| 亚洲国产精品无码久久久秋霞2| 久久婷婷五月综合成人D啪 | 久久天天躁夜夜躁狠狠| 欧美大战日韩91综合一区婷婷久久青草 | 久久人人爽人人爽人人爽| 久久人妻少妇嫩草AV无码蜜桃| 国产成人99久久亚洲综合精品| 2021精品国产综合久久| 久久国产欧美日韩精品| 久久久久久毛片免费播放| 人妻久久久一区二区三区| 亚洲国产精品久久久天堂| 精品综合久久久久久97| 亚洲va久久久噜噜噜久久天堂 | 少妇久久久久久久久久| 日本强好片久久久久久AAA| 午夜精品久久久久久毛片| 亚洲午夜无码久久久久| 97久久久久人妻精品专区| 久久久久久久尹人综合网亚洲| 91久久精品国产成人久久|