一種Xen虛擬化環境下網絡數據的入侵檢測方法
【技術領域】
[0001]本發明涉及云計算技術領域,尤其是涉及一種Xen虛擬化環境下網絡數據的入侵檢測方法。
【背景技術】
[0002]Xen是一個開放源代碼虛擬機設備監視器,由劍橋大學開發。它打算在單個計算機上運行多達100個滿特征的操作系統。操作系統必須進行顯式地修改(“移植”)以在Xen上運行(但是提供對用戶應用的兼容性)。這使得Xen無需特殊硬件支持,就能達到高性能的虛擬化。
[0003]目前,由于虛擬化網絡的復雜性與多樣性,在Host宿主機內部是無法獲取到虛擬機設備的網絡數據的,更無法對網絡數據進行入侵防御;而且,在目前的傳統的網絡環境中,入侵防御的主體仍然是IP,而虛擬機設備的IP是可以動態變化的,如何在虛擬網絡環境中,應對虛擬化網絡的多變性,進行入侵防御;至今還沒有有效的解決方法。
【發明內容】
[0004]本發明所解決的技術問題是提供一種Xen虛擬化環境下網絡數據的入侵檢測方法,為了在虛擬網絡環境中應對虛擬化網絡的多變性,本發明將入侵防御的主體設為虛擬機設備,避免了由于IP地址變化而導致入侵、防御的失敗;能夠有效監控虛擬機設備網絡數據的入侵并對其進行檢測和防御。
[0005]為了解決上述技術問題,本發明提供了一種Xen虛擬化環境下網絡數據的入侵檢測方法,包括:
[0006]S1:在宿主機上,用Open vSwitch搭建網絡架構,倉ij建網橋;
[0007]S2:建立虛擬機設備,并將所述虛擬機設備加入網橋;
[0008]S3:將真實的網絡接口對應虛擬機設備的虛擬接口,保持真實的網絡接口與虛擬機設備的虛擬接口對應一致;
[0009]S4:將所述虛擬機設備的虛擬接口與所述網橋橋接,同時為各個虛擬機設備創建虛擬端口 ;使網絡數據都經過相應的所述虛擬機設備的虛擬端口進行網絡數據的通信;
[0010]S5:0pen vSwtich在接收到了各個數據端口發送過來的數據包,將所述數據包的頭信息轉發到控制器中,由所述控制器進行過濾和處理,并決定所述數據包的后續處理或轉發的端口。
[0011]優選的,所述步驟3中,保持真實的網絡接口與虛擬機設備的虛擬接口對應一致的方法是:在所述宿主機內,截取每個到達虛擬機設備虛擬端口的數據包頭部的前128KB個字節,分析所述數據包頭部,解析所述數據包頭部的協議,根據解析后所述數據包,確定虛擬機設備對應的網橋端口。
[0012]更加優選的,所述步驟3中,保持真實的網絡接口與虛擬機設備的虛擬接口對應一致的方法是:在虛擬機設備的虛擬端口被創建后,發送數據包時,數據包從虛擬機設備內部到達虛擬端口,判斷數據包是否是第一個數據包;若數據包是第一個數據包,正常發送所述數據包;若數據包不是第一個數據包,構建新數據包,新數據包的目的地址為所述宿主機,所述宿主機接受新數據包,保持真實的網絡接口與虛擬機設備的虛擬接口對應一致。
[0013]更加優選的,所述新數據包包含虛擬機設備的唯一標識、以及所述虛擬端口的標識。
[0014]更加優選的,所述步驟5中,所述控制器進行過濾為獲取所述數據包的所述頭信肩、O
[0015]更加優選的,所述步驟5中,所述控制器進行處理即進行入侵檢測規則的匹配。
[0016]更加優選的,所述步驟5中,所述控制器進行處理即進行入侵檢測規則的匹配時,所述控制器通過所述數據包的頭信息進行判斷,判斷所述數據包是否是APP / RARP數據包;
[0017]若所述數據包是APP / RARP數據包,則進行下述步驟Na ;
[0018]若所述數據包是APP / RARP數據包,則進行下述步驟Nb ;
[0019]Na:獲取源IP、進入端口和虛擬機設備的標識,建立虛擬機設備與虛擬機設備之間的IP關聯,作為后續入侵檢測防御的主體,進行下述步驟Nb ;
[0020]Nb:所述Controller按照入侵檢測規則將所述數據有選擇的轉發到所述數據的對應的數據處理端口上。
[0021]更加優選的,入侵檢測規則是指:所述控制器按照入侵檢測規則的主體的內容將從所述步驟Na中接收到的所述數據包中的數據,進行入侵檢測規則的攻擊特征匹配,匹配過程包括正則表達式匹配、二進制數據匹配和攻擊特征匹配。
[0022]更加優選的,所述控制器將所述數據有選擇的轉發時,所述控制器的判定所述數據不匹配攻擊數據的數據包時,則將所述數據進行放行,并將所述數據轉發到對應的數據處理端口上,進行正式的業務邏輯處理。
[0023]更加優選的,所述控制器將所述數據有選擇的轉發時,所述控制器的判定所述數據匹配有攻擊數據的數據包時,則對所述數據進行丟棄處理,不將所述數據轉發到對應的數據處理端口上。
[0024]其中,所述云計算(cloud computing)是基于互聯網的相關服務的增加、使用和交付模式,通常涉及通過互聯網來提供動態易擴展且經常是虛擬化的資源。
[0025]其中,所述Open vSwitch即開放虛擬交換標準!Open vSwitch是在開源的Apache2.0許可下的產品級質量的多層虛擬交換標準。它旨在通過編程擴展,使龐大的網絡自動化(配置、管理、維護),同時還支持標準的管理接口和協議(如NetFlow,sFlow,SPAN, RSPAN, CLI, LACP,802.lag)。總的來說,它被設計為支持分布在多個物理服務器,例如 VMware 的 vNetwork 分布式 vSwitch 或思科的 NexuslOOOV。
[0026]本發明與現有技術相比,具有如下有益效果:
[0027]本發明在Xen虛擬化環境下利用Open vSwitch實現虛擬機設備網絡數據的監控;能夠監控虛擬機設備網絡的數據,利于后續對對數據的過濾、檢測等處理。
【附圖說明】
[0028]圖1示例性的示出了本發明監控流程示意圖;
[0029]圖2示例性的示出了本發明保持真實的網絡接口與虛擬機設備的虛擬接口對應一致的方法流程示意圖;
[0030]圖3示例性的示出了本發明用Open vSwitch搭建后的網絡示意圖;
[0031]圖4示例性的示出了本發明的部署架構圖;
[0032]圖5示例性的示出了控制器過濾處理過程流程示意圖。
【具體實施方式】
[0033]為了更好的理解本發明所解決的技術問題、所提供的技術方案,以下結合附圖及實施例,對本發明進行進一步詳細說明。此處所描述的具體實施例僅用以解釋本發明的實施,但并不用于限定本發明。
[0034]在優選的實施例中,圖1示例性的示出了一種Xen虛擬化環境下網絡數據的入侵檢測方法流程示意圖;包括:。
[0035]步驟一:在宿主機上,用Open vSwitch搭建網絡架構,倉ij建網橋;
[0036]步驟二:建立虛擬機設備,并將所述虛擬機設備加入網橋;
[0037]步驟三:將真實的網絡接口對應虛擬機設備的虛擬接口,保持真實的網絡接口與虛擬機設備的虛擬接口對應一致;
[0038]步驟四:將所述虛擬機設備的虛擬接口與所述網橋橋接,同時為各個虛擬機設備創建虛擬端口 ;使網絡數據都經過相應的所述虛擬機設備的虛擬端口進行網絡數據的通?目;
[0039]步驟五:0pen vSwtich在接收到了各個數據端口發送過來的數據包,將所述數據包的頭信息轉發到控制器中;由所述控制器進行過濾和處理,如圖5所示;并決定所述數據包的后續處理或轉發的端口。
[0040]在更加優選的實施例中,所述步驟三中,保持真實的網絡接口與虛擬機設備的虛擬接口對應一致的方法是:在所述宿主機內,截取每個到達虛擬機設備虛擬端口的數據包頭部的前128KB個字節,分析所述數據包頭部,解析所述數據包頭部的協議,根據解析后所述數據包,確定虛擬機設備對應的網橋端口。
[0041]在更加優選的實施例中,在所述步驟三中,圖2示例性的示出了本發明保持真實的網絡接口與虛擬機設備的虛擬接口對應一致的方法流程示意圖;在虛擬機設備的虛擬端口被創建后,發送數據包