湖北省荊門市公安局 馬宇宙
自制單向數據傳輸系統研究
湖北省荊門市公安局馬宇宙
隨著網絡安全意識的提升,很多企事業單位都在加強網絡安全技術措施。一些企事業單位在保護自己的私有數據資源時,都采取了內外網安全隔離措施。這里就涉及到了一個從低密到高密級別單向數據傳輸問題。很多單位花費重金,購買所謂的單向光閘,來保證內部網絡數據的安全性。然而,對于中小企事業單位來說,這方面的投入就顯得過于奢侈。那如何以更少的資金解決數據單項傳輸保障內網數據安全呢?這是值得我們思考的話題。
網絡;自制;單向;內外網傳輸;研究
網絡信息安全已經成為當今世界熱門課題之一,已經引起社會廣泛關注。當前網絡信息安全形勢日趨嚴峻,長期以來在數據跨網交換中存在著嚴重的安全隱患。因此,建立安全高效的內外網單向數據傳輸系統很有必要。目前商用的單向光閘成為了眾多互聯網企業的首選,其投入費用較高。如果我們采用現有軟硬件技術及設備進行拼裝,實現安全的內外網數據單向傳輸,將是一項有意義的研究。
商用單向光閘,它解決了內網和外網之間安全隔離、可控的數據交換需求,采用單向光閘隔離涉密網絡與非涉密網絡,保證涉密數據不從高密級網絡流向低密級網絡。
1.1商用單向光閘系統組成
單向隔離光閘由三部分組成:內網單元、外網單元、分光單向傳輸單元。其中內網單元和內網相連,外網單元與外網相連,分光單向傳輸單元是內外網之間唯一且安全的數據傳輸通道。
1.2商用單向光閘工作原理
外網單元有數據傳輸請求時,將激活分光單向傳輸單元,向其發送數據,分光單向傳輸單元采用單向光信號向內網單元傳遞,內網單元接到傳輸的數據光信號后,對數據進行采集、保存、處理。
參照單向光閘系統工作原理,我們要自制一套完備的內外網單向數據傳輸系統,也同樣需要考慮以下幾方面的問題:
2.1嚴格的內外網物理隔離
內外網交換安全,如果從物理上保證了單向的數據傳輸,那就是可靠的的物理隔離,目前,光閘提供了很好的參考,我們也可以采用光信號的單向,穩定,傳輸快優點,對兩網進行物理隔離。
2.2傳輸數據的相對完整性
數據傳輸重要的是檢測出無效數據和有效數據,拋棄無效數據。在傳輸過程中,我們可以借用現有的網絡傳輸協議來實現內外網數據傳輸的安全性。甚至可以在傳輸的數據包內進行二次的數據完整性校驗,防止無效的數據被還原存儲。
2.3命令與數據的并行傳輸
在傳輸中,我們不僅可傳數據,同時可以并行傳輸相關命令,實現數據、命令的同步傳輸。對于僅為文件應用的傳輸可不用考慮此點。
3.1自制單向數據傳輸系統的架構
自制單向數據傳輸系統我們同樣可設計成三部分,內網單元、外網單元、分光單向傳輸單元。我們設計的外網單元可理解為:在外網上,網絡客戶端向服務端發送網絡數據,數據在網絡中采用光纖傳輸,我們對光纖數據進行分光,分光后,把數據導向內網,在內網單元里對網絡傳輸的光信號數據進行采集組裝還原。作者的一個經典配備案例為:一臺裝有雙網卡計算機作為外網單元(設置真機一個網卡,VM虛擬機一個網卡,兩網卡可通過TCP/IP協議通信),一臺單網卡計算機作為內網單元,如果外網單元網卡是電口,必須加裝一套光纖收發器(雙纖,一收一發)將電信號轉化為光信號。通過分光器將其中一根發送數據的纖進行分光,將分光后的信號直接接入內網單元光口(內網單元網口為光口)或者加裝光纖收發器轉換成電信號后接入內網單元電口(內網單元網口為電口),再在內網單元中啟動監聽采集還原程序,將網口上接收的數據包進行采集重組還原。
3.2單向數據傳輸系統的數據完整性設計
TCP傳輸協議是目前網絡數據傳輸公認的比較安全的協議,它擁有七層網絡模型傳輸層以下很多安全措施(保證其傳輸數據的完整性),我們可以充分依賴這些協議機制,保證外網到內網數據傳輸的相對完整性。以此滿足我們自制單向數據傳輸系統數據校驗功能。當然,我們可以對數據進行二層校驗,即在傳輸的數據包中增加數據內容,附帶傳輸數據的hash值。內網單元組裝還原數據后,可進行更為嚴格的hash值數據校驗,保證數據完整可靠。作者實現中采用了一個偷懶的做法:對所傳數據用winrar壓縮成一個文件,然后采用SMTP傳輸協議(下層為TCP協議),內網單元組裝還原后,是一封帶一壓縮文件附件的郵件,壓縮文件本身就具有完整性校驗能力,能校驗成功表示外網到內網數據完整。
3.3自制單向數據傳輸系統關鍵環節研究
自制單向數據傳輸系統中,外網單元的部分很好實現,只需要在外網絡產生一條傳輸數據的網絡光通道,且能分光到內網即可。該系統最關鍵環節就在TCP協議數據還原部分。目前協議數據監聽還原,很多人在研究,算法都不一樣,本人經過多次的研究發現,一套懶辦法可以讓數據還原做得很好。以往,我們的算法就是:監聽數據包,來一個處理一個,寫一個,遇到重傳或者累傳,拼接數據就顯得很麻煩,雖然,這類算法對節約內存比較有用,但算法卻顯得散亂、復雜。而現今內存大小已經不再是一個大問題,8G、16G內存已經很常見,我們不需要為節約內存而對數據包來一個處理一個,我們只需要把一個四元組(源IP、目的IP、源端口、目的端口)從連接成功(TCP標志位SYN同步)到數據傳輸結束(TCP標志位FIN)的所有數據包(含重傳、累傳)都逐一存放到一個鏈表結構里,我們要做的工作就是:從FIN包開始回溯,每次減去包長就是我們向前回溯的那個TCP包序列號。通過此法,只要一個一個向前找,找到SYN同步包為止,不管數據因傳輸問題出現多少次重傳、累傳,只要分光信號完整,我們總能找出鏈表結構中那一條完整的數據包鏈,最終完全還原整個四元組TCP協議數據。
3.4自制單向數據傳輸系統吞吐量研究
自制單向數據傳輸系統的吞吐量主要涉及以下幾個關鍵速度:一是網絡傳輸速度,二是計算機還原數據包速度,三是內網存儲速度。網絡傳輸速度跟網卡有關,內外網單元的三個網口選購千兆網口基本能滿足不同的需求。計算機還原速度跟計算機硬件配置有關,配備高性能的計算機,或者復用一些工作量不大的高性能服務器均可。內網存儲速度跟內網存儲的類型接口有關,選寫入速度快的存儲可以提高吞吐量。當然,如果網絡速度遠遠高過存儲速度,可以采用多線程,標志位的方式將要傳輸的數據每次分為四份,在分光時,采取一分四的分光器分光,導入到4臺內網機并行處理,一臺內網機只存其中的網絡傳輸中的四分之一數據,這樣對于網速快但內網是多臺老式機器的應用場景可明顯提高傳輸的吞吐量。
自制單向數據傳輸系統作為小企事業單位來說,既節約了投資成本,又有力保障了私有網絡數據的安全。從節約的角度出發,實現自制單向數據傳輸是一個很好的研究課題,如果考慮1分多的并行分光,將有很大的速度拓展空間。
[1]TCP/IP詳解 卷1:協議(美)Gary R.Wright,W.Richard Stevens.
[2]蔡東蛟.安全隔離與信息交換系統實現機理與應用[J].信息技術,2007(12).
[3]孔斌,杜虹,馬朝斌.安全隔離與信息交換技術發展及應用[J].計算機安全,2003.
[4]張仕斌,譚三,蔣毅.網絡安全技術[M].清華大學出版社,2004,8.
[5]蒼志剛,潘愛民.WINDOWS平臺下的網絡監聽技術[J].計算機工程與設計,2004(2):248-251.
[6]黃超.WINDOWS網絡編程[M].人民郵電出版社,2003.
[7]Kenneth D.Reed.TCP/IP基礎[M].北京.電子工業出版社,2003.
[8]張海藩.軟件工程論[M].北京:清華大學出版社,2008.