摘 要:針對(duì)目前越來(lái)越突出的內(nèi)部網(wǎng)絡(luò)安全問(wèn)題,提出通過(guò)架設(shè)內(nèi)網(wǎng)監(jiān)控系統(tǒng)的方法來(lái)防止內(nèi)部信息泄漏,同時(shí)介紹了內(nèi)網(wǎng)監(jiān)控系統(tǒng)的定義及其開(kāi)發(fā)背景;接著分別從系統(tǒng)的硬件結(jié)構(gòu)、通信結(jié)構(gòu)和業(yè)務(wù)流程結(jié)構(gòu)三個(gè)方面分別介紹了內(nèi)網(wǎng)監(jiān)控系統(tǒng)架構(gòu)設(shè)計(jì)的思路和方法;最后探討了目前內(nèi)網(wǎng)監(jiān)控系統(tǒng)的發(fā)展趨勢(shì)。
關(guān)鍵詞:內(nèi)網(wǎng)監(jiān)控系統(tǒng);架構(gòu);設(shè)計(jì)
中圖法分類(lèi)號(hào):TP311.52文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1001—3695(2007)02—0305—03
隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,網(wǎng)絡(luò)安全問(wèn)題呈現(xiàn)出越來(lái)越復(fù)雜化的趨勢(shì),而在眾多的安全事件導(dǎo)致的經(jīng)濟(jì)損失中,內(nèi)部信息泄漏已經(jīng)占了相當(dāng)一部分的比例[1]。因此,對(duì)組織機(jī)構(gòu),特別是存在核心機(jī)密數(shù)據(jù)的組織結(jié)構(gòu)來(lái)說(shuō),如何防止內(nèi)部機(jī)要信息被非法竊取、竄改、破壞,是當(dāng)前信息安全建設(shè)的一個(gè)重點(diǎn)。
內(nèi)網(wǎng)監(jiān)控系統(tǒng)是指利用多種安全技術(shù)(密碼技術(shù)、網(wǎng)絡(luò)應(yīng)用監(jiān)控技術(shù)、端口應(yīng)用監(jiān)控技術(shù)、系統(tǒng)安全監(jiān)視技術(shù)、安全事件智能分析技術(shù)和審計(jì)跟蹤技術(shù)等),對(duì)內(nèi)網(wǎng)計(jì)算機(jī)及其存儲(chǔ)的信息進(jìn)行保護(hù)、監(jiān)控?cái)?shù)據(jù)流動(dòng)的全過(guò)程,使其不被非法復(fù)制、傳輸、竄改和破壞等。它可以有效地對(duì)內(nèi)部機(jī)密信息進(jìn)行保護(hù),對(duì)組織的安全體系建設(shè)起著越來(lái)越重要的作用。
1 系統(tǒng)的設(shè)計(jì)目標(biāo)
內(nèi)網(wǎng)監(jiān)控系統(tǒng)是為了滿(mǎn)足內(nèi)部局域網(wǎng)用戶(hù)對(duì)內(nèi)網(wǎng)信息安全進(jìn)行監(jiān)控管理的不同層次需求,主要針對(duì)目前普遍存在的內(nèi)網(wǎng)信息的安全隱患,為企事業(yè)管理人員提供一套監(jiān)督、檢查內(nèi)網(wǎng)被監(jiān)管主機(jī)重要信息流向的有效手段,并提供一定的防范措施。用一句話(huà)來(lái)概括就是防止除人腦記憶以外的一切信息泄露行為。具體地講,在功能上就是需要能夠?qū)崟r(shí)地檢測(cè)到用戶(hù)所進(jìn)行的非法操作并實(shí)施干預(yù),能夠?qū)崟r(shí)地監(jiān)控到用戶(hù)在電腦上的操作并記錄關(guān)鍵操作,從而實(shí)現(xiàn)網(wǎng)絡(luò)通信方式信息泄漏的防護(hù)、存儲(chǔ)媒體/介質(zhì)信息泄漏的防護(hù)、打印機(jī)監(jiān)控、顯示器監(jiān)控、個(gè)人計(jì)算機(jī)系統(tǒng)資源安全管理和個(gè)人計(jì)算機(jī)系統(tǒng)運(yùn)行狀況監(jiān)控六大主要功能。在性能方面應(yīng)該做到通信的暢通與高效,可靠性高,并且有一定的容錯(cuò)能力。
2 總體分析
整個(gè)內(nèi)網(wǎng)監(jiān)控系統(tǒng)龐大而又復(fù)雜,一個(gè)好的架構(gòu)設(shè)計(jì)不但能夠使系統(tǒng)各部分高效運(yùn)行,而且也能使得在設(shè)計(jì)編碼時(shí)取得事半功倍的效果。而整個(gè)架構(gòu)既包括系統(tǒng)在硬件上的分布,又包括在軟件層面上模塊的組織結(jié)構(gòu)及其業(yè)務(wù)流程。硬件是整個(gè)系統(tǒng)的核心,如果硬件的性能達(dá)不到要求,那么無(wú)論系統(tǒng)的軟件架構(gòu)做得多好也不能滿(mǎn)足系統(tǒng)的性能要求。
由于內(nèi)網(wǎng)監(jiān)控系統(tǒng)的信息流量非常大,單一的服務(wù)器不能滿(mǎn)足處理要求,這就需要尋找其他的多服務(wù)器的架構(gòu)方案,才能滿(mǎn)足大數(shù)據(jù)量處理的需求。在有了好的硬件架構(gòu)的基礎(chǔ)上,系統(tǒng)的軟件架構(gòu)則主要致力于模塊間的交互,使系統(tǒng)在高效運(yùn)行的基礎(chǔ)上盡量少占用系統(tǒng)資源,而內(nèi)網(wǎng)監(jiān)控系統(tǒng)信息流量的巨大,使得模塊間的通信方案和業(yè)務(wù)流程的設(shè)計(jì)顯得尤為重要。下面就以硬件架構(gòu)、通信架構(gòu)、業(yè)務(wù)流程的架構(gòu)三方面來(lái)分別說(shuō)明整個(gè)內(nèi)網(wǎng)監(jiān)控系統(tǒng)的架構(gòu)設(shè)計(jì)。
3 系統(tǒng)的架構(gòu)設(shè)計(jì)
3.1 系統(tǒng)的硬件架構(gòu)設(shè)計(jì)
(1)面臨的困難。由于需要實(shí)時(shí)進(jìn)行監(jiān)控,在響應(yīng)時(shí)間上有著較高的要求,這就使得對(duì)通信系統(tǒng)的性能有著非常高的要求;另外,由于通過(guò)電腦進(jìn)行信息泄露的方法非常多,如通過(guò)郵件、網(wǎng)頁(yè)、打印和移動(dòng)存儲(chǔ)設(shè)備等多種方式向外界傳遞信息。這就需要對(duì)整個(gè)終端系統(tǒng)進(jìn)行全方位的控制,從而使得需要監(jiān)控的項(xiàng)目非常多,信息流量非常大,這又對(duì)服務(wù)器的性能提出了非常高的要求,甚至單個(gè)服務(wù)器已經(jīng)不能滿(mǎn)足所有的監(jiān)控要求,因此必須采用多服務(wù)器模式才能滿(mǎn)足要求,從而加大了系統(tǒng)整體設(shè)計(jì)的困難。
(2)解決的辦法。為了解決信息流量過(guò)大的問(wèn)題,我們?cè)谙到y(tǒng)的物理架構(gòu)上采用了多層分級(jí)控制的結(jié)構(gòu),整個(gè)系統(tǒng)分三層,即管理層、服務(wù)器層和終端系統(tǒng)層。管理層由多個(gè)GUI管理中心所組成,每個(gè)GUI均可以控制任意一個(gè)終端;系統(tǒng)為一定數(shù)量的終端配置一臺(tái)服務(wù)器并將其命名為信息站,它直接負(fù)責(zé)它所控制的所有終端的事務(wù)處理,并將獲得的數(shù)據(jù)經(jīng)過(guò)匯總處理后再與GUI或服務(wù)中心進(jìn)行交互,每個(gè)終端只與它所對(duì)應(yīng)的信息站交互,多個(gè)信息站一起構(gòu)成了服務(wù)器層;而終端系統(tǒng)層就是被信息站所分割控制的終端系統(tǒng)的集合。這樣每個(gè)信息站只控制一部分終端,使得在終端與信息站之間的數(shù)據(jù)得到分流,有效地緩解了單個(gè)服務(wù)器的處理壓力。分流后的數(shù)據(jù)在各自的信息站被分析處理后再交給GUI作為控制的依據(jù)。另外系統(tǒng)將一些全局性的工作單獨(dú)分配給一個(gè)全局唯一的服務(wù)中心來(lái)完成。整個(gè)系統(tǒng)的物理架構(gòu)如圖1所示。
這樣整個(gè)系統(tǒng)在物理上就分為GUI、服務(wù)中心、信息站和終端四個(gè)部分。其各部分的功能如下所述:
(1)服務(wù)中心。它負(fù)責(zé)整個(gè)系統(tǒng)的部署、升級(jí)、初始化工作以及內(nèi)網(wǎng)即時(shí)拓?fù)錉顟B(tài)信息的集中管理,并對(duì)存儲(chǔ)在信息站的日志數(shù)據(jù)進(jìn)行統(tǒng)計(jì)分析,產(chǎn)生各種報(bào)表。全系統(tǒng)只有一臺(tái)服務(wù)中心,為了保證處理效率,架構(gòu)于工業(yè)級(jí)機(jī)架服務(wù)器硬件。
(2)信息站。它負(fù)責(zé)記錄各種日志數(shù)據(jù)以及探針傳來(lái)的原始文件等,并收集局部網(wǎng)絡(luò)的即時(shí)拓?fù)錉顟B(tài)信息,以提供給服務(wù)中心,考慮到信息站的負(fù)荷,每個(gè)信息站最多負(fù)責(zé)50臺(tái)終端;全系統(tǒng)有多個(gè)信息站,同樣為了處理效率,也架構(gòu)于工業(yè)級(jí)機(jī)架服務(wù)器硬件。
(3)GUI。實(shí)現(xiàn)網(wǎng)絡(luò)系統(tǒng)的集中管理,主要包括策略管理、配置管理、用戶(hù)管理和客戶(hù)端管理等,同時(shí)可以有多個(gè)GUI共同參與管理。
(4)終端。它是系統(tǒng)被監(jiān)控的主體,由探針?biāo)刂疲结樖且粋€(gè)服務(wù)程序,安裝在終端系統(tǒng)上,實(shí)現(xiàn)對(duì)系統(tǒng)的監(jiān)控,用于防止系統(tǒng)的任何重要數(shù)據(jù)泄漏,并向信息站傳遞監(jiān)控日志與原始文件。
系統(tǒng)之所以采用如圖1所示的架構(gòu)設(shè)計(jì)方案,主要是基于以下考慮。
①高效性。由于采用了多個(gè)信息站分別分割控制的結(jié)構(gòu),各信息站控制的終端數(shù)目較少,使得終端和GUI的信息流動(dòng)非常暢通;信息站之間互相獨(dú)立,不需要互相協(xié)調(diào),避免了采用分布式服務(wù)器系統(tǒng)所帶來(lái)的種種困難。使系統(tǒng)的效率得到了保證。
②經(jīng)濟(jì)性。在總性能相同的情況下,多個(gè)小服務(wù)器的價(jià)格比一臺(tái)高性能服務(wù)器明顯要便宜很多,而在功能上也完全能達(dá)到要求,采用這種方案可以節(jié)省大量的資金。
③可靠性。當(dāng)某臺(tái)信息站發(fā)生故障時(shí),這種設(shè)計(jì)方案就顯示出它的優(yōu)點(diǎn)。由于各信息站互不干擾,一臺(tái)信息站發(fā)生故障只會(huì)影響到它自己所控制的各終端,而對(duì)系統(tǒng)其他部分沒(méi)有影響,這樣就極大地增加了系統(tǒng)的可靠性。
④擴(kuò)展性。系統(tǒng)在使用的過(guò)程中不可避免地會(huì)產(chǎn)生各種變化,經(jīng)常需要增加或減少終端的數(shù)目。采用這種結(jié)構(gòu)的設(shè)計(jì)為系統(tǒng)的擴(kuò)展提供了支持。當(dāng)需要擴(kuò)充系統(tǒng)的終端數(shù)目時(shí),只要將終端直接掛在某信息站下或者增加一臺(tái)信息站就可以方便地將終端添加到系統(tǒng)中,而不需要對(duì)原來(lái)的系統(tǒng)產(chǎn)生什么影響。
3.2 系統(tǒng)的通信架構(gòu)設(shè)計(jì)
(1)總體設(shè)計(jì)思想。整個(gè)系統(tǒng)依據(jù)功能的需求,可以劃分為十多個(gè)平行的子系統(tǒng)。而這些子系統(tǒng)除探針只是裝在終端機(jī)器上外,其他的子系統(tǒng)都需要分布在兩個(gè)或兩個(gè)以上的系統(tǒng)上,如升級(jí)模塊被分成四個(gè)子模塊分別安裝在GUI、服務(wù)中心、信息站和終端上。在系統(tǒng)運(yùn)行時(shí)這四個(gè)子模塊需要進(jìn)行協(xié)同工作。這些子系統(tǒng)除了在本系統(tǒng)內(nèi)的子模塊之間需要通信外,在其他子系統(tǒng)之間也有少量的信息需要交互。由于系統(tǒng)的復(fù)雜性,傳統(tǒng)的面向數(shù)據(jù)或面向操作的方式顯然不能適合系統(tǒng)的需求,而面向?qū)ο蠹夹g(shù)目前已經(jīng)成為軟件設(shè)計(jì)的主流[2],比其他傳統(tǒng)的軟件設(shè)計(jì)方法有明顯的優(yōu)點(diǎn),具有封裝性、繼承性、多態(tài)性和可重用性的特征[3],使其在解決復(fù)雜問(wèn)題方面很有成效。因此系統(tǒng)采用了面向?qū)ο蟮脑O(shè)計(jì)方法,每個(gè)對(duì)象封裝自己的數(shù)據(jù)和操作,這樣就降低了由于數(shù)據(jù)和功能的集中管理所帶來(lái)的通信上的開(kāi)銷(xiāo)和操作上的復(fù)雜性。
(2)數(shù)據(jù)流分析。系統(tǒng)的數(shù)據(jù)流是根據(jù)傳輸?shù)臄?shù)據(jù)量的大小,總體上可以概括成兩大類(lèi),一類(lèi)是突發(fā)的連續(xù)大數(shù)據(jù)量的傳輸,如對(duì)終端系統(tǒng)進(jìn)行實(shí)時(shí)屏幕監(jiān)控時(shí)的數(shù)據(jù)傳輸,以及終端在斷線一段時(shí)間后重新上線,向服務(wù)器匯報(bào)時(shí)所進(jìn)行的日記傳輸?shù)龋涣硪活?lèi)就是零星的小數(shù)據(jù)量的傳輸,如模塊間的交互、服務(wù)器發(fā)出的指令等。在這兩類(lèi)通信中突發(fā)大數(shù)據(jù)量的通信所占的比例較小,而零星的數(shù)據(jù)傳輸卻非常頻繁。
(3)通信系統(tǒng)的設(shè)計(jì)。整個(gè)系統(tǒng)的通信工作是由網(wǎng)絡(luò)通信子系統(tǒng)來(lái)完成的,由于系統(tǒng)的通信中小數(shù)據(jù)量的通信請(qǐng)求比較頻繁復(fù)雜,對(duì)通信的可靠性要求也很高,為了避免整個(gè)通信網(wǎng)絡(luò)過(guò)于復(fù)雜,也為了使其他模塊的編寫(xiě)盡量變得簡(jiǎn)潔,因此我們將網(wǎng)絡(luò)通信子系統(tǒng)的實(shí)現(xiàn)架構(gòu)在所有模塊的底層,作為一個(gè)統(tǒng)一的通信平臺(tái)向上層提供網(wǎng)絡(luò)通信服務(wù),如圖2所示。
因?yàn)榛旧纤械墓δ茏酉到y(tǒng)都分成幾部分分散在信息站、GUI、服務(wù)中心和探針中,每個(gè)子系統(tǒng)的子模塊之間需要通信時(shí),如果由各模塊自己連接建立不僅顯得煩瑣而且容易引起混亂,采用這種層次型的結(jié)構(gòu)將通信系統(tǒng)隔離出來(lái)專(zhuān)門(mén)負(fù)責(zé)各模塊的通信,將其他模塊從通信的細(xì)節(jié)中解放出來(lái),同時(shí)也極大地增加了整個(gè)系統(tǒng)的可維護(hù)性以及代碼的可重用性。
3.3 系統(tǒng)業(yè)務(wù)流程的分析
整個(gè)系統(tǒng)的工作流分為兩個(gè),即業(yè)務(wù)工作流和管理工作流。業(yè)務(wù)工作流是系統(tǒng)日常工作所要進(jìn)行的數(shù)據(jù)傳遞,主要包括:探針向服務(wù)中心請(qǐng)求獲得安裝以及初始化;探針向信息站注冊(cè)自舉,并匯報(bào)日志告警等信息;信息站探測(cè)實(shí)時(shí)網(wǎng)絡(luò)拓?fù)洌恍畔⒄鞠蚍?wù)中心注冊(cè)自舉,并發(fā)送系統(tǒng)操作日志。管理工作流是用戶(hù)對(duì)系統(tǒng)進(jìn)行管理時(shí)需要進(jìn)行的數(shù)據(jù)傳遞,主要包括:用戶(hù)界面向服務(wù)中心認(rèn)證,并取得管轄的信息站通信密鑰,以及查詢(xún)變更管理配置;用戶(hù)界面連接信息站進(jìn)行業(yè)務(wù)管理;探針連接信息站匯報(bào)實(shí)時(shí)監(jiān)控信息。所有功能子系統(tǒng)的工作都貫穿于整個(gè)工作流中,而每個(gè)子系統(tǒng)都有其相應(yīng)的業(yè)務(wù)流程,因篇幅關(guān)系,不能一一列出。這里只是以具有代表性的策略分配子系統(tǒng)為例,簡(jiǎn)述其工作的流程。
所謂策略就是對(duì)終端系統(tǒng)實(shí)施監(jiān)控的程度,對(duì)終端的哪幾方面進(jìn)行監(jiān)控,監(jiān)控的程度等問(wèn)題。策略分配子系統(tǒng)就是對(duì)整個(gè)系統(tǒng)的監(jiān)控策略進(jìn)行維護(hù),負(fù)責(zé)制定策略,發(fā)送策略等功能,該子系統(tǒng)架構(gòu)于GUI、服務(wù)中心、信息站和受控終端。由GUI決定對(duì)終端實(shí)行什么樣的監(jiān)控策略。其中有幾個(gè)術(shù)語(yǔ)分別是默認(rèn)策略、全局策略、主機(jī)策略。默認(rèn)策略就是某主機(jī)剛加入該系統(tǒng)時(shí)需要遵循的策略,由服務(wù)中心提供;全局策略就是全局所有終端都必須遵循的策略;主機(jī)策略就是某終端需要遵循的策略。整個(gè)策略分配的流程如圖3所示。
當(dāng)一臺(tái)終端剛加入系統(tǒng)時(shí),它首先向服務(wù)中心取得默認(rèn)的策略并存儲(chǔ)在本地作為當(dāng)前的策略,而GUI則可以直接將默認(rèn)策略發(fā)送到服務(wù)中心來(lái)更改默認(rèn)策略;每個(gè)終端的當(dāng)前策略在信息站都有一個(gè)備份,GUI只需要通過(guò)信息站就可以查詢(xún)各終端的策略。當(dāng)其在工作過(guò)程中GUI需要更換某臺(tái)主機(jī)的策略或者更改所有終端的策略中的某一項(xiàng)時(shí)都需要通過(guò)信息站的中轉(zhuǎn)。首先由GUI將更改的策略信息發(fā)送到信息站,然后再由信息站通知各終端系統(tǒng)取回新的策略。從策略分配的過(guò)程就可以看出各服務(wù)器在系統(tǒng)中所起的作用,GUI需要對(duì)終端進(jìn)行控制時(shí)不與終端直接接觸,而是通過(guò)信息站進(jìn)行控制,信息站在這里起到了媒介的作用,作為橋梁在GUI與終端系統(tǒng)之間傳遞信息。而服務(wù)中心只是負(fù)責(zé)全局性的一些工作。
4 小結(jié)
軟件的架構(gòu)是軟件系統(tǒng)的核心,其影響久遠(yuǎn),并不隨某個(gè)軟件系統(tǒng)生命周期的結(jié)束而終結(jié)[4]。因此,近幾年來(lái)軟件的架構(gòu)設(shè)計(jì)已經(jīng)成為軟件研究的熱點(diǎn)之一,它作為軟件的藍(lán)圖為人們從宏觀把握軟件的整體結(jié)構(gòu)提供了一條有效途徑[5]。而內(nèi)網(wǎng)監(jiān)控系統(tǒng)的開(kāi)發(fā)研究目前也剛剛開(kāi)始起步,沒(méi)有現(xiàn)成的經(jīng)驗(yàn)可以參照,只有在吸收其他大型軟件的、已知的、行之有效的系統(tǒng)設(shè)計(jì)思想的基礎(chǔ)上,再充分分析其自身的特點(diǎn),制定出一個(gè)合理的架構(gòu)設(shè)計(jì),才能使得系統(tǒng)的各部分能夠高效地協(xié)同工作。因此在內(nèi)網(wǎng)監(jiān)控系統(tǒng)的開(kāi)發(fā)應(yīng)用過(guò)程中還有很長(zhǎng)的路要走。
本文中所涉及到的圖表、注解、公式等內(nèi)容請(qǐng)以PDF格式閱讀原文。