Docker安全嗎? 隨著越來越多的組織將生產(chǎn)工作負載遷移到容器,這就是價值數(shù)百萬美元的問題。但也是一個簡單的問題,并沒有肯定或否定的答案,而不是用二進制術(shù)語來思考Docker安全性(也就是說,試圖確定它是否安全),最好深入研究Docker如何工作的細節(jié),以便了解Docker安全范例如何發(fā)揮作用。那么,讓我們來看看Docker如何工作以及這對容器安全性意味著什么。要回答Docker是否安全的問題,我們首先來看看Docker堆棧的關(guān)鍵部分:
Docker有兩個關(guān)鍵部分:Docker Engine,即運行時;Docker Hub,是Docker容器的官方注冊表。 保護系統(tǒng)的兩個部分同樣重要。 要做到這一點,需要了解它們各自包含哪些內(nèi)容,哪些組件需要保護,以及如何保護。讓我們從Docker Engine開始吧。
Docker Engine
Docker Engine從容器映像文件托管和運行容器。 它還管理網(wǎng)絡(luò)和存儲卷。 保護Docker Engine有兩個關(guān)鍵方面:命名空間和控制組。命名空間是Docker從Linux內(nèi)核繼承的功能。 命名空間將容器彼此隔離,以便容器中的每個進程都無法查看在相鄰容器中運行的進程。最初,Docker容器默認以root用戶身份運行,這引起了很多關(guān)注。 但是,從v1.10開始,Docker支持名稱空間,允許您以非root用戶身份運行容器。 默認情況下,在Docker中關(guān)閉命名空間,因此需要先激活它們才能使用它們。Docker中對控制組或cgroup的支持允許您設(shè)置CPU,內(nèi)存,網(wǎng)絡(luò)和塊IO的限制。 默認情況下,容器可以使用無限量的系統(tǒng)資源,因此設(shè)置限制很重要。否則整個系統(tǒng)可能會受到一個饑餓容器的影響。除了命名空間和控制組之外,還可以通過使用SELinux和AppArmor等其他工具進一步加強Docker Engine。SELinux為內(nèi)核提供訪問控制。 它可以根據(jù)您為主機設(shè)置的策略,根據(jù)容器中運行的進程類型或進程級別來管理訪問。 根據(jù)此策略,它可以啟用或限制對主機的訪問。AppArmor會將安全配置文件附加到主機上運行的每個進程。 該配置文件定義了進程可以使用的資源。 Docker將默認配置文件應(yīng)用于進程,但您也可以應(yīng)用自定義配置文件。與AppArmor類似,Seccomp使用安全配置文件來限制進程可以進行的調(diào)用次數(shù)。 這完善了DockerEngine中可用的基于Linux的內(nèi)核安全功能列表。
Docker Hub
當Docker Engine管理容器時,它需要Docker堆棧的另一半來從中提取容器映像。 那部分是Docker Hub——容器圖像存儲和共享的容器注冊表。容器圖像可以由任何人創(chuàng)建,并公開供任何人下載。這既是好事,也是壞事。 這很好,因為它可以實現(xiàn)開發(fā)人員之間的協(xié)作,并且只需點擊幾下就可以非常輕松地啟動操作系統(tǒng)或應(yīng)用程序的實例。但是如果下載具有漏洞的公共容器映像,則會出現(xiàn)安全性問題。經(jīng)驗法則是始終下載官方存儲庫,這些存儲庫可用于大多數(shù)常用工具,并且永遠不會從未知作者下載存儲庫。除此之外,應(yīng)掃描每個下載的容器映像是否存在漏洞。對于私有存儲庫的用戶,Docker Hub將掃描下載的容器映像。它會免費掃描一些存儲庫,之后您需要支付掃描作為附件。Docker Hub不是Docker容器的唯一注冊表服務(wù)。其他流行的注冊表包括Quay,AWS ECR和GitLab Container Registry。 這些工具還具有自己的掃描功能。 此外,Docker Trusted Registry(DTR)可以安裝在防火墻后面,但需要付費。 第三方安全工具雖然上述安全功能為Docker Engine和Docker Hub提供了基本保護,但它們?nèi)狈S萌萜靼踩ぞ叩墓δ芎头秶?像Twistlock這樣的工具可以完全保護您的Docker堆棧。 它超越了任何一個部分,并為您提供整個系統(tǒng)的整體視圖。Docker是各種移動和靜態(tài)部件的復(fù)雜網(wǎng)格。顯然,插入這些安全工具中的任何一個都不會立即使整個堆棧安全。 它將采用這些方法的組合來保護所有級別的Docker。所以,下次有人問你Docker是否安全時,你應(yīng)該問他們他們指的是Docker的哪一部分。 然后,您可以解釋影響該層的各種安全注意事項。
-
堆棧
+關(guān)注
關(guān)注
0文章
182瀏覽量
19781 -
Docker
+關(guān)注
關(guān)注
0文章
472瀏覽量
11865
發(fā)布評論請先 登錄
相關(guān)推薦
評論