• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • 一些網絡中流傳的 iptables 腳本的誤區

    發表于:2007-05-26來源:作者:點擊數: 標簽:
    經??吹揭恍?網絡 中流傳的iptables腳本在開頭的位置大多是如下內容 #!/bin/sh # modprobeipt_MASQUERADE modprobeip_conntrack_ftp modprobeip_nat_ftp iptables-F iptables-tnat-F iptables-X iptables-tnat-X iptables-PINPUTDROP 摘自http://bbs.chinau
    經??吹揭恍?STRONG>網絡中流傳的 iptables 腳本在開頭的位置大多是如下內容


    #!/bin/sh
    #
    modprobe ipt_MASQUERADE
    modprobe ip_conntrack_ftp
    modprobe  ip_nat_ftp
    iptables -F
    iptables -t nat -F
    iptables -X
    iptables -t nat -X
    iptables -P INPUT DROP

    摘自 http://bbs.chinaunix.net/viewthread.php?tid=712506

    有的是這樣的

     # 2.0 載入模組
    PATH=/sbin:/bin:/usr/sbin:/usr/bin
    export PATH EXTIF INIF INNET
    modprobe ip_tables > /dev/null 2>&1
    modprobe iptable_nat > /dev/null 2>&1
    modprobe ip_nat_ftp > /dev/null 2>&1
    modprobe ip_nat_irc > /dev/null 2>&1
    modprobe ip_conntrack > /dev/null 2>&1
    modprobe ip_conntrack_ftp > /dev/null 2>&1
    modprobe ip_conntrack_irc > /dev/null 2>&1 

    摘自 http://linux.vbird.org/linux_server/0250simple_firewall.php#simple_firewall_script

    網上流傳的東西未必就都是正確的,針對上面一些誤區,我來做一下詳細說明
    (上面第二個出自鳥哥的腳本,我們只討論技術,沒有得罪的意思 ^_^)



    1、modprobe ip_tables
    當 iptables 對 filter、nat、mangle 任意一個表進行操作的時候,會自動加載 ip_tables 模塊
    另外,iptable_filter、iptable_nat、iptable_mangle 模塊也會自動加載,情形例如

    # lsmod
    Module                  Size  Used by    Not tainted
    iptable_mangle          2136   0  (autoclean) (unused)
    iptable_filter          1708   0  (autoclean) (unused)
    ip_tables              12832   2  [iptable_mangle iptable_filter]
    8139too                13704   1
    mii                     2544   0  [8139too]
    reiserfs              183376   2  (autoclean)
    raid1                  13068   1  (autoclean)
    md                     44480   2  [raid1]

    [color=red]因此,腳本里不用寫 modprobe ip_tables[/color]



    2、modprobe ip_conntrack
    ip_conntrack 是狀態檢測機制,state 模塊要用到
    當 iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT 時,ip_conntrack 自動加載,例如

    # lsmod
    Module                  Size  Used by    Not tainted
    ipt_state                536   1  (autoclean)
    ip_conntrack           25096   0  (autoclean) [ipt_state]
    iptable_filter          1708   1  (autoclean)
    ip_tables              12832   2  [ipt_state iptable_filter]
    8139too                13704   1
    mii                     2544   0  [8139too]
    reiserfs              183376   2  (autoclean)
    raid1                  13068   1  (autoclean)
    md                     44480   2  [raid1]

    另外,modprobe ip_conntrack_ftp 時也會自動加載 ip_conntrack

    [color=red]因此,腳本里不用寫 modprobe ip_conntrack[/color]



    3、modprobe ip_conntrack_ftp
    ip_conntrack_ftp 是本機做 FTP 時用的
    ip_nat_ftp 是通過本機的 FTP 需要用到的(若你的系統不需要路由轉發,沒必要用這個)
    當 modprobe ip_nat_ftp 時,系統自動會加載 ip_conntrack_ftp 模塊,例如

    # lsmod
    Module                  Size  Used by    Not tainted
    ip_nat_ftp              2736   0  (unused)
    iptable_nat            18040   4  [ip_nat_ftp]
    ip_tables              12544  12  [iptable_filter iptable_nat]
    ip_conntrack_ftp        3856   1
    ip_conntrack           20268   3  [ip_nat_ftp iptable_nat ip_conntrack_ftp]
    8139too                13704   1
    mii                     2544   0  [8139too]
    reiserfs              183376   2  (autoclean)
    raid1                  13068   1  (autoclean)
    md                     44480   2  [raid1]

    [color=red]因此,當需要用到 ip_nat_ftp 時,腳本里不用寫 modprbe ip_conntrack 和 modprobe ip_conntrack_ftp[/color]



    4、iptables -P OUTPUT DROP
    除非你明白 filter 中 OUTPUT 鏈的作用,除非你想限制 Linux 本機上網

    [color=red]否則,不要 iptables -P OUTPUT DROP![/color]



    5、先設置規則,還是先設置默認策略
    不少腳本都是這樣寫的

    iptables -F xxx
    iptables -X
    iptables -P INPUT DROP
    modprobe ip_nat_ftp

    之后才是具體規則
    iptables -P INPUT DROP 是什么意思?
    設置默認規則為 DROP,也就是說如果數據包沒有被鏈中規則匹配,則默認按默認規則處理
    試想,假如你在遠程調試一個腳本,當前 filter 表的 INPUT 鏈默認規則是 DROP,iptables -F 后意味著什么?
    因此,我建議大家
    [color=red]
    先設置默認規則為 ACCEPT
    然后添加具體鏈的規則
    最后設置默認規則為 DROP
    若用基于 RedHat(CentOS) 的發行版,可以用 service iptables stop 來卸載內核中與 iptables 和 netfilter 有關的東西
    [/color]

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>