如何用 shorewall 3.x 這套防火牆管理軟體來設定 ubuntu 6.06 的 iptables 呢?
ps. 不知道下這段話,對不對...^^"

安裝: sudo apt-get install shorewall ps. ubuntu 6.06 預設安裝的是 3.x 的 shorewall,最新的是 4.x。

設定:
安裝好的 shorewall,有預設的檔案,範本在 /usr/share/doc/shorewall/default-config,請複製到 shorewall 的目錄中。
sudo cp /usr/share/doc/shorewall/default-config/* /etc/shorewall/


/etc/shorewall/zones ... :
#ZONE TYPE OPTIONS IN OUT
# OPTIONS OPTIONS
fw firewall
net ipv4

/etc/shorewall/policy ... :
#SOURCE ZONE DESTINATION ZONE POLICY LOG LEVEL LIMIT:BURST
$FW net ACCEPT
net all DROP info
all all REJECT info


/etc/shorewall/rules ... :
#ACTION SOURCE DESTINATION PROTO DEST PORT(S)
SECTION NEW
<macro>/ACCEPT net $FW

規則檔, 為你要開放的服務,服務名稱請下 「ls /usr/share/shorewall/macro.*」,來查詢。 以下為我的範例(開放網頁跟ssh的服務): #ACTION SOURCE DESTINATION PROTO DEST PORT(S)
SECTION NEW
SSH/ACCEPT net $FW
Web/ACCEPT net $FW

DNS/ACCEPT net $FW

/etc/shorewall/interfaces ... :
#ZONE ...
net              eth0

/etc/default/shorewall ... :
STARTUP=1

/etc/shorewall/shorewall.conf ... :(這個可能預設是 yes 了)
STARTUP_ENABLED=Yes

啟動/關閉:
sudo shorewall start 啟動
sudo shorewall stop 關閉
sudo shorewall restart 重新啟動
sudo shorewall clear 清除規則

sudo iptables -L 查看 iptables 規則

檢查 log 檔:
vi /var/log/shorewall-init.log 查看最下方,看看有沒有 ERROR 的錯誤。

說明:
/usr/share/doc/shorewall/examples/ 下有 one-interfacetwo-interfacesthree-interfaces 的目錄當中,有範本可以參考。
one-interface : 一張網路介面
two-interface : 二張網路介面
three-interface : 三張網路介面

參考來源:
Shorewall : Standalone Firewall

Shorewall Configuration in Debian

20080703 補充:
這篇文章,我漏了一個設定檔 interfaces,所以啟動 shorewall 會出現這樣的錯誤訊息:
Validating interfaces file
    ERROR: No Interfaces Defined

解決方法:
sudo vi /etc/shorewall/interfaces
在 #ZONE... 下一行插入一行,加上如下的內容:
net eth0

最後重新啟動 shorewall 即可:
sudo shorewall restart
創作者介紹
創作者 tern 的頭像
tern

毓林園地

tern 發表在 痞客邦 留言(0) 人氣()