iptables策略與規則連 防火牆是由上而下的順序來讀取配置的策略規則,策略規則的設置有兩種:通(放行)、堵(阻止)。當預設策略設置為通時,就要設置拒絕規則,當預設策略為堵時,則要設置允許規則。 iptables服務把用於處理或過濾流量的策略條目稱為規則,多條規則組成一個規則鏈,規則連依據數據包處 ...
iptables策略與規則連
防火牆是由上而下的順序來讀取配置的策略規則,策略規則的設置有兩種:通(放行)、堵(阻止)。當預設策略設置為通時,就要設置拒絕規則,當預設策略為堵時,則要設置允許規則。
iptables服務把用於處理或過濾流量的策略條目稱為規則,多條規則組成一個規則鏈,規則連依據數據包處理位置的不同進行分類
在進行路由選擇前處理數據包:PREROUTING
處理流入的數據包:INPUT(此規則使用最多,可增加外網入侵的難度)
處理流出的數據包:OUTPUT
處理轉發的數據包:FORWARD
在進行路由選擇後處理數據包:POSTROUTING
對應的動作,ACCEPT(允許流量通過)、REJECT(j拒絕流量通過)、LOG(記錄日誌信息)、DROP(丟棄,不響應,發送方無法判斷是否被拒絕),規則鏈的預設拒接動作只能是DROP
iptables常用參數
-P(大寫):設置預設規則
-F:清空規則鏈
-L:查看規則鏈
-A:在規則連末尾加入新規則
-I:在規則鏈頭部加入新規則
-D num:刪除某一條規則
-j:匹配相對應的動作
-s:匹配來源地址IP/MASK,加" ! "表示除這個IP外
-d:匹配目標地址
-i 網卡名稱:匹配從這塊網卡流入的數據
-o 網卡名稱:匹配從這塊網卡流入的數據
-p:匹配協議,如TCP、UDP、ICMP
--dport num:匹配目標埠號
--sport num:匹配來源埠號
iptables用法示例(均以INPUT鏈做示範)
1.查看規則鏈( iptables -L)
2.清除規則鏈( iptables -F),再查看規則鏈,與上圖對比可見規則都被刪除,只有預設策略
3.設置預設策略( iptables -P),設置INPUT的預設策略為DROP,之前的是ACCEPT
4.向INPUT鏈中添加允許ICMP流量進入策略,ICMP流量和ping命令行為檢測有關,因當前預設策略為DROP,在添加前先使用ping檢測下是否可以ping通
可見100%packet loss,無法ping通本機,再添加允許ICMP流量流入策略,查看策略,再ping,0%packet loss ,已ping 通本機
iptables -I INPUT -p icmp -j ACCEPT
5.允許指定網段訪問本機的22埠,192.168.1.0/24,22埠與SSH服務有關,測試方法參照SSH使用方法
6.允許所有主機訪問本機的1000~1100埠
7.刪除策略( iptables -d num),刪除第二、四條策略
可見第二條策略已不見
可見第四條也不見了
8.使配置防火牆策略永久生效,執行保存命令,不然的話重啟後會失效
service iptables save