Iptables 設置

  1. NetFilter規定的五個規則鏈sql

    PREROUTING (路由前)、INPUT (數據包流入口)、FORWARD (轉發管卡)、OUTPUT(數據包出口)、POSTROUTING(路由後)網絡

    任何一個數據包,只要通過本機,必將通過這五個鏈中的其中一個鏈;tcp

    NAT: Network Address Transition (網絡地址轉換)oop

  2. 防火牆策略spa

    filter 定義容許或者不容許的 、nat 定義地址轉換的、mangle功能:修改報文原數據rest

    filter來說通常只能作在3個鏈上:INPUT ,FORWARD ,OUTPUTorm

    nat來說通常也只能作在3個鏈上:PREROUTING ,OUTPUT ,POSTROUTING接口

    mangle則是5個鏈均可以作:PREROUTING,INPUT,FORWARD,OUTPUT,POSTROUTING
    ip

  3. iptables -L -n  或 iptables -nL -- 查看規則表路由

  4. iptables -t nat -L -n -- 查看網絡地址轉換表

  5. iptables -F  -- 清除預設表filter中的全部規則鏈的規則

  6. iptables -X  -- 清除預設表filter中使用者自定鏈中的規則

  7. /etc/rc.d/init.d/iptables save  -- 保存設置

  8. cat /etc/sysconfig/iptables  -- 查看規則設置保存文件

  9. service iptables restart  -- 重啓規則表

  10. 設置預設規則

    iptables -p INPUT DROP 

    iptables -p OUTPUT DROP

    iptables -p FORWARD DROP

  11. 開啓FORWARD轉發,需修改內核配置文件

    /proc/sys/net/ipv4/ip_forward  默認0(0:關閉 1:打開) 

    開啓是 iptables -p OUTPUT ACCEPT 才起做用

  12. 開啓SSH遠程登陸

    iptables -A INPUT -p tcp --dport 22 -j ACCEPT

    iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT

    iptables -I INPUT -p tcp --dport 22 -m mac --mac-source XX:XX:XX:XX:XX:XX -j ACCEPT -- 限制mac地址訪問

    iptables -D INPUT -p tcp --dport 22 -m mac --mac-source XX:XX:XX:XX:XX:XX -j ACCEPT -- 刪除MAC地址訪問設置

    iptables -A INPUT -s 192.168.0.3 -p tcp --dport 22 -j ACCEPT -- 指定IP訪問

    iptables -A OUTPUT -d 192.168.0.3 -p tcp --sport 22 -j ACCEPT -- 指定輸出到指定IP經過

    iptables -A INPUT -s 192.168.0.0/24 -p tcp --dport 22 -j ACCEPT -- 指定IP段 192.168.0.1-255訪問

    iptables -A OUTPUT -d 192.168.0.0/24 -p tcp --sport 22 -j ACCEPT -- 指定輸出到指定IP段經過

    iptables -A INPUT -s 192.168.0.3 -p tcp --dport 22 -j DROP-- 限制IP訪問

    iptables -A OUTPUT -d 192.168.0.3 -p tcp --sport 22 -j DROP -- 限制到目的IP得輸出

    iptables -D INPUT -p tcp --dport 22 -j ACCEPT

    iptables -D OUTPUT -p tcp --sport 22 -j ACCEPT

  13. 開始本機8080端口訪問

    iptables -A INPUT -p tcp --dport 8080 -j ACCEPT

    iptables -A OUTPUT -p tcp --sport 8080 -j ACCEPT

  14. 容許icmp包經過(注:容許ping)

    iptables -A OUTPUT -p icmp -j ACCEPT

    iptables -A INPUT -p icmp -j ACCEPT

    iptables -D OUTPUT -p icmp -j ACCEPT

    iptables -D INPUT -p icmp -j ACCEPT

  15. 容許loopback 會致使DNS沒法正常關閉

    IPTABLES -A INPUT -i lo -p all -j ACCEPT  

    -- -i 表明輸入接口 (不指定-i參數,將處理進入全部接口的數據包,! -i eth0 : 將處理全部經由eth0之外的接口進入的數據包,-i eth+ :將處理全部經由eth開頭的接口進入的數據包)

    IPTABLES -A OUTPUT -o lo -p all -j ACCEPT

    -- -o 表明輸出接口(! -o eth0 : 從eth0之外的接口輸出,-i eth+ : 從eth開頭的接口輸出)

  16. DNS服務開啓

    DNS佔用TCP、UDP兩個協議端口、通常狀況下使用UDP 53

    iptables -A INPUT -p tcp --dport 53 -j ACCEPT

    iptables -A INPUT -p udp --dport 53 -j ACCEPT

    iptables -A OUTPUT-p udp --sport 53 -j ACCEPT

  17. 容許創建鏈接的包經過

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

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

  18. 開啓本機訪問外部80端口

    iptables -A INPUT -p tcp --sport 80 -j ACCEPT  

    iptables -A OUTPUT -p tcp --dport 80 -j ACCEPT

  19. 開啓、刪除Mysql(3306)端口

    iptables -I INPUT -p tcp --dport 3306 -j ACCEPT  -- 在行首添加輸入 目的端口3306 訪問經過

    iptables -I OUTPUT -p tcp --sport 3306 -j ACCEPT  -- 在行首添加輸出 原端口3306 訪問經過

    iptables -D INPUT -p tcp --dport 3306 -j ACCEPT   -- 刪除輸入 目的3306端口訪問

    iptables -D OUTPUT -p tcp --sport 3306 -j ACCEPT  -- 刪除輸出 原端口3306端口訪問

    iptables -I INPUT -s 192.168.0.3 -p tcp --dport 3306 -j ACCEPT -- 指定IP訪問

    iptables -I OUTPUT -d 192.168.0.3 -p tcp --sport 3306 -j ACCEPT -- 指定輸出到指定IP經過

    iptables -D INPUT -s 192.168.0.3 -p tcp --dport 3306 -j ACCEPT

    iptables -D OUTPUT -d 192.168.0.3 -p tcp --sport 3306 -j ACCEPT

  20. 開啓、刪除SendMail(25)端口

    iptables -I INPUT -p tcp --sport 25 -j ACCEPT  -- 不開啓此項也能發送

    iptables -I OUTPUT -p tcp --dport 25 -j ACCEPT

    iptables -D INPUT -p tcp --sport 25 -j ACCEPT

    iptables -D OUTPUT -p tcp --dport 25 -j ACCEPT

  21. 經常使用端口

    22 -- SSH  23  -- telnet  25  -- smtp  53  -- DNS

  22. 已創建鏈接狀態包經過

    iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT -- 添加已創建鏈接狀態包經過

    iptables -D INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT -- 添加已創建鏈接狀態包經過

     

相關文章
相關標籤/搜索