李家隆
防火墻是網(wǎng)絡(luò)中的重要設(shè)備,而功能齊全的硬防火墻往往價(jià)格不菲,能否利用開(kāi)源軟件,架構(gòu)一臺(tái)高性能的軟防火墻呢?
m0n0wall是基于FreeBsd內(nèi)核開(kāi)發(fā)的免費(fèi)軟件防火墻。提供基于Web的配置管理、提供VPN功能、支持DHCP Server、DNS轉(zhuǎn)發(fā)、動(dòng)態(tài)DNS、Ipsec、流量控制、無(wú)線網(wǎng)絡(luò)支持等功能。我們可以借助此款軟件,DIY自己的個(gè)性防火墻。
● 軟件下載
m0n0wall系統(tǒng)和physdiskwrite寫(xiě)盤(pán)工具可從網(wǎng)上下載。英文版下載地址是http://www.m0n0.ch,漢化版下載地址是http://bbs.m0n0china.org。
● 硬件需求
任何標(biāo)準(zhǔn)的X86 PC、只要配備兩塊網(wǎng)卡,內(nèi)存不小于64M都能運(yùn)行該系統(tǒng),而且系統(tǒng)可以安裝在IDE硬盤(pán)、電子硬盤(pán)(DOM)、CF存儲(chǔ)卡等存儲(chǔ)介質(zhì)上。
● 系統(tǒng)安裝
以m0n0wall1.235在XP下安裝到IDE硬盤(pán)為例。
把下載好的系統(tǒng)文件和寫(xiě)盤(pán)工具保存在c:\m0n0目錄,將準(zhǔn)備安裝m0n0wall系統(tǒng)的IDE硬盤(pán)接到XP系統(tǒng)電腦的主板第二個(gè)IDE口上。進(jìn)入m0n0目錄中,運(yùn)行“physdiskwrite-generic-pc-1.235_sc.img”,此時(shí)系統(tǒng)顯示兩個(gè)硬盤(pán)的一些信息,并提示“Which disk do you want to write?(0..1)”,選擇“1”(即安裝m0n0wall系統(tǒng)的硬盤(pán)),并輸入“y”確認(rèn)(如圖1)。將該硬盤(pán)安裝到用做防火墻的電腦中,設(shè)置為硬盤(pán)啟動(dòng)。
● 系統(tǒng)配置
首次運(yùn)行m0n0wall,需要對(duì)其進(jìn)行簡(jiǎn)單配置,配置菜單共有六項(xiàng)(如圖2),一般只需要配置前兩項(xiàng),后四項(xiàng)可在Web管理方式完成。各菜單的功能如下:
⑴網(wǎng)卡:指定網(wǎng)絡(luò)端口,即設(shè)置連接WAN和LAN的網(wǎng)卡;
⑵設(shè)置LAN IP地址,即內(nèi)網(wǎng)的網(wǎng)關(guān),默認(rèn)為192.168.1.1;
⑶復(fù)位WebGUI密碼,默認(rèn)密碼為mono;
⑷恢復(fù)出廠默認(rèn)設(shè)置;
⑸重新啟動(dòng)系統(tǒng);
⑹Ping主機(jī),用于檢測(cè)網(wǎng)絡(luò)。
● 應(yīng)用實(shí)例
學(xué)校有100臺(tái)教師用機(jī)、40臺(tái)多媒體教室用機(jī);1臺(tái)服務(wù)器提供Web和FTP服務(wù);出口為10M寬帶(靜態(tài)IP);2個(gè)微機(jī)房均采用雙網(wǎng)卡服務(wù)器代理上網(wǎng)。網(wǎng)絡(luò)拓?fù)鋱D(如圖3)。
在同網(wǎng)段中的任意計(jì)算機(jī)上啟動(dòng)瀏覽器,輸入http://192.168.1.1,即可進(jìn)入m0n0wall的Web管理界面(如圖4),默認(rèn)用戶名:admin,密碼:mono。
1.實(shí)現(xiàn)共享上網(wǎng)
首先設(shè)置DNS:通過(guò)“系統(tǒng)\常規(guī)設(shè)置”,在DNS服務(wù)器項(xiàng)文本框中填入ISP提供的DNS服務(wù)器地址(218.2.135.1和61.147.37.1),并保存。在此頁(yè)面還可以修改用戶名和密碼、WEB管理頁(yè)面的協(xié)議類型和端口等,以提高防火墻的安全性。
接著設(shè)置上網(wǎng)類型:通過(guò)“網(wǎng)絡(luò)接口\WAN”,在類型下拉框中選擇“Static”(共有Static、DHCP、PPPoE、PPTP、BigPond五種,根據(jù)接入方式來(lái)選擇)。靜態(tài)IP設(shè)置項(xiàng)中輸入IP地址(221.226.127.*)、子網(wǎng)掩碼輸入“/26”(m0n0wal子網(wǎng)掩碼采用的是CIDR標(biāo)記法,即子網(wǎng)掩碼二進(jìn)制表示的數(shù)位為1的個(gè)數(shù),如255.255.255.0,用CIDR標(biāo)記為/24)、網(wǎng)關(guān)(221.226.127.*),保存設(shè)置。
最后打開(kāi)DNS轉(zhuǎn)發(fā):通過(guò)“服務(wù)功能\DNS轉(zhuǎn)發(fā)”,勾選“DNS轉(zhuǎn)發(fā)功能”,保存設(shè)置。
完成上述操作后,根據(jù)校園網(wǎng)的IP分配規(guī)劃,修改客戶機(jī)網(wǎng)絡(luò)設(shè)置,就可以通過(guò)m0n0wall實(shí)現(xiàn)共享上網(wǎng)。
2.配置防火墻規(guī)則
與大部分硬件防火墻一樣,m0n0wall也是工作在第三層(網(wǎng)絡(luò)層)。默認(rèn)狀態(tài)下已建立兩條規(guī)則:允許內(nèi)網(wǎng)到任意位置的通訊、阻斷外網(wǎng)端口上所有的進(jìn)入連接。我們可以根據(jù)需求通過(guò)“防火墻\規(guī)則”自行配置規(guī)則來(lái)控制上網(wǎng)行為,防火墻是按照順序來(lái)匹配規(guī)則列表,如果匹配了所配置的一條規(guī)則,將不再匹配該條規(guī)則以下的規(guī)則(如圖5)。
3.內(nèi)網(wǎng)服務(wù)發(fā)布
目前,校內(nèi)計(jì)算機(jī)只能通過(guò)內(nèi)網(wǎng)地址來(lái)訪問(wèn)Web和FTP服務(wù)器,校外機(jī)器則無(wú)法訪問(wèn)。要使校內(nèi)、校外的計(jì)算機(jī)都可以使用域名訪問(wèn),需對(duì)m0n0wall進(jìn)行相應(yīng)配置。
首先映射Web端口:通過(guò)“防火墻\NAT”,在“轉(zhuǎn)入”項(xiàng)中點(diǎn)“+”圖標(biāo),添加一條規(guī)則。網(wǎng)絡(luò)接口為WAN,Protocol設(shè)置為T(mén)CP,外部端口范圍設(shè)置為HTTP,NAT的IP地址填Web服務(wù)器地址(192.168.1.2),本地端口設(shè)置為HTTP,描述輸入NAT Web Server,勾選“在防火墻中自動(dòng)添加一條允許NAT側(cè)則通過(guò)的過(guò)濾規(guī)則”,保存并應(yīng)用更改。
接著映射FTP端口:方法類似映射WEB端口,只需將外部端口范圍設(shè)置為FTP,本地端口設(shè)置為FTP,描述輸入NAT FTP Server。
依此類推,還可以將遠(yuǎn)程桌面3389、SMTP(25)、POP3(110)等常用的端口映射(如圖6)。此時(shí),校外計(jì)算機(jī)已經(jīng)可以使用域名訪問(wèn)Web和FTP服務(wù)器,而校內(nèi)計(jì)算機(jī)還不可以。
最后設(shè)置主機(jī):通過(guò)“服務(wù)功能\DNS轉(zhuǎn)發(fā)”,點(diǎn)“+”圖標(biāo)添加主機(jī)。在主機(jī)輸入WWW,域輸入使用的域名(如router.net.cn),IP地址填WEB服務(wù)器地址(192.168.1.2),描述可以輸入www server,并保存。同理再添加FTP主機(jī)。
完成上述操作,將校內(nèi)計(jì)算機(jī)的DNS設(shè)置為防火墻的LAN IP,就能使用域名訪問(wèn)Web和FTP服務(wù)器了。
4.流量限制
m0n0wall具有流量控制功能,可以對(duì)基于IP地址、Mac地址、網(wǎng)段、協(xié)議等方式來(lái)實(shí)現(xiàn)對(duì)上傳下載速度的控制。
通過(guò)“防火墻\流量管理”,先在管道項(xiàng)中,建立數(shù)據(jù)通道(如圖7);然后在規(guī)則項(xiàng)中,將相應(yīng)的管道添加到規(guī)則中,保存并應(yīng)用更改(如圖8)。
5.DHCP服務(wù)器配置
將m0n0wall路由防火墻作為內(nèi)部局域網(wǎng)的DHCP服務(wù)器,能夠防止局域網(wǎng)內(nèi)機(jī)器產(chǎn)生IP地址沖突,減少手工設(shè)置IP地址的麻煩。
通過(guò)“服務(wù)功能\DHCP服務(wù)”,勾選“在LAN接口打開(kāi)DHCP服務(wù)”,在地址范圍項(xiàng)文本框中分別輸入起始IP地址和結(jié)束IP地址,保存設(shè)置,就可以啟動(dòng)DHCP服務(wù)。通過(guò)“診斷\DHCP租約”,能查看到當(dāng)前活動(dòng)及過(guò)期的DHCP租約。
6.備份/還原配置文件
利用“診斷—備份/還原”,備份當(dāng)前防火墻的配置信息,以防不測(cè)之時(shí)能快速地恢復(fù)系統(tǒng)配置。
以上只介紹了m0n0wall中的部分功能和應(yīng)用,經(jīng)過(guò)長(zhǎng)時(shí)間的運(yùn)行,性能良好。m0n0wall作為一個(gè)網(wǎng)關(guān)設(shè)備,具備了路由與防火墻的功能,并以簡(jiǎn)單和穩(wěn)定的特點(diǎn)給網(wǎng)絡(luò)安全和網(wǎng)絡(luò)管理帶來(lái)了方便。