不卡AV在线|网页在线观看无码高清|亚洲国产亚洲国产|国产伦精品一区二区三区免费视频

學(xué)習(xí)啦 > 學(xué)習(xí)電腦 > 電腦安全 > 防火墻知識(shí) >

防火墻對FTP的影響及故障排除分析

時(shí)間: 加城1195 分享

  防火墻借由監(jiān)測所有的封包并找出不符規(guī)則的內(nèi)容,可以防范電腦蠕蟲或是木馬程序的快速蔓延。這篇文章主要介紹了淺談防火墻對FTP的影響及故障排除分析,需要的朋友可以參考下

  具體介紹

  FTP是常見的基于TCP的網(wǎng)絡(luò)服務(wù),它使用了兩個(gè)TCP連接來建立邏輯通信信道,即控制連接和數(shù)據(jù)連接。當(dāng)客戶端與服務(wù)器建立一個(gè)FTP會(huì)話時(shí),使用TCP創(chuàng)建一個(gè)持久的控制連接以傳遞命令和應(yīng)答。當(dāng)發(fā)送文件和其它數(shù)據(jù)傳輸時(shí),它們在獨(dú)立的TCP數(shù)據(jù)連接上進(jìn)行傳遞,這個(gè)連接根據(jù)需要?jiǎng)?chuàng)建和拆除。

  更為復(fù)雜的是,F(xiàn)TP標(biāo)準(zhǔn)指定了創(chuàng)建數(shù)據(jù)連接的兩種不同方法,即正常(主動(dòng))數(shù)據(jù)連接和被動(dòng)數(shù)據(jù)連接。FTP的控制連接總是由客戶端首先發(fā)起的,主動(dòng)數(shù)據(jù)連接是由服務(wù)器端發(fā)起的,被動(dòng)數(shù)據(jù)連接是由客戶端發(fā)起的。

  成功建立控制連接后,在進(jìn)行主動(dòng)連接時(shí),客戶端發(fā)送PORT命令,其中內(nèi)嵌了地址和端口信息,以告知服務(wù)器進(jìn)行連接,然后服務(wù)器打開默認(rèn)端口20建立到客戶端已告知地址和端口的數(shù)據(jù)連接。在進(jìn)行被動(dòng)連接時(shí),客戶機(jī)使用PASV命令告訴服務(wù)器等待客戶機(jī)建立數(shù)據(jù)連接,服務(wù)器響應(yīng),告訴客戶機(jī)為了數(shù)據(jù)傳輸它應(yīng)該使用服務(wù)器上的什么端口(隨機(jī)打開)。這種工作機(jī)制帶來了一個(gè)嚴(yán)重的問題:在FTP的命令(PORT或PASV)或?qū)λ鼈兊幕卮鹬袀鬟fIP地址及端口號(hào)與網(wǎng)絡(luò)分層機(jī)制嚴(yán)重沖突,在FTP客戶端與服務(wù)器的通信信道之間的網(wǎng)關(guān)設(shè)備(防火墻或路由器)上啟用了NAT功能的情況下將出現(xiàn)連接性問題。

  防火墻對于像FTP這樣的多端口連接的TCP應(yīng)用,其影響是深遠(yuǎn)的,在復(fù)雜的網(wǎng)絡(luò)環(huán)境中,更是由于設(shè)備、軟件的多樣性可能導(dǎo)致不可預(yù)知的問題。作為一名網(wǎng)絡(luò)管理員,深入了解防火墻和FTP的工作原理及其在NAT環(huán)境下防火墻對FTP的影響,對于選擇FTP服務(wù)軟件及安裝、部署、管理及維護(hù)FTP服務(wù)和實(shí)際工作中排除FTP應(yīng)用故障是大有裨益的。本文就以一個(gè)在實(shí)際環(huán)境中比較常見的FTP部署和應(yīng)用拓?fù)錇槔?,來詳?xì)解讀防火墻(啟用了NAT功能)對FTP的影響。如有不當(dāng)之處,敬請指正。

  一、網(wǎng)絡(luò)拓?fù)鋱D

  windows_ftp_config_1

  二、主動(dòng)模式的連接分析

  如本例中網(wǎng)絡(luò)拓?fù)渌?,IP為192.168.1.1客戶端計(jì)算機(jī)打開一個(gè)可用的TCP端口1025,經(jīng)過其前端的防火墻進(jìn)行NAT轉(zhuǎn)換成地址1.1.1.1和端口1025后建立到目標(biāo)地址為2.2.2.2的21端口的連接,然后服務(wù)器前端的防火墻將此連接信息傳遞到服務(wù)器172.16.6.1的21端口,成功建立FTP控制連接。

  服務(wù)器則經(jīng)由這個(gè)已經(jīng)建立的邏輯連接通道返回?cái)?shù)據(jù)包,與客戶端進(jìn)行交互。接著,客戶端發(fā)出PORT指令,在指令中嵌入了地址信息(IP:192.168.1.1,Port:1026),告知服務(wù)器用于數(shù)據(jù)連接,并打開端口1026,等待服務(wù)器連接。當(dāng)承載PORT指令的數(shù)據(jù)包到達(dá)客戶機(jī)前端的防火墻時(shí),由于NAT的緣故,在成功創(chuàng)建NAT表項(xiàng),改寫數(shù)據(jù)包的IP和TCP端口信息后:

  如果此時(shí)防火墻不能識(shí)別并檢查此連接是FTP應(yīng)用,便不能對PORT指令中嵌入的地址和端口信息進(jìn)行改寫,則將此數(shù)據(jù)包通過先前已建立的控制連接通道傳遞到服務(wù)器后,服務(wù)器則打開20端口,將建立到192.168.1.1的1026端口的數(shù)據(jù)連接。

  顯然,此連接數(shù)據(jù)包要么被其前端的防火墻丟棄,要么在流入因特網(wǎng)后立刻被丟棄,永遠(yuǎn)無法到達(dá)客戶端。在這種情況下,客戶端一直處在控制連接階段發(fā)送含有PORT指令的數(shù)據(jù)包,以便建立數(shù)據(jù)連接;而服務(wù)器則在打開了20端口后,一直嘗試建立到客戶端的數(shù)據(jù)連接,但始終收不到應(yīng)答。

  直接的結(jié)果就是:客戶端成功連接了FTP服務(wù)器,卻無法進(jìn)行數(shù)據(jù)傳輸。這里可能還包含一個(gè)隱藏的安全威脅:如果恰巧192.168.1.1對于服務(wù)器主機(jī)來說是直接可達(dá)的,則此時(shí)服務(wù)器便將數(shù)據(jù)包發(fā)送到這臺(tái)計(jì)算機(jī),在這兩臺(tái)主機(jī)之間產(chǎn)生莫名的數(shù)據(jù)流。其他可能更隱蔽、更不好的情況,筆者不再做假設(shè)論述了。

  如果此時(shí)防火墻能支持對FTP應(yīng)用進(jìn)行審查和跟蹤,即能識(shí)別PORT指令中的內(nèi)容,就將其中嵌入的地址信息改寫成(IP:1.1.1.1,PORT:1026)并動(dòng)態(tài)打開1026端口,并建立新的NAT轉(zhuǎn)換表項(xiàng),等待連接,則當(dāng)服務(wù)器收到PORT指令后,打開20端口,建立到1.1.1.1上1026端口的連接,成功交互后,便能進(jìn)行數(shù)據(jù)傳輸了。

  三、被動(dòng)模式的連接分析

  控制連接建立后,客戶端發(fā)出的PASV指令到達(dá)服務(wù)器,服務(wù)器則隨機(jī)打開一個(gè)可用的TCP端口,并將地址和端口信息(IP:172.16.6.1,Port:50000)返回給客戶端,告知客戶端利用這些信息進(jìn)行數(shù)據(jù)連接。當(dāng)包含服務(wù)器地址信息的這個(gè)數(shù)據(jù)包到達(dá)其前端的防火墻時(shí):

  如果防火墻不能識(shí)別并檢查此數(shù)據(jù)包的應(yīng)用層數(shù)據(jù),無法判定它是FTP的PASV指令的返回包,并對其中嵌入的地址信息進(jìn)行重寫,則當(dāng)此數(shù)據(jù)包返回到客戶端時(shí),客戶端將隨機(jī)打開端口3000,以目的地址172.16.6.1、端口50000來進(jìn)行數(shù)據(jù)連接,同理,此連接數(shù)據(jù)包永遠(yuǎn)不能到達(dá)服務(wù)器端。

  這種情況下,客戶端將一直嘗試建立數(shù)據(jù)連接,卻總是不能收到應(yīng)答。這里可能包含的隱藏安全威脅,如前所述。

  如果防火墻能對FTP應(yīng)用進(jìn)行審查和跟蹤,并將返回包中嵌入的服務(wù)器地址信息進(jìn)行重寫,即轉(zhuǎn)換成(IP:2.2.2.2,Port:50000),然后建立新的NAT表項(xiàng),動(dòng)態(tài)打開50000端口,等待連接。則此返回包到達(dá)客戶端時(shí),客戶端將隨機(jī)打開端口3000,以目的地址2.2.2.2、端口50000來新建連接,便能成功建立數(shù)據(jù)連接。

  根據(jù)以上分析,為成功進(jìn)行FTP數(shù)據(jù)傳輸,主動(dòng)模式下要求客戶機(jī)前端的防火墻在啟用NAT后能對FTP應(yīng)用進(jìn)行審查和跟蹤,識(shí)別并改寫PORT指令中的客戶端地址信息;被動(dòng)模式下則要求服務(wù)器前端的防火墻能改寫服務(wù)器響應(yīng)PASV指令后返回?cái)?shù)據(jù)包中的服務(wù)器地址信息。

  當(dāng)然,為保險(xiǎn)起見,為保證FTP應(yīng)用的正常使用,建議兩端的防火墻都需要支持對FTP進(jìn)行識(shí)別和內(nèi)容審查。

  四、網(wǎng)絡(luò)防火墻與FTP

  大多數(shù)網(wǎng)管設(shè)置防火墻的默認(rèn)訪問控制策略是:允許從內(nèi)部到外部的一切流量,禁止從外部到內(nèi)部的一切流量。

  就FTP應(yīng)用來說,為了簡化防火墻策略的配置又兼顧安全策略要求,客戶機(jī)選擇被動(dòng)模式進(jìn)行數(shù)據(jù)連接較好,不需要對其前端的防火墻設(shè)置特別的訪問控制策略,但要求服務(wù)器前端的防火墻能動(dòng)態(tài)打開數(shù)據(jù)連接所需的隨機(jī)端口;服務(wù)器端則選擇主動(dòng)連接較好,為允許客戶端的訪問,其前端防火墻的訪問控制策略僅需要顯式對外開放21端口即可,但需要客戶機(jī)前端的防火墻能動(dòng)態(tài)打開數(shù)據(jù)連接所需的端口。

  從方便使用的角度考慮,既然提供FTP服務(wù),就要配置好服務(wù)器前端的防火墻,使其訪問控制策略能支持兩種模式下的FTP服務(wù)正常工作。

  如果客戶機(jī)前端的NAT設(shè)備為路由器,不是防火墻,并不能審查和跟蹤FTP應(yīng)用,從前面的分析可以推斷出,主動(dòng)模式下肯定存在連接性問題,需要以被動(dòng)方式建立數(shù)據(jù)連接才能成功使用FTP服務(wù)。

  如果FTP控制端口非默認(rèn),而是定制的TCP端口(比如2121),在這種情況下,服務(wù)器前端的防火墻通過配置命令顯式指示FTP的控制端口,便能進(jìn)行審查和跟蹤。但客戶機(jī)前端的防火墻即使其能識(shí)別默認(rèn)端口下的FTP應(yīng)用,此時(shí)也會(huì)把控制端口非21的FTP服務(wù)當(dāng)作一般的TCP應(yīng)用對待,這種情形下,便不能改寫主動(dòng)模式下的客戶端地址端口信息,導(dǎo)致服務(wù)器在建立數(shù)據(jù)連接時(shí)失敗,但客戶端使用被動(dòng)連接模式能正常工作。

  綜上所述,客戶端使用被動(dòng)方式連接FTP服務(wù)器是最恰當(dāng)?shù)模茏畲笙薅鹊亟档瓦B接性問題。同時(shí)降低了對客戶機(jī)前端防火墻備的要求,不需要像主動(dòng)方式那樣動(dòng)態(tài)開放允許輸入的隨機(jī)端口,把可能的安全威脅推給了服務(wù)器端。這或許是微軟的IE瀏覽器(資源管理器)默認(rèn)設(shè)置使用被動(dòng)方式的原因。如圖表2所示。另外需要注意的,在Windows命令行下,F(xiàn)TP默認(rèn)是使用主動(dòng)方式進(jìn)行數(shù)據(jù)連接的。

  windows_ftp_config_2

  五、主機(jī)防火墻與FTP

  如果將FTP服務(wù)器架設(shè)在Windows Server 2008上,由于它內(nèi)置Windows防火墻,而且默認(rèn)已經(jīng)啟用,所以客戶端建立到這臺(tái)FTP服務(wù)器的控制連接便會(huì)被封鎖,此時(shí)需要在防火墻上開放對TCP 21端口的傳入連接。

  被動(dòng)模式下,由于服務(wù)器通過控制信道將用來監(jiān)聽客戶端請求的端口號(hào)是隨機(jī)產(chǎn)生的,此時(shí)需要在防火墻上開放的傳入連接的端口也是隨機(jī)的。由于Windows防火墻不能像網(wǎng)絡(luò)防火墻那樣根據(jù)需要?jiǎng)討B(tài)打開和關(guān)閉FTP服務(wù)要求的隨機(jī)端口,所以需要靜態(tài)開放全部可能的隨機(jī)端口。

  Windows Server 2008默認(rèn)的動(dòng)態(tài)端口范圍是49152-65535,而Windows防火墻的例外開放規(guī)則只能針對單一端口來開放,要開放49152-65535這個(gè)范圍內(nèi)的一萬多個(gè)端口,非常不切實(shí)際,更是會(huì)給運(yùn)行FTP服務(wù)器的主機(jī)帶來嚴(yán)重的安全威脅。

  所幸的是,基于IIS7.0建立的FTP服務(wù)器允許將端口號(hào)固定在自行指定的一個(gè)范圍中,如50000-50005,此時(shí)便只需要開放這一小段范圍的端口即可,大大提升了安全性和配置Windows防火墻的效率。如果服務(wù)器上部署的是第三方防火墻,則需要慎重考慮如何設(shè)置使之能安全保障FTP服務(wù)的正常運(yùn)行。

  補(bǔ)充閱讀:防火墻主要使用技巧

  一、所有的防火墻文件規(guī)則必須更改。

  盡管這種方法聽起來很容易,但是由于防火墻沒有內(nèi)置的變動(dòng)管理流程,因此文件更改對于許多企業(yè)來說都不是最佳的實(shí)踐方法。如果防火墻管理員因?yàn)橥话l(fā)情況或者一些其他形式的業(yè)務(wù)中斷做出更改,那么他撞到槍口上的可能性就會(huì)比較大。但是如果這種更改抵消了之前的協(xié)議更改,會(huì)導(dǎo)致宕機(jī)嗎?這是一個(gè)相當(dāng)高發(fā)的狀況。

  防火墻管理產(chǎn)品的中央控制臺(tái)能全面可視所有的防火墻規(guī)則基礎(chǔ),因此團(tuán)隊(duì)的所有成員都必須達(dá)成共識(shí),觀察誰進(jìn)行了何種更改。這樣就能及時(shí)發(fā)現(xiàn)并修理故障,讓整個(gè)協(xié)議管理更加簡單和高效。

  二、以最小的權(quán)限安裝所有的訪問規(guī)則。

  另一個(gè)常見的安全問題是權(quán)限過度的規(guī)則設(shè)置。防火墻規(guī)則是由三個(gè)域構(gòu)成的:即源(IP地址),目的地(網(wǎng)絡(luò)/子網(wǎng)絡(luò))和服務(wù)(應(yīng)用軟件或者其他目的地)。為了確保每個(gè)用戶都有足夠的端口來訪問他們所需的系統(tǒng),常用方法是在一個(gè)或者更多域內(nèi)指定打來那個(gè)的目標(biāo)對象。當(dāng)你出于業(yè)務(wù)持續(xù)性的需要允許大范圍的IP地址來訪問大型企業(yè)的網(wǎng)絡(luò),這些規(guī)則就會(huì)變得權(quán)限過度釋放,因此就會(huì)增加不安全因素。服務(wù)域的規(guī)則是開放65535個(gè)TCP端口的ANY。防火墻管理員真的就意味著為黑客開放了65535個(gè)攻擊矢量?

  三、根據(jù)法規(guī)協(xié)議和更改需求來校驗(yàn)每項(xiàng)防火墻的更改。

  在防火墻操作中,日常工作都是以尋找問題,修正問題和安裝新系統(tǒng)為中心的。在安裝最新防火墻規(guī)則來解決問題,應(yīng)用新產(chǎn)品和業(yè)務(wù)部門的過程中,我們經(jīng)常會(huì)遺忘防火墻也是企業(yè)安全協(xié)議的物理執(zhí)行者。每項(xiàng)規(guī)則都應(yīng)該重新審核來確保它能符合安全協(xié)議和任何法規(guī)協(xié)議的內(nèi)容和精神,而不僅是一篇法律條文。

  四、當(dāng)服務(wù)過期后從防火墻規(guī)則中刪除無用的規(guī)則。

  規(guī)則膨脹是防火墻經(jīng)常會(huì)出現(xiàn)的安全問題,因?yàn)槎鄶?shù)運(yùn)作團(tuán)隊(duì)都沒有刪除規(guī)則的流程。業(yè)務(wù)部門擅長讓你知道他們了解這些新規(guī)則,卻從來不會(huì)讓防火墻團(tuán)隊(duì)知道他們不再使用某些服務(wù)了。了解退役的服務(wù)器和網(wǎng)絡(luò)以及應(yīng)用軟件更新周期對于達(dá)成規(guī)則共識(shí)是個(gè)好的開始。運(yùn)行無用規(guī)則的報(bào)表是另外一步。黑客喜歡從來不刪除規(guī)則的防火墻團(tuán)隊(duì)。


防火墻對FTP的影響及故障排除分析相關(guān)文章:

1.內(nèi)網(wǎng)搭建Ftp服務(wù)的注意事項(xiàng)

2.iss ftp防火墻如何設(shè)置

3.如何解決飛魚星路由器常見問題

4.關(guān)于局域網(wǎng)癱瘓的解決方法有哪些

5.ftp防火墻客戶端阻止我該怎么辦

4041257