iptables可謂是SA的看家本領,需要着重掌握。隨着雲計算的發展和普及,很多雲廠商都提供類似安全組產品來修改機器防火牆。
iptables概念
iptables只是Linux防火牆的管理工具而已。真正實現防火牆功能的是netfilter,它是Linux內核中實現包過濾的內部結構。
iptables具體是如何去過濾各種規則的呢?請看下面的四表五鏈
四表五鏈概念
- filter表——過濾數據包
- Nat表——用於網絡地址轉換(IP、端口)
- Mangle表——修改數據包的服務類型、TTL、並且可以配置路由實現QOS
- Raw表——決定數據包是否被狀態跟蹤機制處理
- INPUT鏈——進來的數據包應用此規則鏈中的策略
- OUTPUT鏈——外出的數據包應用此規則鏈中的策略
- FORWARD鏈——轉發數據包時應用此規則鏈中的策略
- PREROUTING鏈——對數據包作路由選擇前應用此鏈中的規則(所有的數據包進來的時侯都先由這個鏈處理)
- POSTROUTING鏈——對數據包作路由選擇后應用此鏈中的規則(所有的數據包出來的時侯都先由這個鏈處理)

再來一張十分形象的netfilter圖:

上圖十分清晰的表明數據包的流向。由於四表中我們常用的就只有filter和nat,所以再來一張鳥哥版精簡圖:
