您的hypervisor安全么?
服務(wù)器虛擬化技術(shù)在過去幾年獲得了長足發(fā)展。它只需要較少的硬件資源就能運(yùn)行多種應(yīng)用程序和操作系統(tǒng),能允許用戶根據(jù)自身需求快速調(diào)配新的資源。服務(wù)器虛擬化的優(yōu)勢已經(jīng)從多方面論述過了,但對hypervisor安全缺陷的關(guān)注還不夠。如果您由于不小心或缺少經(jīng)驗(yàn),就會(huì)很容易遇到安全問題。有專家警告說,虛擬服務(wù)器相對物理服務(wù)器而言更容易收到攻擊,這也是管理程序技術(shù)開發(fā)過程中面臨的新的隱患。
每臺(tái)物理機(jī)執(zhí)行多個(gè)工作負(fù)載同時(shí)也存在風(fēng)險(xiǎn)。每個(gè)實(shí)例之間必須相互隔離以免有意或無意相互干涉。hypervisor或虛擬機(jī)監(jiān)控器VMM是虛擬硬件的軟件,提供子機(jī)之間的隔離。但是面對相對較新的非主機(jī)虛擬化和處理密集工作負(fù)載的需求,hypervisor安全愈發(fā)重要。Gartner預(yù)測60%以上計(jì)劃在2012年用虛擬服務(wù)器代理物理服務(wù)器的環(huán)境,安全性降低了。
更多企業(yè)轉(zhuǎn)向虛擬化來降低成本和增加靈活性,同時(shí)又帶來了虛擬化和hypervisor安全方面的花費(fèi)。如今市面上有各式各樣的虛擬化hypervisor,該如何選擇才能在既降低成本的同時(shí)保護(hù)安全呢?
首先,hypervisor的代碼越少就意味著受攻擊的點(diǎn)越少。基于內(nèi)核的虛擬機(jī)KVM hypervisor內(nèi)置于Linux內(nèi)核,利用Linux自身的調(diào)度器進(jìn)行管理,所以其核心源碼很少。KVM是裸機(jī)管理程序,無需修改操作系統(tǒng)直接運(yùn)行于硬件系統(tǒng)之上,屬于Type 1 hypervisor。由于Type 1管理程序以簡化層的方式向虛擬機(jī)提交虛擬化后的硬件資源,因此它可以提供更好的性能和可擴(kuò)展性。從而減少了運(yùn)行管理程序本身所需的花銷。
其次,在虛擬環(huán)境中,一個(gè)軟件實(shí)例服務(wù)于多個(gè)客戶端,這就涉及到子機(jī)隔離的問題??蛻粜湃蝖ypervisor。毫無疑問,hypervisor上面的子操作系統(tǒng)必須阻止安全漏洞的發(fā)生。并且,客戶端數(shù)據(jù)的訪問必須受到保護(hù)。由于KVM屬于Linux一部分,所以遵循Linux進(jìn)程隔離。在內(nèi)核中,自主訪問控制DAC阻止用戶訪問未授權(quán)的資源或其他進(jìn)程。
同樣,基于硬件的隔離也很重要。KVM使用專為虛擬化打造的處理器指令,確保在hypervisor之間子機(jī)的隔離。英特爾虛擬機(jī)擴(kuò)展VMX技術(shù)與AMD安全虛擬機(jī)SVM說明添加了第三層隔離與保護(hù)。
與傳統(tǒng)DAC對應(yīng)就是MAC,即強(qiáng)制訪問控制。除了DAC隔離,通過SELinux,KVM還集成了MAC。有了MAC,是管理員而不是處理器擁有者去決定哪些用戶可以對哪些對象進(jìn)行哪些操作類型的訪問。sVirt API在SELinux中集成了MAC與Linux虛擬化,是紅帽RHEL 6的一個(gè)默認(rèn)選項(xiàng)。此外,在IBM系統(tǒng)上采用KVM的紅帽RHEL通過了通用標(biāo)準(zhǔn)評估保準(zhǔn)級別4+(EAL4+)認(rèn)證,達(dá)到政府安全標(biāo)準(zhǔn)。
最后,KVM是由一個(gè)大型的、活躍的開放社區(qū)共同開發(fā)的,該社區(qū)的重要成員包括紅帽、IBM、SUSE以及很多其它的IT領(lǐng)先廠商。這種基于開源技術(shù)的開發(fā)方法使得KVM能夠獲得更為快速的功能和版本升級。