- 論壇徽章:
- 0
|
linux作防火墻無非是iptable或者ipchains。
但是手動(dòng)編輯規(guī)則文件是非常麻煩、煩瑣、無聊、復(fù)雜、頭痛.... ......(此處省去5000字)
如果手動(dòng)編輯規(guī)則,怎么作,都不是好用的防火墻。
有沒一種代替手工編輯iptable(現(xiàn)在都用它,ipchains已經(jīng)被代替)規(guī)則文件的東東呢?將簡單的思路變成復(fù)雜的iptable規(guī)則呢???
安裝mandrake時(shí)看到它帶一個(gè)叫shorewall的軟件,就是來作這種事情的。于是到
www.shorewall.net查看。原來linux作防火墻可以這樣簡單:
編輯幾個(gè)配置文件~~~~~~啟動(dòng)shorewall---------ok。
下面就說說以fedora為例的防火墻制作:
step1:安裝fedora2(其實(shí)其他版本的linux也可以的內(nèi)核可以是2.4或者2.6)
包括iptable和iproute。
step2:下載并安裝shorewall;下載:http://www.shorewall.net;我下載的rpm版本
直接rpm -ivh shorewall.rpm就ok。
裝好的shorewall會(huì)有這些文件:
/etc/shorewall目錄----放置shorewall的配置文件。
/sbin/shorewall執(zhí)行文件----啟動(dòng)停止shorewall
/usr/share/shorewall目錄----規(guī)則文件。
首先刪除/etc/shorewall/startup_disabled文件。這樣才能啟動(dòng)shorewall
首先編輯interfaces文件,定義每個(gè)區(qū)域?qū)?yīng)的網(wǎng)卡。
第一欄是定義的區(qū)域,net就是接入網(wǎng)絡(luò)的區(qū)域
loc就是本地網(wǎng)絡(luò)區(qū)域,dmz代表dmz區(qū)域(安全區(qū),如果不了解請查詢相關(guān)信息)。
第二欄代表連接定義的區(qū)域的網(wǎng)卡。shorewall將網(wǎng)絡(luò)用區(qū)來劃分,fw就是防火墻本身,net一般代表外網(wǎng),loc代表內(nèi)網(wǎng),dmz就代表放置服務(wù)器的安全區(qū)。
net eth0
loc eth1
dmz eth2
保存退出。
編輯masq文件。定義需要?jiǎng)討B(tài)NAT的網(wǎng)絡(luò)界面,也就是需要通過防火墻上網(wǎng)的界面。
eth0 eth1
eth0 eth2
第一欄代表外網(wǎng)連接的網(wǎng)卡,第二欄代表需要通過第一欄界面上網(wǎng)的界面。
保存退出。
編輯rules文件
DNAT net dmz:192.168.3.9 tcp 80 - 130.252.100.70
代表dmz區(qū)的192.168.3.9 的tcp80端口dnat到net區(qū),ip為130.252.100.69,也就是說可以從外網(wǎng)的130.252.100.69訪問dmz區(qū)的192.168.1.3的http服務(wù)。
也就是說當(dāng)外網(wǎng)訪問130.252.100.69的http服務(wù)時(shí),信息將由192.168.3.9提供。
DNAT net loc:192.168.1.3 tcp 80 - 130.252.100.70
代表loc區(qū)的192.168.1.3 的tcp80端口dnat到net區(qū),ip為130.252.100.69,也就是說可以從外網(wǎng)的130.252.100.69訪問loc區(qū)的192.168.1.3的http服務(wù)。
REDIRECT loc 3128 tcp www - !192.168.2.2
從定向loc區(qū)對(duì)3128端口的訪問到192.168.2.2。
ACCEPT net:130.252.100.69,130.252.100.70 fw tcp 22
允許net區(qū)的130.252.100.69和130.252.100.70訪問fw區(qū)(代表防火墻本身)的tcp22端口(ssh)
保存退出。
這樣,你就制作了一個(gè)基本的3區(qū)防火墻,也可以叫dmz防火墻。
運(yùn)行shorewall start開啟shoreall
運(yùn)行shorewall stop停止shorewall
運(yùn)行shorewall clear清除存在的iptable規(guī)則
shorewall status將顯示iptable狀態(tài)。
當(dāng)然這個(gè)東東要求你對(duì)網(wǎng)絡(luò)知識(shí)的了解比較多一點(diǎn)。如果發(fā)覺有不明白的地方,先看看tcpip方面的書再來吧。
而且shorewall的功能非常強(qiáng)大,我們今天寫到的也只是很少的一部分。
有個(gè)軟件叫bering。就是一張軟盤,上面集成了linux和shorewall而且?guī)б粋(gè)微型的web服務(wù)器用來管理shorewall,很不錯(cuò)哦,可惜沒有很好的軟盤來配套,于是作了個(gè)u盤版的fedora裝shorewall,感覺──好極了。 |
|