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