1. <var id="fe6gj"></var>

    <rp id="fe6gj"><nav id="fe6gj"></nav></rp>

    <noframes id="fe6gj"><cite id="fe6gj"></cite>

    <ins id="fe6gj"><button id="fe6gj"><p id="fe6gj"></p></button></ins>
    1. <tt id="fe6gj"><i id="fe6gj"><sub id="fe6gj"></sub></i></tt>
        始創于2000年 股票代碼:831685
        咨詢熱線:0371-60135900 注冊有禮 登錄
        • 掛牌上市企業
        • 60秒人工響應
        • 99.99%連通率
        • 7*24h人工
        • 故障100倍補償
        您的位置: 網站首頁 > 幫助中心>文章內容

        iptables常用選項及應用實例操作

        發布時間:  2012/7/28 18:36:39
        iptables表與鏈的關系
        1、filter 包過濾
        INPUT
        FORWARD
        OUTPUT
        2、NAT  地址轉發
        OUTPUT
        PREROUTING
        POSTROUTING
        3、Mangle  修改TTL值等
        INPUT
        FORWARD
        OUTPUT
        PREROUTING
        PSOTROUTING
         
        介紹一下鏈的含義:
        PREROUTING 數據包進入本地,進入路由表之前
        INPUT 通過路由表后,目的地為本機 
        OUTPUT 由本機產生,向外轉發
        FORWARD 通過路由表后,目的地不為本機
        POSTROUTING 通過路由表后,發送至網卡接口之前
         
        優生級:raw>mangle>nat>filter
         
        SNAT源地址轉換 POSTROUTING
        DNAT目標地址轉換PREROUTING
         
        iptables識別數據包四種狀態:
        NEW:當與任何主機通信時發出的第一個數據包的狀態即NEW,一般為發起連接方發送的第一個標志為SYN=1的數據包  注意:NEW是TCP三次握手中的第一次SYN必須等于1
        ESTABLISHED:假設與主機通信時發出的第一個數據包能夠通過防火墻,那么后續的你與該主機之間發送和接收到所有數據包狀態均為ESTABLISHED (SYN不等于1,ACK=1,FIN不等于1)
        RELATED:由一個已經建立的連接所生成的新的連接的狀態即為RELATED,例如FTP服務,訪問FTP服務器時建立的連接是21端口的發送命令的連接,如果要傳輸數據則需要按工作模式不同打開其他端口的連接,那么這個連接就是RELATED狀態 
        INVALID:非法狀態的數據包,也就是不屬于以上三種狀態的數據包,無法實別的狀態比如:SYN=1 FIN=1  又請求又發送結束,根本沒有這種狀態的包
         
         
        iptables基本語法:
         
        1. iptables [-t TABLE] COMMAND CHAIN [createriaj] -j ACTION 
        2.  
        3. -t {raw|mangle|nat|filter},默認filter 
        4.  
        5. COMMAND: 
        6. 規則管理類: 
        7.     -A   增加 
        8.     -I # 插入 
        9.     -D # 刪除 
        10.     -R # 替換   
        11. 鏈接管理類: 
        12.     -F 清空鏈 
        13.     -N new,新建鏈   
        14.     -X  刪除自定義空鏈 
        15.     -E rename重命名 
        16. 默認策略: 
        17.     —P policy 
        18. 清空計算器 
        19.     -Z zero 
        20.     每條規則(包括默認策略)都有兩個計數器 
        21.         被此規則匹配到的所有數據包的個數 
        22.         被此規則匹配到的所有數據包的大小之和 
        23. 查看類: 
        24.     —L, list 
        25.         -n,numeric 
        26.         -v,verbose 
        27.             -vv 
        28.             -vvv 
        29.     -x exactly 顯示精確值,不需要做換算 
        30.     --line-numbers 
        31.      
        32. 匹配條件: 
        33. 基本匹配: 
        34. -s source:ip ,NETWORK 
        35. -d destnations 
        36. -p {tcp|udp|icmp} 
        37. -i inetface 流入 
        38. -o inetface 流出 
        39.  
        40. 擴展匹配:(調用iptables模塊,以便擴展iptables匹配功能-m明確指定模塊) 
        41.     隱含擴展 
        42.     -p tcp 可以省略-m -tcp 
        43.         --sport PORT 
        44.         --dport PORT 
        45.         --tcp-flags  
        46.             --tcp-flags ACK,SYN,RST,FIN SYN,ACK 這時SYN=1,ACK=1,其他為0 
        47.             要帶兩個參數要檢查的標志位,沒有出現的標志位必須為0,出現的為1 
        48.             --tcp-flags ACK,SYN,RST,FIN SYN 可以簡單寫成--syn 
        49.     -p udp 
        50.         --sport PORT 
        51.         --dport PORT 
        52.     -p icmp 
        53.         --icmp-type 
        54.             8:echo-request ping回顯請求 
        55.             0:echo-reply 響應 
        56.             3:ping不通的 
        57.                 還有很多子類 
        58.                 0,1等等 
        59.                  
        60.          
        61.          
        62.     顯式擴展 
        63.         -m state --state NEW 
        64.         -m multiport 
        65.             --source-port 22,53,80 
        66.             --destination-ports 
        67.             --ports 
        68.         -m iprange 
        69.            -src -range 192.168.0.2-192.168.22 
        70.            -dst -range 
        71.         -m limit 
        72.             --limit 
        73.             --limit burst 
        74.         -m string 
        75.             --algo bm|kmp 
        76.             --string "STRING" 
        77.         -m time 
        78.             --timestart 8:00 -timestop 18:00 -j DROP 
        79.             --days 
        80.             --datestart --datestop 
        81.     ACTION 
        82.     -j 
        83.     ACCEPT  
        84.     DROP  
        85.     REJECT 
        iptables實例操作: 
        1. 開放ssh的22端口: 
        2. iptables -A INPUT -s 0.0.0.0/0.0.0.0 -d 172.16.100.1/32  -p tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT 
        3. 注意:如果你寫成172.16.100.1/16就表示這個網段了,不表示這個特定的ip地址了 
        4.  
        5. iptables -A OUTPUT -s 172.16.100.1 -d 0.0.0.0/0.0.0.0 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT 
        6. 注意:這個表示別人連進來了,我們要把數據包響應給別人要開OUTPUT鏈,這時上面已經建立了NEW,所以這次的通信過程是已經建立連接狀態,表示為ESTABLISHED 
        7.  
        8. 總結:1、特定的地址掩碼是32 
        9.       2、一般進來允許NEW,ESTABLISHED 出去只允許ESTABLISHED 
        10.  
        11. 開放web服務器80端口 
        12. iptables -A  INPUT  -d 192.168.184.136 -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT 
        13. iptables -A  OUTPUT  -s 192.168.184.136 -p tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT 
        14.  
        15. 開放DNS的53端口,一種是基于tcp的,一種是基于udp的 
        16. iptables -A INPUT -d 192.168.184.136 -p udp  --dport 53  -m state --state NEW,ESTABLISHED -j ACCEPT 
        17. iptables -A INPUT -d 192.168.184.136 -p tcp  --dport 53  -m state --state NEW,ESTABLISHED -j ACCEPT 
        18. iptables -A OUTPUT -s 192.168.184.136 -p udp --sport 53  -m state --state ESTABLISHED -j ACCEPT 
        19. iptables -A OUTPUT -s 192.168.184.136 -p tcp  --sport 53  -m state --state ESTABLISHED -j ACCEPT 
        20.  
        21. 對上面的規則進行優化: 
        22. INPUT鏈: 
        23. 優化一 
        24. iptables -A INPUT -d  192.168.184.136 -p tcp -m state --state NEW,ESTABLISHED -m multiport --destination-ports 22,53,80 -j ACCEPT 
        25. iptables -A INPUT -d 192.168.184.136 -p udp  --dport 53  -m state --state NEW,ESTABLISHED -j ACCEPT 
        26.  
        27. 優化二(最好的) 
        28. iptables -A INPUT -m state --state ESTABLISHED -j ACCEPT 
        29. iptables -A INPUT -d  192.168.184.136 -p tcp -m state --state NEW -m multiport --destination-ports 22,53,80 -j ACCEPT 
        30. iptables -A INPUT -d 192.168.184.136 -p udp  --dport 53  -m state --state NEW -j ACCEPT 
        31.  
        32. OUTPUT鏈 
        33. 優化一 
        34. iptables -A OUTPUT -s 192.168.184.136 -p tcp -m state --state ESTABLISHED -m multiport --source-ports 22,53,80 -j ACCEPT 
        35. iptables -A OUTPUT -s 192.168.184.136 -p tcp  --sport 53  -m state --state ESTABLISHED -j ACCEPT 
        36.  
        37. 優化二(最好的) 
        38. iptables -A OUTPUT -m state --state ESTABLISHED -j ACCEPT 
        39. 注意:仔細觀察一下這個規則這個狀態全部是ESTABLISHED,所以可以再次優化的 
        40.  
        41. 開放TCP的23號端口,只允許192.168.184.1-192.168.184.200內的主機訪問 
        42. iptables -A INPUT -d 192.168.184.136 -m iprange  --src-range 192.168.184.1-192.168.184.200 -p tcp --dport 23 -m state --state NEW -j ACCEPT  
        43.  
        44. 對ssh進行限制,同一ip只允許發送兩個請求 
        45. iptables -A INPUT -d 192.168.184.136 -p tcp --dport 22 -m state --state NEW -m connlimit ! --connlimit-above 2 -j ACCEPT 
        46.  
        47. 對網頁內容字符串進行屏蔽,比如屏蔽包含test字樣 
        48. iptables -I OUTPUT 1 -m string --algo kmp --string "test" -j REJECT 
        49.  
        50. 開放ftp服務 
        51. lsmod |grep ftp 查看內核的ftp模塊 
        52. modprobe ip_nat_ftp 裝載內核的ftp模塊 
        53. 開放命令連接21號端口: 
        54. iptables -A INPUT  -d 192.168.184.136 -p tcp --dport 21 -m state --state NEW -j ACCEPT 
        55. 開放數據端口: 
        56. iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT 
        57. iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT 
        58.  
        59. 禁ping 
        60. iptables -A FORWARD -p icmp --icmp-type 8 -j REJECT 
        61.  
        62. SNAT源地址轉換 
        63. iptables -t nat -A POSTROUTING -s 172.16.0.0/16 -j SNAT --to-source 192.168.100.2  
        64.  
        65. DNAT目標地址轉換 
        66. iptables -t nat -A PREROUTING -d 172.16.100.1 -p tcp --dport 80 -j DNAT --to-destination 192.168.100.2 
        67.  
        68. 日志記錄功能 
        69. iptables -t nat PREROUTING -d 172.16.100.1 -p tcp --dport 80 -j LOG --log-prefix "DNAT LOG" 
        70. 注意:日志是記錄在messages 
        71.  
        72. 利用iptables的recent模塊來抵御DOS攻擊:
        73. ssh: 遠程連接 
        74. iptables -I INPUT -p tcp --dport 22 -m connlimit --connlimit-above 3 -j DROP 
        75. iptables -I INPUT  -p tcp --dport 22 -m state --state NEW -m recent --set --name SSH 
        76. iptables -I INPUT  -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 300 --hitcount 3 --name SSH -j DROP 
        77.  
        78. 1.利用connlimit模塊將單IP的并發設置為3;會誤殺使用NAT上網的用戶,可以根據實際情況增大該值; 
        79. 2.利用recent和state模塊限制單IP在300s內只能與本機建立3個新連接。被限制一分鐘后即可恢復訪問。 
        80. 下面對最后兩句做一個說明: 
        81. 1.第一句是記錄訪問tcp 22端口的新連接,記錄名稱為SSH 
        82. --set 記錄數據包的來源IP,如果IP已經存在將更新已經存在的條目 
        83. 2.第三句是指SSH記錄中的IP,300s內發起超過3次連接則拒絕此IP的連接。 
        84. --update 是指每次建立連接都更新列表; 
        85. --seconds必須與--rcheck或者--update同時使用 
        86. --hitcount必須與--rcheck或者--update同時使用 
        億恩科技地址(ADD):鄭州市黃河路129號天一大廈608室 郵編(ZIP):450008 傳真(FAX):0371-60123888
           聯系:億恩小凡
           QQ:89317007
           電話:0371-63322206

        本文出自:億恩科技【www.endtimedelusion.com】

        服務器租用/服務器托管中國五強!虛擬主機域名注冊頂級提供商!15年品質保障!--億恩科技[ENKJ.COM]

      1. 您可能在找
      2. 億恩北京公司:
      3. 經營性ICP/ISP證:京B2-20150015
      4. 億恩鄭州公司:
      5. 經營性ICP/ISP/IDC證:豫B1.B2-20060070
      6. 億恩南昌公司:
      7. 經營性ICP/ISP證:贛B2-20080012
      8. 服務器/云主機 24小時售后服務電話:0371-60135900
      9. 虛擬主機/智能建站 24小時售后服務電話:0371-60135900
      10. 專注服務器托管17年
        掃掃關注-微信公眾號
        0371-60135900
        Copyright© 1999-2019 ENKJ All Rights Reserved 億恩科技 版權所有  地址:鄭州市高新區翠竹街1號總部企業基地億恩大廈  法律顧問:河南亞太人律師事務所郝建鋒、杜慧月律師   京公網安備41019702002023號
          0
         
         
         
         

        0371-60135900
        7*24小時客服服務熱線

         
         
        av不卡不卡在线观看_最近2018年中文字幕_亚洲欧美一区二区三区_一级A爱做片免费观看国产_日韩在线中文天天更新_伊人中文无码在线