使用FreeBSD防火墻保護企業(yè)網(wǎng)絡
更新時間:2007年09月19日 10:19:25 作者:
我們看看如何使用建立好了的FreeBSD防火墻保護企業(yè),首先假設某企業(yè)有以下服務器和工作站:
1、WEB服務器兩臺、一臺企業(yè)主頁,一臺做BBS,希望IP地址為xxx.xxx.xxx.001和xxx.xxx.xxx.002
2、DNS服務器一臺,并且兼帶企業(yè)E-mail服務,IP地址為xxx.xxx.xxx.003,把www.testdomain.com解析到xxx.xxx.xxx.001以及bbs.testdomain.com解析到xxx.xxx.xxx.002
3、企業(yè)內(nèi)部局域網(wǎng)絡,計算機N臺,IP地址為10.125.0.0到10.125.255.255
對于這樣的一個企業(yè),我們首先要設計好網(wǎng)絡構架,在設計的同時要考慮到各個服務器以及內(nèi)部網(wǎng)絡各放在什么位置,才能更有效的配合防火墻,使得防火墻對每個部分都能充分的保護。
我們首先來分析一下“黑客”入侵的手段和途徑,作為一個入侵者,他的第一步自然是先要找到目標企業(yè)在網(wǎng)絡中的位置,假設他已經(jīng)知道該企業(yè)沒有使用主機托管服務,而是和企業(yè)的網(wǎng)絡放在了一起,那么他只須ping一下該企業(yè)的主頁就能了解到該企業(yè)的IP地址為xxx.xxx.xxx.001和xxx.xxx.xxx.002,而另外還有一臺DNS服務器,也可以使用nslookup這樣的工具,一下就能查到目標企業(yè)的DNS服務器為地址xxx.xxx.xxx.003,并且他還會計劃,假設已經(jīng)進入以上三臺服務器中的一臺,他就會馬上分析網(wǎng)絡結構,并且進入內(nèi)網(wǎng),獲取內(nèi)部網(wǎng)絡員工資料,以及很多重要數(shù)據(jù)。從上面看得出來,要保護這個網(wǎng)絡,我們需要做很多東西,首先我們可以想辦法對服務器之間以及服務器和內(nèi)部網(wǎng)絡之間進行隔離,但又能應用到他們應該有的功能,現(xiàn)在對該企業(yè)的網(wǎng)絡做如下策劃:
首先確定FreeBSD防火墻是作為企業(yè)連接到Internet服務器的唯一途徑,然后對FreeBSD進行一定的設置,開啟它的ipfirewall以及NATD功能,上圖告訴了我們現(xiàn)在是把WWW、BBS、DNS等服務器都放在內(nèi)部進行保護,所以在防火墻要開啟NATD的反向代理功能,首先我們把xxx.xxx.xxx.001,xxx.xxx.xxx.002,xxx.xxx.xxx.003,綁定在FreeBSD外部網(wǎng)卡上,假設外部網(wǎng)卡號為fxp0,在rc.conf里我們需要設置如下:
ifconfig_fxp0="inet xxx.xxx.xxx.001 netmask 255.255.255.0"
ifconfig_fxp0_alias0="inet xxx.xxx.xxx.002 netmask 255.255.255.0"
ifconfig_fxp0_alias1="inet xxx.xxx.xxx.003 netmask 255.255.255.0"
綁好之后我們現(xiàn)在就開始分析了,首先我們來看看內(nèi)部網(wǎng)絡,內(nèi)部要上Internet就必須要有一個網(wǎng)關,并且讓他們正常的使用網(wǎng)絡,假設FreeBSD內(nèi)部網(wǎng)卡編號為fxp1,那么我們還要在rc.conf里加入:
ifconfig_fxp1="inet 10.125.0.1 netmask 255.255.0.0"
然后在防火墻規(guī)則里加上:
divert 8668 ip from any to any via fxp0
這條規(guī)則,允許NATD服務,僅允許NATD服務還不行,還要設置內(nèi)部網(wǎng)絡能連接到Internet,我們再加上:
allow ip from any to 10.125.0.0/16
allow ip from 10.125.0.0/16 to any
內(nèi)部網(wǎng)絡設置Gateway為10.125.0.1,這樣企業(yè)的內(nèi)部網(wǎng)絡就能正常連接到Internet了。
然后我們來看看WWW服務器,這個服務器一般來說只要開放三個端口就夠了,第一個端口自然是HTTP端口不用說了,第二個端口那就是ftp端口以及ftp數(shù)據(jù)端口,其中HTTP端口自然是讓Internet上以及企業(yè)內(nèi)部訪問的端口,而FTP端口是用來更新主頁或做別的事的,并且只須要企業(yè)內(nèi)部人員訪問就足夠了,當然有必要的話還要開telnet或ssh端口,這是方便企業(yè)內(nèi)部系統(tǒng)管理員遠程管理的,這里我建議使用ssh,并且為了防止萬一入侵者進來了,他可能要對其他機器進行攻擊,我決定對WWW服務器進行單獨分離,現(xiàn)在假設FreeBSD的內(nèi)部網(wǎng)卡編號為fxp1,我們編輯rc.conf文件,加上:
ifconfig_fxp1_alias0 ="inet 10.80.0.1 netmask 255.255.255.0"
然后我們把WWW的服務器設置成10.80這個網(wǎng)段,網(wǎng)關為10.80.0.1,這樣就把WWW服務器單獨劃在了一個特殊的區(qū)域里了,假設我們設置WWW的IP為10.80.0.80現(xiàn)在我們再設置防火墻規(guī)則:
allow tcp from any to xxx.xxx.xxx.001 80 in
allow tcp from xxx.xxx.xxx.001 80 to any out //允許任意地方能訪問防火墻的80
allow tcp from 10.80.0.80 80 to any out
allow tcp from any to 10.80.0.80 80 in //允許任意地方訪問WWW服務器的80端口
allow tcp from 10.125.0.0/16 to 10.80.0.80 21 in
allow tcp from 10.125.0.0/16 to 10.80.0.80 20 in
allow tcp from 10.80.0.80 21 to 10.125.0.0/16 out
allow tcp from 10.80.0.80 20 to 10.125.0.0/16 out //允許內(nèi)部網(wǎng)絡使用FTP服務器連接WWW服務器
設置完成防火墻規(guī)則還不行還需要設置NATD,我們設置NATD為:
redirect_port tcp 10.80.0.80:80 xxx.xxx.xxx.001:80
這樣設置以后,WWW服務器就可以允許企業(yè)內(nèi)部人員順利的更新主頁和瀏覽主頁了,而Internet卻只能瀏覽WWW服務器上的主頁,就算萬一WWW服務器利用HTTP服務器入侵了該機器,由于該服務器的各種連接都被放火墻阻斷,而無法對企業(yè)內(nèi)部網(wǎng)絡進行入侵和破壞,達到充分保護WWW服務器以及內(nèi)部網(wǎng)絡的目的。
現(xiàn)在我們再來分析DNS服務器,由于BBS服務器和WWW服務器實質上都一樣這里就不討論了,DNS服務器自然要提供DNS服務器,也就是UDP53端口,由于同時還帶MAIL功能,所以還要開放SMTP端口以及POP3端口,而POP3服務器同樣只允許內(nèi)部企業(yè)訪問,所以我們給rc.conf加入:
ifconfig_fxp1_alias0="inet 10.80.2.1 netmask 255.255.255.0"
然后給DNS服務器設置IP為10.80.2.53,設置防火墻規(guī)則為:
allow udp from any to xxx.xxx.xxx.003 53 in
allow udp from xxx.xxx.xxx.003 53 to any out //允許任意地方能訪問防火墻的53端口
allow tcp from any to xxx.xxx.xxx.003 25 in
allow tcp from xxx.xxx.xxx.003 25 to any out //允許任意地方能訪問防火墻的smtp端口
allow udp from 10.80.2.53 53 to any out
allow udp from any to 10.80.2.53 53 in //允許任意地方訪問DNS服務器的53端口
allow tcp from any to 10.80.2.53 25 in
allow tcp from 10.80.2.53 25 to any out //允許任意地方訪問DNS的SMTP端口
allow tcp from 10.125.0.0/16 to 10.80.2.53 110 in
allow tcp from 10.80.2.53 110 to 10.125.0.0/16 out //允許企業(yè)內(nèi)部訪問DNS的POP3端口
NATD設置為:
redirect_port udp 10.80.2.53:53 xxx.xxx.xxx.003:53 //把10.80.2.53的53轉到xxx.xxx.xxx.003的53上,使用的UDP。
redirect_port tcp 10.80.2.53:25 xxx.xxx.xxx.003:25 //把10.80.2.53的25轉到xxx.xxx.xxx.003的25上,使用的TCP。
按照上面的規(guī)則設置好企業(yè)網(wǎng)絡后,使得企業(yè)網(wǎng)絡保護更加的嚴密,服務器和服務器之間以及服務器和企業(yè)內(nèi)部網(wǎng)絡之間進行了嚴格控制。當然這里沒有考慮內(nèi)部入侵,以及內(nèi)部IP盜用行為,這也就是FreeBSD防火墻的局限性。不過可以添加一塊網(wǎng)卡,把企業(yè)內(nèi)部人員的網(wǎng)絡單獨用一個網(wǎng)卡來進行隔離,達到彌補的辦法。
好了,以上為我使用FreeBSD防火墻保護企業(yè)網(wǎng)絡的個人做法,希望能給一部分企業(yè)網(wǎng)管有所幫助。 文章錄入:csh 責任編輯:csh
1、WEB服務器兩臺、一臺企業(yè)主頁,一臺做BBS,希望IP地址為xxx.xxx.xxx.001和xxx.xxx.xxx.002
2、DNS服務器一臺,并且兼帶企業(yè)E-mail服務,IP地址為xxx.xxx.xxx.003,把www.testdomain.com解析到xxx.xxx.xxx.001以及bbs.testdomain.com解析到xxx.xxx.xxx.002
3、企業(yè)內(nèi)部局域網(wǎng)絡,計算機N臺,IP地址為10.125.0.0到10.125.255.255
對于這樣的一個企業(yè),我們首先要設計好網(wǎng)絡構架,在設計的同時要考慮到各個服務器以及內(nèi)部網(wǎng)絡各放在什么位置,才能更有效的配合防火墻,使得防火墻對每個部分都能充分的保護。
我們首先來分析一下“黑客”入侵的手段和途徑,作為一個入侵者,他的第一步自然是先要找到目標企業(yè)在網(wǎng)絡中的位置,假設他已經(jīng)知道該企業(yè)沒有使用主機托管服務,而是和企業(yè)的網(wǎng)絡放在了一起,那么他只須ping一下該企業(yè)的主頁就能了解到該企業(yè)的IP地址為xxx.xxx.xxx.001和xxx.xxx.xxx.002,而另外還有一臺DNS服務器,也可以使用nslookup這樣的工具,一下就能查到目標企業(yè)的DNS服務器為地址xxx.xxx.xxx.003,并且他還會計劃,假設已經(jīng)進入以上三臺服務器中的一臺,他就會馬上分析網(wǎng)絡結構,并且進入內(nèi)網(wǎng),獲取內(nèi)部網(wǎng)絡員工資料,以及很多重要數(shù)據(jù)。從上面看得出來,要保護這個網(wǎng)絡,我們需要做很多東西,首先我們可以想辦法對服務器之間以及服務器和內(nèi)部網(wǎng)絡之間進行隔離,但又能應用到他們應該有的功能,現(xiàn)在對該企業(yè)的網(wǎng)絡做如下策劃:
首先確定FreeBSD防火墻是作為企業(yè)連接到Internet服務器的唯一途徑,然后對FreeBSD進行一定的設置,開啟它的ipfirewall以及NATD功能,上圖告訴了我們現(xiàn)在是把WWW、BBS、DNS等服務器都放在內(nèi)部進行保護,所以在防火墻要開啟NATD的反向代理功能,首先我們把xxx.xxx.xxx.001,xxx.xxx.xxx.002,xxx.xxx.xxx.003,綁定在FreeBSD外部網(wǎng)卡上,假設外部網(wǎng)卡號為fxp0,在rc.conf里我們需要設置如下:
ifconfig_fxp0="inet xxx.xxx.xxx.001 netmask 255.255.255.0"
ifconfig_fxp0_alias0="inet xxx.xxx.xxx.002 netmask 255.255.255.0"
ifconfig_fxp0_alias1="inet xxx.xxx.xxx.003 netmask 255.255.255.0"
綁好之后我們現(xiàn)在就開始分析了,首先我們來看看內(nèi)部網(wǎng)絡,內(nèi)部要上Internet就必須要有一個網(wǎng)關,并且讓他們正常的使用網(wǎng)絡,假設FreeBSD內(nèi)部網(wǎng)卡編號為fxp1,那么我們還要在rc.conf里加入:
ifconfig_fxp1="inet 10.125.0.1 netmask 255.255.0.0"
然后在防火墻規(guī)則里加上:
divert 8668 ip from any to any via fxp0
這條規(guī)則,允許NATD服務,僅允許NATD服務還不行,還要設置內(nèi)部網(wǎng)絡能連接到Internet,我們再加上:
allow ip from any to 10.125.0.0/16
allow ip from 10.125.0.0/16 to any
內(nèi)部網(wǎng)絡設置Gateway為10.125.0.1,這樣企業(yè)的內(nèi)部網(wǎng)絡就能正常連接到Internet了。
然后我們來看看WWW服務器,這個服務器一般來說只要開放三個端口就夠了,第一個端口自然是HTTP端口不用說了,第二個端口那就是ftp端口以及ftp數(shù)據(jù)端口,其中HTTP端口自然是讓Internet上以及企業(yè)內(nèi)部訪問的端口,而FTP端口是用來更新主頁或做別的事的,并且只須要企業(yè)內(nèi)部人員訪問就足夠了,當然有必要的話還要開telnet或ssh端口,這是方便企業(yè)內(nèi)部系統(tǒng)管理員遠程管理的,這里我建議使用ssh,并且為了防止萬一入侵者進來了,他可能要對其他機器進行攻擊,我決定對WWW服務器進行單獨分離,現(xiàn)在假設FreeBSD的內(nèi)部網(wǎng)卡編號為fxp1,我們編輯rc.conf文件,加上:
ifconfig_fxp1_alias0 ="inet 10.80.0.1 netmask 255.255.255.0"
然后我們把WWW的服務器設置成10.80這個網(wǎng)段,網(wǎng)關為10.80.0.1,這樣就把WWW服務器單獨劃在了一個特殊的區(qū)域里了,假設我們設置WWW的IP為10.80.0.80現(xiàn)在我們再設置防火墻規(guī)則:
allow tcp from any to xxx.xxx.xxx.001 80 in
allow tcp from xxx.xxx.xxx.001 80 to any out //允許任意地方能訪問防火墻的80
allow tcp from 10.80.0.80 80 to any out
allow tcp from any to 10.80.0.80 80 in //允許任意地方訪問WWW服務器的80端口
allow tcp from 10.125.0.0/16 to 10.80.0.80 21 in
allow tcp from 10.125.0.0/16 to 10.80.0.80 20 in
allow tcp from 10.80.0.80 21 to 10.125.0.0/16 out
allow tcp from 10.80.0.80 20 to 10.125.0.0/16 out //允許內(nèi)部網(wǎng)絡使用FTP服務器連接WWW服務器
設置完成防火墻規(guī)則還不行還需要設置NATD,我們設置NATD為:
redirect_port tcp 10.80.0.80:80 xxx.xxx.xxx.001:80
這樣設置以后,WWW服務器就可以允許企業(yè)內(nèi)部人員順利的更新主頁和瀏覽主頁了,而Internet卻只能瀏覽WWW服務器上的主頁,就算萬一WWW服務器利用HTTP服務器入侵了該機器,由于該服務器的各種連接都被放火墻阻斷,而無法對企業(yè)內(nèi)部網(wǎng)絡進行入侵和破壞,達到充分保護WWW服務器以及內(nèi)部網(wǎng)絡的目的。
現(xiàn)在我們再來分析DNS服務器,由于BBS服務器和WWW服務器實質上都一樣這里就不討論了,DNS服務器自然要提供DNS服務器,也就是UDP53端口,由于同時還帶MAIL功能,所以還要開放SMTP端口以及POP3端口,而POP3服務器同樣只允許內(nèi)部企業(yè)訪問,所以我們給rc.conf加入:
ifconfig_fxp1_alias0="inet 10.80.2.1 netmask 255.255.255.0"
然后給DNS服務器設置IP為10.80.2.53,設置防火墻規(guī)則為:
allow udp from any to xxx.xxx.xxx.003 53 in
allow udp from xxx.xxx.xxx.003 53 to any out //允許任意地方能訪問防火墻的53端口
allow tcp from any to xxx.xxx.xxx.003 25 in
allow tcp from xxx.xxx.xxx.003 25 to any out //允許任意地方能訪問防火墻的smtp端口
allow udp from 10.80.2.53 53 to any out
allow udp from any to 10.80.2.53 53 in //允許任意地方訪問DNS服務器的53端口
allow tcp from any to 10.80.2.53 25 in
allow tcp from 10.80.2.53 25 to any out //允許任意地方訪問DNS的SMTP端口
allow tcp from 10.125.0.0/16 to 10.80.2.53 110 in
allow tcp from 10.80.2.53 110 to 10.125.0.0/16 out //允許企業(yè)內(nèi)部訪問DNS的POP3端口
NATD設置為:
redirect_port udp 10.80.2.53:53 xxx.xxx.xxx.003:53 //把10.80.2.53的53轉到xxx.xxx.xxx.003的53上,使用的UDP。
redirect_port tcp 10.80.2.53:25 xxx.xxx.xxx.003:25 //把10.80.2.53的25轉到xxx.xxx.xxx.003的25上,使用的TCP。
按照上面的規(guī)則設置好企業(yè)網(wǎng)絡后,使得企業(yè)網(wǎng)絡保護更加的嚴密,服務器和服務器之間以及服務器和企業(yè)內(nèi)部網(wǎng)絡之間進行了嚴格控制。當然這里沒有考慮內(nèi)部入侵,以及內(nèi)部IP盜用行為,這也就是FreeBSD防火墻的局限性。不過可以添加一塊網(wǎng)卡,把企業(yè)內(nèi)部人員的網(wǎng)絡單獨用一個網(wǎng)卡來進行隔離,達到彌補的辦法。
好了,以上為我使用FreeBSD防火墻保護企業(yè)網(wǎng)絡的個人做法,希望能給一部分企業(yè)網(wǎng)管有所幫助。 文章錄入:csh 責任編輯:csh
相關文章
路由器+WIC-1ADSL的配置靜態(tài)和動態(tài)
路由器+WIC-1ADSL的配置靜態(tài)和動態(tài)...2007-09-09

