隨著Docker的崛起,Linux LXC以及其他的容器供應(yīng)商已經(jīng)多次提出了云計(jì)算容器技術(shù)對(duì)于企業(yè)應(yīng)用是否具有足夠安全性的問(wèn)題。
當(dāng)然,這項(xiàng)新技術(shù)比傳統(tǒng)基于管理處許的虛擬機(jī)具有更低的實(shí)用性,這主要是因?yàn)檫@項(xiàng)技術(shù)本身仍然是相當(dāng)?shù)牟怀墒?。然而,由于其性能方面的?yōu)勢(shì)是顯而易見(jiàn)的,因此業(yè)內(nèi)對(duì)于容器技術(shù)的安全性并未多做討論。
什么是云計(jì)算容器?
容器技術(shù)在很多方面都不同于諸如VMware和VirtualBox這樣的技術(shù)。
首先,容器通常有一個(gè)目的,那就是要托管一個(gè)網(wǎng)絡(luò)服務(wù)器或一個(gè)數(shù)據(jù)庫(kù)。從技術(shù)上講,容器與虛擬機(jī)之間的根本區(qū)別在于虛擬機(jī)模擬虛擬硬件,它需要一個(gè)系統(tǒng)管理程序,因此它需要比云計(jì)算容器技術(shù)更多的磁盤空間和更強(qiáng)大的處理能力。這樣一來(lái),云計(jì)算容器就成為了受云計(jì)算供應(yīng)商安全性程序垂青的組件。例如,Docker就與所有的主要云計(jì)算服務(wù)供應(yīng)商有著一個(gè)合作伙伴關(guān)系,如亞馬遜、微軟以及谷歌等。
毫無(wú)疑問(wèn),容器技術(shù)是非常有用的,它能夠提供更好的便攜性和定制化,同時(shí)減少資源消耗和成本支出,但是與其他眾多"流行的"技術(shù)類似,安全性是阻礙其進(jìn)一步發(fā)展的因素。
容器技術(shù)的最大問(wèn)題在于,它們?nèi)鄙僖粋€(gè)像虛擬機(jī)所擁有的安全邊界。從理論上來(lái)說(shuō),如果一名黑客能夠在底層操作系統(tǒng)中找到一個(gè)漏洞,那么他就同樣可以利用這個(gè)漏洞來(lái)獲得訪問(wèn)容器的權(quán)限。反之的可能性也是理論上存在的,黑客可以找到容器的漏洞,進(jìn)而利用它來(lái)獲得訪問(wèn)底層服務(wù)器的權(quán)限。
更糟糕的是,Docker和其他的容器技術(shù)采用了一些可作為“root”超級(jí)用戶運(yùn)行的功能(Docker表示,在上個(gè)月發(fā)布的1.8版本中已經(jīng)解決了root權(quán)限問(wèn)題)。這個(gè)問(wèn)題可能會(huì)對(duì)云計(jì)算供應(yīng)商環(huán)境帶來(lái)更大的影響,我們可以想象:所有的云計(jì)算服務(wù)都通過(guò)容器進(jìn)行部署,而一名黑客能夠突破一個(gè)容器,并訪問(wèn)相同硬件上的其他容器。對(duì)于云計(jì)算供應(yīng)商和云計(jì)算用戶來(lái)說(shuō),這個(gè)問(wèn)題都有可能是災(zāi)難性的。所以,容器技術(shù)的部署需要深思熟慮。
容器的另一個(gè)問(wèn)題是實(shí)際的創(chuàng)建過(guò)程。例如,如果某一家企業(yè)創(chuàng)建了它自己的容器,那么其安全性水平將起決于企業(yè)本身的能力;如果工作人員沒(méi)有很好地開發(fā)、保護(hù)和管理它,那么容器可能就無(wú)法實(shí)現(xiàn)其預(yù)期效益——也許使用預(yù)制的容器可能會(huì)更好。但是,需要引起注意的是,如果企業(yè)需要從一個(gè)存儲(chǔ)庫(kù)中獲得一個(gè)容器,它可能并不能確切地知道正在下載什么內(nèi)容;例如,如果容器有一個(gè)記錄按鍵操作的技術(shù)可將用戶名和密碼上傳至遠(yuǎn)程服務(wù)器,那么會(huì)怎么樣?
這些安全問(wèn)題都是較為普遍存在的,因?yàn)闃I(yè)界對(duì)于容器安全方面的研究還投入不多。此外,對(duì)于如何確保其安全性也沒(méi)有一個(gè)明確的指導(dǎo)意見(jiàn)。
簡(jiǎn)單而言,在業(yè)內(nèi)把容器技術(shù)和虛擬機(jī)的安全性劃上等號(hào)之前,還是有很多工作要做的。但是,這項(xiàng)工作已經(jīng)開始。Docker在2015年八月發(fā)布了一個(gè)重大的安全更新,其中就包括了名為Docker 內(nèi)容信任的新功能,這個(gè)新功能主要是通過(guò)為容器庫(kù)提供一個(gè)基于公共密鑰的簽名機(jī)制來(lái)實(shí)現(xiàn)容器部署的安全性,從而在一定程度上緩解這一問(wèn)題。
如果某一家企業(yè)是從公共庫(kù)中獲取Docker容器的,那么它應(yīng)當(dāng)尋找那些由新的Docker內(nèi)容信任系統(tǒng)簽名的Docker容器,以便于確保它下載的是一個(gè)合法的容器。其他需要注意的關(guān)鍵點(diǎn)包括:確保禁用不需要的功能、確保只有受信任的用戶能夠操作控制容器的守護(hù)進(jìn)程。此外,還應(yīng)啟用容器間的防火墻以限制不同容器之間的交互。
當(dāng)容器技術(shù)變得越來(lái)越安全時(shí),它們將在大多數(shù)企業(yè)中占據(jù)一席之地。標(biāo)準(zhǔn)部署匹配容器化優(yōu)勢(shì)將為業(yè)內(nèi)用戶帶來(lái)便于部署、較低的資源要求以及成本降低等諸多好處。例如,想要部署數(shù)據(jù)庫(kù)系統(tǒng)的IT團(tuán)隊(duì)能夠很容易地獲得一個(gè)MySQL容器,而這個(gè)容器中已經(jīng)準(zhǔn)備好了所有的必備組件,這樣就大大縮短了系統(tǒng)部署所需的時(shí)間。對(duì)于容器技術(shù)來(lái)說(shuō), 最可能的應(yīng)用場(chǎng)景將是成為虛擬機(jī)的配合角色而不是取代它們。在企業(yè)部署應(yīng)用中,這兩種技術(shù)都有其立足之所。
總之,容器是一個(gè)很好的技術(shù),應(yīng)考慮將其納入商業(yè)應(yīng)用。配合虛擬機(jī)技術(shù),它們能夠節(jié)省時(shí)間和金錢,但是它們的部署卻是需要費(fèi)一番思量的,當(dāng)然其來(lái)源也應(yīng)是可信的。
分享到微信 ×
打開微信,點(diǎn)擊底部的“發(fā)現(xiàn)”,
使用“掃一掃”即可將網(wǎng)頁(yè)分享至朋友圈。