傳統(tǒng)的網(wǎng)絡(luò)安全防護方法通常是根據(jù)網(wǎng)絡(luò)的拓撲情況,以手動方式在安全域邊界串聯(lián)(例如UTM、IPS)或旁路部署(例如IDS、Audit)安全設(shè)備,對進出安全域的流量進行監(jiān)控。如果將這種與接入模式、部署位置緊密耦合的防護方法沿用到物理與虛擬網(wǎng)絡(luò)共存的數(shù)據(jù)中心環(huán)境中,會存在諸多不適應(yīng)性。
從上述問題可以看出,傳統(tǒng)的網(wǎng)絡(luò)安全防護方法不能完全滿足未來數(shù)據(jù)中心網(wǎng)絡(luò)安全防護需求,由此一種更為適用的防護方法——軟件定義安全(Software Defined Security,SDS)應(yīng)運而生。SDS是從軟件定義網(wǎng)絡(luò)(Software Defined Network,SDN)引申而來,它的核心思想是將虛擬的和物理的網(wǎng)絡(luò)安全設(shè)備與它們的接入模式、部署位置解耦,抽象為安全資源池里的資源,統(tǒng)一通過軟件編程的方式進行智能化、自動化的管理和使用,安全資源、網(wǎng)絡(luò)流量、安全模型間通過開放的接口定義,靈活的實現(xiàn)了安全功能部署和安全能力的提供,從而完成虛擬和物理網(wǎng)絡(luò)的整體安全防護。
圖1 軟件定義安全工作模型
就工作機制而言,SDS可以分解為軟件定義安全資源、軟件定義流量、軟件定義高級威脅模型,三個舉措環(huán)環(huán)相扣,形成一個動態(tài)、閉環(huán)的工作模型,如圖1所示。
1.軟件定義安全資源:配備安全資源是實現(xiàn)網(wǎng)絡(luò)安全防護的第一步。在軟件定義安全模式下,安全資源的配備是由軟件編程的方式來管理的。由管理中心對安全資源進行統(tǒng)一注冊、管理,才能夠?qū)崿F(xiàn)后續(xù)的靈活使用。在虛擬計算環(huán)境下,管理中心還要支持虛擬安全設(shè)備模板的分發(fā)和設(shè)備的創(chuàng)建。
2.軟件定義流量:由軟件編程的方式來實現(xiàn)網(wǎng)絡(luò)流量的轉(zhuǎn)發(fā)控制,通過將目標網(wǎng)絡(luò)流量轉(zhuǎn)發(fā)到安全設(shè)備上,來實現(xiàn)安全設(shè)備的邏輯部署和使用。
3.軟件定義高級威脅模型:安全運營中心從各種設(shè)備上收集安全相關(guān)的事件、信息,通過預(yù)定義的算法進行自動化的整理和挖掘,實現(xiàn)對未知的威脅甚至是一些高級安全威脅的實時分析和建模,之后自動將建模結(jié)果再次應(yīng)用于安全防護,從而實現(xiàn)一種動態(tài)、閉環(huán)的安全防護。
就具體實現(xiàn)而言,SDS框架可以劃分為4個層次,由底至頂分別為安全資源層、轉(zhuǎn)發(fā)層、控制層、管理編排層,如圖2所示。
圖2 軟件定義安全層次框架
以一個數(shù)據(jù)中心為例,SDS框架的各個層次詳細介紹如下:
1.安全資源層:由數(shù)據(jù)中心內(nèi)的各種物理形態(tài)或虛擬形態(tài)的網(wǎng)絡(luò)安全設(shè)備組成,兼容各家廠商的產(chǎn)品。這些安全設(shè)備不再采用單獨部署、各自為政的工作模式,而是由管理中心統(tǒng)一部署、管理、調(diào)度,以實現(xiàn)相應(yīng)的安全功能。安全資源可以按需取用,支持高擴展性、高彈性,就像一個資源池一樣。
2.轉(zhuǎn)發(fā)層:即SDN網(wǎng)絡(luò)中的轉(zhuǎn)發(fā)層,是指一類僅支持根據(jù)控制器指令進行數(shù)據(jù)包轉(zhuǎn)發(fā),而不再自主進行地址學習和選路的網(wǎng)絡(luò)交換設(shè)備。將網(wǎng)絡(luò)安全設(shè)備接入轉(zhuǎn)發(fā)層,通過將數(shù)據(jù)包導(dǎo)入或繞過安全設(shè)備,即可實現(xiàn)安全設(shè)備的部署和撤銷。
3.控制層:是指能夠從全局的角度進行網(wǎng)絡(luò)構(gòu)建、管理,并提供開放API的網(wǎng)絡(luò)控制器。這里既包括進行邏輯網(wǎng)絡(luò)構(gòu)建的控制器(例如SDN網(wǎng)絡(luò)控制器,通過給已有的下轄的交換機下發(fā)轉(zhuǎn)發(fā)表來實現(xiàn)網(wǎng)絡(luò)構(gòu)建),也包括進行實際網(wǎng)絡(luò)構(gòu)建的控制器(例如虛擬計算平臺的管理中心,通過創(chuàng)建虛擬交換機并連線來實現(xiàn)網(wǎng)絡(luò)構(gòu)建)。
4.管理編排層:由側(cè)重于安全方面的應(yīng)用組成,包含用戶交互界面,將用戶配置的或運行中實時產(chǎn)生的安全功能需求轉(zhuǎn)化為具體的安全資源調(diào)度策略,并基于控制層提供的API予以實現(xiàn),做到安全防護的智能化、自動化、服務(wù)化。
通過編程的方式調(diào)用安全設(shè)備資源,SDS實現(xiàn)了一種靈活的網(wǎng)絡(luò)安全防護,更加適用于情況復(fù)雜的數(shù)據(jù)中心網(wǎng)絡(luò)。與傳統(tǒng)的網(wǎng)絡(luò)安全防護方法相比,SDS有如下特(優(yōu))點:
1.安全功能部署靈活簡單:管理員可以隨時、隨地、采用多種設(shè)備對應(yīng)用層軟件(例如管理中心)進行訪問,通過簡單的界面點擊操作來實現(xiàn)安全功能的自動化部署。由于不再需要復(fù)雜的手動操作去部署每臺安全設(shè)備,提高了可擴展性。
2.細粒度區(qū)分流量:通過轉(zhuǎn)發(fā)層對流經(jīng)同一網(wǎng)絡(luò)的流量做細粒度區(qū)分,支持不同流量采用不同的安全策略,因此適用于多租戶環(huán)境。各個租戶可以按需進行個性化的安全服務(wù)定制,具備高彈性、可計量性。
3.安全防護范圍動態(tài)調(diào)整:集中化的管理方式使得控制層能夠快速感知虛擬機的動態(tài)遷移事件,該事件被上送到應(yīng)用層,應(yīng)用層隨之下發(fā)策略來改變安全資源的部署,最終現(xiàn)安全防護范圍的動態(tài)調(diào)整。
4.維護網(wǎng)絡(luò)高可靠性:安全功能的部署和撤銷均采用自動化的方式進行。當檢測到某個安全設(shè)備發(fā)生故障后,可以實時的將基于該安全設(shè)備的應(yīng)用撤銷;當安全設(shè)備故障解除后,又可以實時的將基于該安全設(shè)備的應(yīng)用恢復(fù)。這期間維持網(wǎng)絡(luò)不間斷,確保了網(wǎng)絡(luò)的可靠性。
5.安全功能易于創(chuàng)新:基于軟件的安全功能編排、與硬件安全設(shè)備的解耦使得安全功能的創(chuàng)新不再依賴硬件安全設(shè)備的升級。并且,控制層全局化的視角使得安全功能更容易根據(jù)實時運行情況作出調(diào)整,更具智能性。
采用現(xiàn)有技術(shù)已經(jīng)能夠?qū)崿F(xiàn)SDS。SDS實現(xiàn)的關(guān)鍵在于如何使用安全資源池里的資源來實現(xiàn)相應(yīng)的安全功能,這里主要圍繞這部分進行介紹。要全面覆蓋現(xiàn)有的數(shù)據(jù)中心網(wǎng)絡(luò)情況,需要采用以下兩類關(guān)鍵技術(shù):
1.基于SDN/Openflow技術(shù):SDN思想將傳統(tǒng)網(wǎng)絡(luò)設(shè)備自帶控制功能和轉(zhuǎn)發(fā)功能分離,其中網(wǎng)絡(luò)設(shè)備僅保留轉(zhuǎn)發(fā)功能,構(gòu)成轉(zhuǎn)發(fā)層;引入全局網(wǎng)絡(luò)控制器提供控制功能,構(gòu)成控制層;并且應(yīng)用程序可以調(diào)用控制器提供的API來構(gòu)建網(wǎng)絡(luò),構(gòu)成應(yīng)用層。OpenFlow協(xié)議被認為是SDN架構(gòu)的控制層和轉(zhuǎn)發(fā)層間的第一個標準通信接口[1]。將安全設(shè)備接入SDN的轉(zhuǎn)發(fā)層,由應(yīng)用層程序調(diào)用控制層API來設(shè)置轉(zhuǎn)發(fā)層的轉(zhuǎn)發(fā)表,基于這種流量轉(zhuǎn)發(fā)的可定義性來實現(xiàn)靈活的邏輯部署。目前,SDN/Openflow已經(jīng)被多款流行的開源虛擬計算平臺(例如KVM、XEN)采納為虛擬網(wǎng)絡(luò)的實現(xiàn)技術(shù),并且已有多家廠商的硬件交換機產(chǎn)品支持SDN/Openflow,也已有多款開源控制器可供選擇(例如floodlight、Opendaylight、Ryu)。因此基于SDN/Openflow實現(xiàn)的SDS,能夠適用于開源虛擬計算平臺上的虛擬網(wǎng)絡(luò)以及部分物理網(wǎng)絡(luò)的安全防護。
2.調(diào)用虛擬計算平臺提供的API:適用于閉源虛擬計算平臺上的虛擬網(wǎng)絡(luò)防護。這類平臺上的虛擬網(wǎng)絡(luò)設(shè)備通常采用傳統(tǒng)的自主工作模式,不能如技術(shù)1一樣通過設(shè)置轉(zhuǎn)發(fā)表來實現(xiàn)安全設(shè)備的部署和撤銷。這里可以調(diào)用平臺提供的API,通過將虛擬安全設(shè)備接入或斷出虛擬交換機的方法,實現(xiàn)安全設(shè)備的靈活使用。目前,主流的閉源虛擬計算平臺均有API接口滿足上述需求。
基于SDS思想,我們提出了流安全平臺產(chǎn)品,該產(chǎn)品架構(gòu)如圖3所示,通過把一臺或多臺防火墻、IDS/IPS、WAF、審計等安全設(shè)備連接到一臺或多臺SDN交換機上做安全資源的集群處理,根據(jù)安全策略的自定義模式將網(wǎng)絡(luò)流量牽引到指定的安全設(shè)備進行安全處理,包括:訪問控制、攻擊檢查、攻擊過濾、內(nèi)容審計等,同時通過安全控制中心對安全設(shè)備進行策略集中管理和狀態(tài)實時監(jiān)控,當設(shè)備出現(xiàn)異常時,能及時進行均衡負載或流量遷移,確保不影響正常的網(wǎng)絡(luò)通信,可以極大的提高安全設(shè)備整體防護能力和可靠性。適用于網(wǎng)絡(luò)流量大、安全需求多、可靠性要求特別高的場景。
圖3 流安全平臺架構(gòu)圖
目前,隨著虛擬化、SDN網(wǎng)絡(luò)在數(shù)據(jù)中心快速的發(fā)展、完善、應(yīng)用,傳統(tǒng)網(wǎng)絡(luò)安全防護方法已經(jīng)顯示出不適應(yīng)性。為了滿足網(wǎng)絡(luò)安全新需求,工業(yè)界和學術(shù)界開始在SDS方面展開積極的探索。
據(jù)市場研究和咨詢公司IDC預(yù)測,到2016年,78%的新增機器都是虛擬機[2],這意味著數(shù)據(jù)中心虛擬化規(guī)模將進一步擴大。SDS框架能夠支持數(shù)據(jù)中心物理與虛擬網(wǎng)絡(luò)并存、多租戶、易遷移、高彈性、自動化等特性需求,必將成為未來數(shù)據(jù)中心網(wǎng)絡(luò)安全防護的有力支撐。
參考文獻
1.Open networking foundation, Software-Defined Networking:The New Norm for Networks, april 13,2012.
2.Gary Chen,Oracle Virtual Networking Delivering Fabric Virtualization and Software Defined Networks,July 2013.