本發(fā)明涉及信息安全領域,尤其涉及一種基于動態(tài)規(guī)劃的鏈路防護系統及其方法。
背景技術:
伴隨著網絡技術的發(fā)展,網絡已成為人們生活和工作的主要方式。據中國互聯網絡信息中心第38次《中國互聯網絡發(fā)展狀況統計報告》顯示,截至2016年6月,中國網民規(guī)模達到7.1億,互聯網絡普及率達到51.7%,超過全球平均水平3.1個百分點,超過亞洲平均水平8.1個百分點。網絡技術的蓬勃發(fā)展也帶來了一系列安全性的問題,其中最主要的就是鏈路節(jié)點上的流量劫持。所謂流量劫持,是指通過一定技術手段,控制用戶的上網行為,讓你打開不想打開的網頁,看到不想看的廣告,而這些都會給劫持者帶來源源不斷的收入。
不久前,烏云網發(fā)布的一則《疑似某基于運營商流量的apk劫持推廣系統存漏洞(每天高達百萬計的劫持數據統計)》的公告再次將“流量劫持”推到了風口浪尖。流量劫持泛指網上的流量被竊取、刺探和控制,在收到用戶的流量后,還可以分析竊取用戶隱私。我們上網時使用的電腦是客戶端,請求訪問的目標是服務器,從你發(fā)生請求到看到網頁,速度很快,中間卻要經過網絡鏈路及設備,而鏈路上的點和設備都可以被人做手腳,對流量進行惡意分析竊取。特別是在網絡節(jié)點中轉過程中,節(jié)點服務器被攻擊成肉雞后,很容易進行dns劫持,被黑客利用進行木馬植入和流量分析,最終對于個人而言會泄露隱私,對于涉密企業(yè)和政府而言,涉密數據的泄露會影響公司的發(fā)展和國家的信息安全。
因此,對于涉密企業(yè)和政府機關在構建數據回傳交互系統時,需要進行多節(jié)點的跳轉,構建動態(tài)規(guī)劃數據交互路徑,可以有效地防止數據泄密,同時防止溯源,保證交互鏈路的安全。
技術實現要素:
本發(fā)明的目的就在于提供一種基于動態(tài)規(guī)劃的鏈路防護系統及其方法,主要應用在對數據安全級別要求較高的企事業(yè)單位、政府機關、公安和軍隊等單位,構建應用系統的動態(tài)的數據交互鏈路,防止單一節(jié)點被劫持后帶來的損失,保障數據傳輸的安全。
實現本發(fā)明目的技術方案是:
本發(fā)明通過以下3種方式實現鏈路防護系統安全性:
①服務器節(jié)點威脅性分析
實時采集中轉鏈路服務器節(jié)點網絡信息,通過對中間節(jié)點服務器的網絡信息比對,判斷目標服務器是否運行正常,是否存在惡意攻擊行為,保證中間節(jié)點的系統安全;
②定時規(guī)劃鏈路路徑
鏈路管控中心會定時根據中轉鏈路服務器上報的網絡信息進行綜合分析,剔除掉宕機和具有威脅性的中轉服務器節(jié)點,在保證最優(yōu)延遲的前提下,動態(tài)規(guī)劃回傳的路徑,同時下發(fā)給各中轉服務器和交互終端;
③交互文件單向傳輸
中轉服務器節(jié)點不保存任何管控中心的帳號密碼,鏈路管控中心以單向ftp方式和中轉服務器進行交互,實現數據單向傳輸,即使中間節(jié)點出現被劫持情況,也不會泄露鏈路管控中心的帳號信息。
本發(fā)明采用基于動態(tài)規(guī)劃路徑、服務器威脅檢測、單向ftp傳輸方式構建了鏈路防護系統,可以有效地保證數據安全性傳輸,降低數據被劫持的風險,防止ip溯源等方面,提升系統和終端的安全性。
具體地說:
一、基于動態(tài)規(guī)劃的鏈路防護系統(簡稱系統)
本系統包括鏈路管控中心、中轉鏈路服務器集群、用戶終端和目標服務器;
鏈路管控中心和中轉鏈路服務器集群交互,中轉鏈路服務器集群分別與用戶終端和目標服務器交互;
所述的鏈路管控中心包括依次交互的中轉服務器管理模塊、鏈路動態(tài)規(guī)劃模塊和鏈路數據交互模塊;
所述的中轉鏈路服務器集群包括第1、2……n中轉服務器,n是自然數,2≤n≤100;
每個中轉服務器包括遠程交互模塊、鏈路節(jié)點采集模塊和數據轉發(fā)模塊,鏈路節(jié)點采集模塊和數據轉發(fā)模塊均與遠程交互模塊交互。
本發(fā)明具有下列優(yōu)點和積極效果:
①時效性強:本發(fā)明采用動態(tài)鏈路計算算法,鏈路管控中心會定時根據中轉服務器上報的網絡信息進行綜合分析,剔除掉宕機和具有威脅性的節(jié)點服務器,在保證最優(yōu)延遲的前提下,動態(tài)規(guī)劃回傳的路徑,同時下發(fā)給中轉鏈路服務器和交互終端;
②動態(tài)規(guī)劃路徑算法簡單高效:路徑規(guī)劃算法結合最短路徑算法和動態(tài)調整節(jié)點技術,保證了數據回傳速率的同時,動態(tài)變化路徑;
③系統安全性高:服務器節(jié)點威脅性分析,實時采集中轉鏈路服務器節(jié)點網絡信息,通過對中間節(jié)點服務器的網絡信息比對,判斷目標服務器是否運行正常,是否存在惡意攻擊行為,保證中間節(jié)點的系統安全;即使中間服務器節(jié)點被劫持,也不會帶來數據的很大損失;
④系統可擴展:基于松耦合架構技術,結合鏈路管控中心,可以彈性擴展節(jié)點,提升系統的彈性和擴展性;
⑤防止ip溯源:動態(tài)規(guī)劃鏈路能保證數據實時性,同時保證鏈路動態(tài)生成,可以有效地防止溯源。
附圖說明
圖1是本系統的結構方框圖。
圖中:
100—鏈路管控中心,
110—中轉服務器管理模塊;
120—鏈路動態(tài)規(guī)劃模塊;
130—鏈路數據交互模塊。
200—中轉鏈路服務器集群,
210—第1中轉服務器;
211—第1遠程交互模塊;
212—第1鏈路節(jié)點采集模塊;
213—第1數據轉發(fā)模塊;
220—第2中轉服務器
221—第2遠程交互模塊;
222—第2鏈路節(jié)點采集模塊;
223—第2數據轉發(fā)模塊;
……
2n0—第n中轉服務器;
2n1—第n遠程交互模塊;
2n2—第n鏈路節(jié)點采集模塊;
2n3—第n數據轉發(fā)模塊;
300—用戶終端;
400—目標服務器。
英譯漢
1、ftp:filetransferprotocol,文件傳輸協議;
2、ngnix:enginex,是一個高性能的http和反向代理服務器;
3、cpu:centralprocessingunit,中央處理器;
4、ip:internetprotocol,網絡之間互連的協議。
具體實施方式
下面結合附圖和實施例詳細說明:
一、系統
1、總體
如圖1,本系統包括鏈路管控中心100、中轉鏈路服務器集群200、用戶終端300和目標服務器400;
鏈路管控中心100和中轉鏈路服務器集群200交互,中轉鏈路服務器集群200分別與用戶終端300和目標服務器400交互;
所述的鏈路管控中心100包括依次交互的中轉服務器管理模塊110、鏈路動態(tài)規(guī)劃模塊120和鏈路數據交互模塊130;
所述的中轉鏈路服務器集群200包括第1、2……n中轉服務器210、220……2n0,n是自然數,2≤n≤100;
每個中轉服務器包括遠程交互模塊、鏈路節(jié)點采集模塊和數據轉發(fā)模塊,鏈路節(jié)點采集模塊和數據轉發(fā)模塊均與遠程交互模塊交互。
2、功能模塊
1)鏈路管控中心100
鏈路管控中心100包括依次交互的中轉服務器管理模塊110、鏈路動態(tài)規(guī)劃模塊120和鏈路數據交互模塊130。
鏈路管控中心100負責整個系統的中轉鏈路服務器集群200的每臺中轉服務器的管理功能,通過中轉服務器管理模塊110和鏈路數據交互模塊130,獲取每個中轉服務器的基本信息,提供給鏈路動態(tài)規(guī)劃模塊120,進行鏈路動態(tài)規(guī)劃,同時以單向傳輸的方式下發(fā)最新路徑給中轉鏈路服務器集群200。
(1)中轉服務器管理模塊110
中轉服務器管理模塊110在系統建設后,初始化中轉鏈路服務器集群200中的每臺中轉服務器的ftp帳號、口令、ip、路徑、cpu、內存、硬盤、網卡和顯卡信息,提供給鏈路數據交互模塊130進行遠程連接、數據收集和路徑下發(fā)。
(2)鏈路動態(tài)規(guī)劃模塊120
鏈路動態(tài)規(guī)劃模塊120根據服務器狀態(tài)、服務器各節(jié)點間的上下行速率和結合圖計算方式,實現對路徑的動態(tài)規(guī)劃,以單向ftp文件方式下發(fā)每臺中轉服務器。
(3)鏈路數據交互模塊130
鏈路數據交互模塊130基于ftp方式,周期讀取每臺中轉服務器的設備狀態(tài),節(jié)點間的上下行速率等信息,提供給鏈路動態(tài)規(guī)劃模塊120計算路徑。
鏈路管控中心100其工作流程是:
①中轉服務器管理模塊110在系統建設后,初始化中轉鏈路服務器集群(200)中的每臺中轉服務器的ftp帳號、口令、ip、路徑、cpu、內存、硬盤、網卡、顯卡和應用信息,提供給鏈路動態(tài)規(guī)劃模塊120;
②鏈路數據交互模塊130基于ftp協議定期讀取中轉服務器的設備狀態(tài)和節(jié)點間的上下行速率的信息,提供給鏈路動態(tài)規(guī)劃模塊120計算路徑;
③鏈路動態(tài)規(guī)劃模塊120根據中轉服務器的狀態(tài)和各節(jié)點間上下行的速率,結合圖計算方式,實現對路徑的動態(tài)規(guī)劃,在保證最短延遲的前提下動態(tài)更改交互路徑,路徑規(guī)劃成功后以文件的方式通過單向ftp協議下發(fā)到各個中轉服務器;
④鏈路管控中心100與中轉鏈路服務器集群200交互以單向ftp協議傳輸,中轉鏈路服務器集群200中不保存鏈路管控中心100的ip、遠程賬戶和密碼的任何信息;
a、中轉服務器上報的信息保存在本地ftp目錄中,鏈路管控中心100通過ftp協議單向讀取數據文件;
b、鏈路管控中心100規(guī)劃路徑后,通過鏈路數據交互模塊130以ftp文件方式,分發(fā)到中轉鏈路服務器集群200各個節(jié)點的ftp目錄。
2)中轉鏈路服務器集群200
中轉鏈路服務器集群200包括第1、2……n中轉服務器210、220……2n0。
該集群保證了數據在該集群鏈路中跳轉。
(1)第1中轉服務器210;
第1中轉服務器210是鏈路回傳的子節(jié)點,功能上負責節(jié)點服務器基本信息采集,讀取鏈路管控中心100下發(fā)的轉發(fā)路徑,基于第1數據轉發(fā)模塊213實現網絡數據的轉發(fā)。
a、第1遠程交互模塊211
第1遠程交互模塊211是和鏈路管控中心100交互的接口,負責將鏈路數據保存在本地ftp目錄下,同時負責將鏈路管控中心100規(guī)劃的路徑提供給第1數據轉發(fā)模塊213進行轉發(fā)配置。
b、第1鏈路節(jié)點采集模塊212
第1鏈路節(jié)點采集模塊212負責采集中轉服務器的ip、路徑、cpu、內存、硬盤、網卡、顯卡、節(jié)點間的上下行速率等信息,提供給第1遠程交互模塊211。
c、第1數據轉發(fā)模塊213
第1數據轉發(fā)模塊213根據鏈路管控中心100規(guī)劃的路徑,對用戶終端300發(fā)送來的數據進行轉發(fā)。
中轉鏈路服務器集群(200)其其工作流程是:
①中轉鏈路服務器集群(200)包含多個中轉服務器,每個中轉服務器只保留下個轉發(fā)節(jié)點的信息;
②每個中轉服務器的鏈路節(jié)點采集模塊,負責采集中轉服務器的設備狀態(tài)和節(jié)點間上下行速率的信息,提供給遠程交互模塊;
③每個中轉服務器的遠程交互模塊,負責將鏈路數據保存在本地ftp目錄下,同時負責將鏈路管控中心(100)規(guī)劃的路徑提供給每個中轉服務器的數據轉發(fā)模塊進行轉發(fā)配置;
④每個中轉服務器的數據轉發(fā)模塊根據路徑規(guī)劃信息,對用戶終端(300)發(fā)送來的數據進行轉發(fā)。
3)用戶終端300
用戶終端300是數據發(fā)送的起始路徑,負責將數據發(fā)送到中轉鏈路服務器集群200的規(guī)劃路徑的起始節(jié)點服務器。
4)目標服務器400
目標服務器400是數據發(fā)送的結束路徑,負責將數據通過中轉鏈路服務器集群200跳轉后回到目標服務器400。
3、本系統的工作機理
①鏈路管控中心100提供對中轉鏈路服務器集群200的注冊管理工作,并通過中轉鏈路服務器集群200上報的集群狀態(tài),進行路徑的動態(tài)規(guī)劃,同時以單向ftp文件方式,將規(guī)劃路徑同步到中轉鏈路服務器集群200中,告知下行轉發(fā)節(jié)點;
②中轉鏈路服務器集群200在獲取到鏈路管控中心100規(guī)劃的路徑后,自動設置數據轉發(fā)模塊,將收到的數據自動轉發(fā)到下個節(jié)點服務器;
③中轉鏈路服務器集群200基于文件方式,將鏈路狀態(tài)、連接速率等信息記錄到本地,提供給遠端的鏈路管控中心100進行單向提??;
④用戶終端300初始化時通過鏈路管控中心100獲取初始鏈路節(jié)點,數據經初始節(jié)點后進入中轉鏈路服務器集群200跳轉轉發(fā),最終到達目標服務器400,當路徑發(fā)生變化后,將自動告知用戶終端300更改請求服務器。
二、方法
1、動態(tài)規(guī)劃方法
①鏈路動態(tài)規(guī)劃模塊120根據中轉服務器管理模塊110提供的中轉服務器的ftp帳號、口令、ip、路徑、cpu、內存、硬盤、網卡和顯卡的信息,以及中轉鏈路服務器集群200提供的中轉服務器各節(jié)點間的上下行速率,結合圖計算方式,實現對路徑的動態(tài)規(guī)劃,以單向ftp文件方式下發(fā)各個中轉服務器;
②獲取可用的中轉服務器列表集合,并按照中轉服務器延遲速率進行升序排序,形成集合[1,m],篩選掉有故障中轉服務器;
③鏈路動態(tài)規(guī)劃模塊120根據中轉服務器管理模塊110提供的各個節(jié)點上下行速率,計算中轉服務器平均延遲速率,并按照延遲速率進行由低到高的排序,獲取加權中轉服務器的集合;
④考慮到網絡環(huán)境的影響,中轉鏈路服務器集群200可能出現路徑相同的情況,因此在[1,k]集合選擇上采取如下策略,剔除掉環(huán)境對路徑影響;
a、根據管控中心策略篩選出前k個平均延遲速率低的跳轉節(jié)點[1,k],保證最優(yōu)化的傳輸路徑;
b、在集合[1,k]中隨機取出k/3個節(jié)點,形成新的替換集合[1,k/3];
c、在[k,m]非最短路徑集合中同樣取出k/3個節(jié)點,逐一替換掉最短路徑集合,生成新的策略集合[1,k];
⑤基于動態(tài)規(guī)劃路徑生成的新的路徑集合[1,k],根據節(jié)點間的延遲權重,形成圖形計算模型,利用尾遞歸方式,計算經過所有節(jié)點的路徑,偽代碼如下;
⑥將計算的最短路徑,下發(fā)到各個中轉服務器中進行初始化,同時將路徑規(guī)則通過交互信息下發(fā)到終端,更新終端回傳鏈路中起始中轉服務器的位置;
m為當前可用的中轉服務器數量,為自然數,2≤m≤100;k為系統使用者配
置需要跳轉的節(jié)點數量,為自然數,2≤k≤m。
2、數據轉發(fā)方法
①利用ngnix反向代理技術,根據路徑規(guī)劃信息,對用戶終端300發(fā)送來的數據進行轉發(fā),經過集群后到達目標服務器400;
②系統初始化后,各個中轉服務器的數據轉發(fā)模塊默認配置轉發(fā)節(jié)點為目標服務器400;
③各個中轉服務器的數據轉發(fā)模塊在動態(tài)路徑規(guī)劃成功后,確定轉發(fā)規(guī)則、數據源ip1和目的ip2,最終更新到配置文件nginx.conf;
④nginx.conf文件更新后,各個中轉服務器的數據轉發(fā)模塊將重啟nginx反向代理程序;
⑤當網絡數據經過上一節(jié)點跳轉到當前中轉服務器后,nginx反向代理接受客戶機請求,找到server_name為ip1的server節(jié)點,根據proxy_pass對應的http路徑,將請求轉發(fā)到ip2上;
⑥鏈路數據最終經過多個中轉服務器,到達目標服務器400。