Iptables防火牆網絡
防火牆概述:根據各類分類ide
硬件防火牆和軟件防火牆工具
包過濾防火牆url
狀態型防火牆spa
代理防火前3d
主機型防火牆代理
網絡型防火牆日誌
netfilterblog
位於Linux內核中的包過濾功能體系接口
稱爲Linux防火牆的「內核態」
iptables
位於/sbin/iptables,用來管理防火牆規則的工具
稱爲Linux防火牆的「用戶態」
—— 上述2種稱呼均可以表示Linux防火牆
包過濾的工做層次
主要是網絡層,針對IP數據包
體如今對包內的IP地址、端口等信息的處理上
規則鏈:
規則鏈
規則的做用:對數據包進行過濾或處理
鏈的做用:容納各類防火牆規則
鏈的分類依據:處理數據包的不一樣時機
默認包括5種規則鏈
INPUT:處理入站數據包
OUTPUT:處理出站數據包
FORWARD:處理轉發數據包
POSTROUTING鏈:在進行路由選擇後處理數據包
PREROUTING鏈:在進行路由選擇前處理數據包
規則表:
規則表
表的做用:容納各類規則鏈
表的劃分依據:防火牆規則的做用類似
默認包括4個規則表
raw表:肯定是否對該數據包進行狀態跟蹤
mangle表:爲數據包設置標記
nat表:修改數據包中的源、目標IP地址或端口
filter表:肯定是否放行該數據包(過濾)
錶鏈結構圖
規則順序
規則表之間的順序
rawàmangleànatàfilter
規則鏈之間的順序
入站:PREROUTINGàINPUT
出站:OUTPUTàPOSTROUTING
轉發:PREROUTINGàFORWARDàPOSTROUTING
規則鏈內的匹配順序
按順序依次檢查,匹配即中止(LOG策略例外)
若找不到相匹配的規則,則按該鏈的默認策略處理
語法構成
iptables [-t 表名] 選項 [鏈名] [條件] [-j 控制類型]
幾個注意事項
不指定表名時,默認指filter表
不指定鏈名時,默認指表內的全部鏈
除非設置鏈的默認策略,不然必須指定匹配條件
選項、鏈名、控制類型使用大寫字母,其他均爲小寫
數據包的常見控制類型
ACCEPT:容許經過
DROP:直接丟棄,不給出任何迴應
REJECT:拒絕經過,必要時會給出提示
LOG:記錄日誌信息,而後傳給下一條規則繼續匹配
添加新的規則
-A:在鏈的末尾追加一條規則
-I:在鏈的開頭(或指定序號)插入一條規則
通用匹配
可直接使用,不依賴於其餘條件或擴展
包括網絡協議、IP地址、網絡接口等條件
隱含匹配
要求以特定的協議匹配做爲前提
包括端口、TCP標記、ICMP類型等條件
顯式匹配
要求以「-m 擴展模塊」的形式明確指出類型
包括多端口、MAC地址、IP範圍、數據包狀態等條件