Docker 等容器化技術(shù)讓公司可以比使用傳統(tǒng)流程更快地部署服務(wù)和應(yīng)用程序。無需部署和配置功能齊全的操作系統(tǒng)和所需的應(yīng)用程序,您只需下載并啟動該應(yīng)用程序的 Docker 映像,通常只需幾分鐘即可開始使用它。Docker 是可移植的,這意味著您可以在運行 Linux、Windows 或 Mac 的工作站上運行相同的映像。例如,DevOps 工程師通常會先在自己的 Mac 或 Windows 工作站上通過 Docker 映像創(chuàng)建和測試新服務(wù),然后再將其上傳到生產(chǎn)環(huán)境中的目的地。無論圖像是在他們的工作站上運行還是在云服務(wù)提供商托管的生產(chǎn)環(huán)境中運行,他們都可以依靠類似的行為。
下載并安裝 Docker 后,您可以立即使用它。使用 Docker 命令,您可以指定一個注冊表(Docker 鏡像形式的軟件集合),然后下載特定應(yīng)用程序的 Docker 鏡像并啟動它。Docker 鏡像是一個非常小的專用文件,通常只包含啟用應(yīng)用程序所需的最少文件。例如,可以不使用 Ubuntu Linux 發(fā)行版,而是使用占用空間較小的發(fā)行版(例如 Alpine-Linux)構(gòu)建映像。通常,只包括必需品,這會使圖像小得多。這也有可能更安全的理想副作用,因為更少的代碼和包通常會導(dǎo)致更小的表面積供攻擊者利用。
較大的環(huán)境通常會使用 Kubernetes 等編排軟件來管理其容器環(huán)境。Kubernetes 有助于根據(jù)定義的業(yè)務(wù)邏輯管理容器的擴展和部署。服務(wù)網(wǎng)格和微服務(wù)架構(gòu)在設(shè)計和支持可擴展的基于云的應(yīng)用程序方面也發(fā)揮著重要作用。服務(wù)網(wǎng)格協(xié)調(diào)不同服務(wù)之間的網(wǎng)絡(luò)流量,并可以充當(dāng)服務(wù)之間的負(fù)載均衡器。服務(wù)網(wǎng)格還可以提供額外的安全功能,例如互連服務(wù)之間的加密和身份驗證。將應(yīng)用程序部署為容器中的微服務(wù)意味著每個服務(wù)(例如,用戶帳戶管理服務(wù)和購物車服務(wù))都是獨立構(gòu)建和托管的。結(jié)合 Kubernetes 和服務(wù)網(wǎng)格,
保護這些技術(shù)依賴于與保護傳統(tǒng)網(wǎng)絡(luò)和服務(wù)類似的安全原則,但確實需要一種略有不同的方法和技術(shù)來了解容器的運行方式。讓我們回顧一下用于保護和管理這些新技術(shù)并防止容器防御出現(xiàn)漏洞的工具和流程。
漏洞管理
容器是使用定義容器行為的只讀文件的圖像來部署的。通常您會從外部注冊表(如 docker hub)下載圖像,或者更高級的用戶會創(chuàng)建自己的圖像。鏡像通?;谝粋€非常輕量級的操作系統(tǒng),在該操作系統(tǒng)之上安裝了一個特定的應(yīng)用程序(例如 Nginx 或 MySQL)。在部署容器之前,使用容器和鏡像感知漏洞掃描器掃描鏡像以確保鏡像安全。當(dāng)您檢測到圖像中的漏洞時,更新圖像并重新部署容器。使用傳統(tǒng)的漏洞掃描器(例如 Nessus)在容器化環(huán)境中可能效果不佳,因為目標(biāo)容器會隨著負(fù)載的變化而變化,并且 IP 地址通常會在服務(wù)網(wǎng)格或覆蓋網(wǎng)絡(luò)架構(gòu)中重復(fù)使用。換句話說,掃描網(wǎng)絡(luò)范圍的結(jié)果可能每天都不同,并且關(guān)聯(lián)發(fā)現(xiàn)可能很困難。
存貨
容器化架構(gòu)依賴于新技術(shù),清點這些對象及其依賴關(guān)系以適當(dāng)保護它們?nèi)匀缓苤匾?。這在原則上與對包括服務(wù)器、應(yīng)用程序和網(wǎng)絡(luò)配置(如子網(wǎng)和訪問控制列表)的 IT 資源進(jìn)行傳統(tǒng)盤點沒有必然的不同。然而,傳統(tǒng) IT 環(huán)境和容器化環(huán)境之間的構(gòu)造通常不同。容器化環(huán)境中需要清點的重要對象包括使用了哪些圖像、運行的容器、運行托管圖像的 Docker 的節(jié)點、環(huán)境中運行的所有服務(wù)和應(yīng)用程序,以及限制對這些對象的訪問的網(wǎng)絡(luò)組。
記錄
在容器化環(huán)境中記錄事件和收集重要的遙測數(shù)據(jù)有助于發(fā)現(xiàn)異常行為。尋找可以檢查容器網(wǎng)絡(luò)連接的容器感知工具。由于容器的短暫性和動態(tài)性,傳統(tǒng)方法(例如基于 IP 地址的靜態(tài)規(guī)則)可能效果不佳。記錄活動是運行時保護的重要組成部分。尋找可以衡量正常操作情況的軟件作為基準(zhǔn),然后對變體發(fā)出警報,包括事件前后發(fā)生的事情。許多容器安全解決方案分析和呈現(xiàn)有助于跟進(jìn)可能事件的日志數(shù)據(jù)取證視圖。
結(jié)論
容器正迅速成為云計算中的流行標(biāo)準(zhǔn)。它們相對快速且易于引入環(huán)境,但傳統(tǒng)的安全工具和流程可能無法識別這些技術(shù)。一定要了解容器是如何工作的,這樣當(dāng)它們進(jìn)入您的環(huán)境時,您就會做好準(zhǔn)備并避免您的環(huán)境中出現(xiàn)可能給您帶來不必要風(fēng)險的黑洞。
審核編輯:湯梓紅
-
Linux
+關(guān)注
關(guān)注
87文章
11215瀏覽量
208742 -
容器
+關(guān)注
關(guān)注
0文章
492瀏覽量
22028 -
Docker
+關(guān)注
關(guān)注
0文章
454瀏覽量
11798
發(fā)布評論請先 登錄
相關(guān)推薦
評論