由於Linux iptables預設是沒有Log紀錄的,因次參考了Tomato的設定將防火牆設定可以完整記錄封包進出Log設定方式。
防火牆設定參數
-P |
定義政策( Policy ),注意,這個 P 為大寫。 |
INPUT |
封包為輸入主機的方向。 |
OUTPUT |
封包為輸出主機的方向。 |
FORWARD |
封包為不進入主機而向外再傳輸出去的方向。 |
PREROUTING |
在進入路由之前進行的工作。 |
OUTPUT |
封包為輸出主機的方向。 |
POSTROUTING |
在進入路由之後進行的工作。 |
防火牆參數說明
-A :新增加一條規則,該規則增加在最後面,例如原本已經有四條規則,使用 -A 就可以加上第五條規則! -I :插入一條規則,如果沒有設定規則順序,預設是插入變成第一條規則,例如原本有四條規則,使用 -I 則該規則變成第一條,而原本四條變成 2~5
|
-o :設定『封包流出』的網路卡介面 -i :設定『封包進入』的網路卡介面 interface :網路卡介面,例如 ppp0, eth0, eth1…. |
-p :請注意,這是小寫呦!封包的協定。
|
–sport :來源封包的 port 號碼,也可以使用 port1:port2 如 21:23同時通過 21,22,23 的意思 |
-d :目標主機的 IP 或者是 Network ( 網域 ) |
–dport :目標主機的 port 號碼 |
-j :動作,可以接底下的動作:
|
防火牆設定內容(直連)
# Firewall configuration written by system-config-firewall *filter :logdrop – [0:0] :logreject – [0:0] :logaccept – [0:0] :INPUT ACCEPT [0:0] :FORWARD – [0:0] #:OUTPUT ACCEPT [0:0] |
防火牆設定內容(NAT)
*mangle #NAT定義 *nat :POSTROUTING ACCEPT [0:0] :OUTPUT ACCEPT [0:0] :WANPREROUTING – [0:0] #對內的IP網段依自身環境需求變更 -A POSTROUTING -o eth0 -j MASQUERADE *filter :OUTPUT ACCEPT [0:0] :logdrop – [0:0] :logreject – [0:0] :logaccept – [0:0] -N shlimit :FORWARD DROP [0:0] :wanin – [0:0] :wanout – [0:0] #設定開放通過的IP.Port對應 |