用防火墻來保障容器安全(Docker/Kubernetes)
在部署任何基于容器的應用程序之前,首先通過確保Docker、Kubernetes或其他容器防火墻來保護容器的安全至關重要。有兩種方式來實現(xiàn)容器防火墻:手動或通過使用商業(yè)解決方案。但是,不建議對基于Kubernetes的容器部署進行手動防火墻部署。無論如何,無論采取哪種策略,創(chuàng)建一套網(wǎng)絡防火墻規(guī)則來保護容器部署至關重要,這可以防止容器敏感系統(tǒng)和數(shù)據(jù)被訪問。
新漏洞的不但出現(xiàn)加強了容器安全的必要性,Apache Struts背后的黑客的創(chuàng)造力,Linux堆棧沖突以及cow exploits,所有這些都是因重大數(shù)據(jù)泄露和勒索軟件攻擊臭名昭著,企業(yè)永遠不知道接下來會發(fā)生什么。此外,這些攻擊具有相當?shù)膹碗s性,不僅需要漏洞掃描和修補來應對威脅。
攻擊通常是一系列的事件(或稱為kill chain),攻擊者將進入一個易受攻擊的系統(tǒng),然后升級他的訪問權限并掃描其他系統(tǒng),最終違反數(shù)據(jù)并造成損害。主動式容器防火墻策略可以幫助檢測多個階段的kill chain,并減少此類攻擊,即便在涉及零漏洞的情況下也是如此。
部署防火墻來保護容器并不簡單,就本質(zhì)而言,容器部署根據(jù)需要動態(tài)擴展、更新并遷移主機和云,以優(yōu)化環(huán)境。編排工具管理Pod和容器的IP地址,使得攻擊者難以了解網(wǎng)絡流量。每個容器都包含容器的虛擬化網(wǎng)絡接口,無論是Docker、Kubernetes還是其他程序,環(huán)境的編排工具都會自動部署。由于這種高度動態(tài)的特性,對傳統(tǒng)防火墻規(guī)則和iptables來說,檢查流量并防止容器受到不必要的訪問是一個巨大的挑戰(zhàn)。
容器防火墻保護
可用于容器防火墻部署的選擇與傳統(tǒng)防火墻的選擇相同,包括以下內(nèi)容:
- 3/4層過濾:容器安全性可以基于IP地址和端口實現(xiàn)。還可以使用Kubernetes網(wǎng)絡策略和其他Kubernetes工具以動態(tài)方式更新規(guī)則,在部署更改和擴展容器時加以保護。需要指出的是,這些工具沒有配備實現(xiàn)實時流量監(jiān)控和可視化。
- Web應用攻擊檢測:運行Web應用程序的面向Internet的容器可以通過檢測常見攻擊的方式進行保護,這符合Web應用程序防火墻(WAF)的功能。需要注意的是,僅限于常見的外部攻擊,保護內(nèi)部容器到容器之間的流量所需的多協(xié)議過濾超出了此方法的范疇。
- 7層Docker防火墻:通過具有7層過濾功能的容器防火墻和容器間流量的深度包檢測,可以使用網(wǎng)絡應用程序協(xié)議來保護容器。與此同時,這類防火墻還集成了容器運行時引擎和Kubernetes等云容器編排工具,自動創(chuàng)建策略,基于白名單的保護以及支持云和主機安全的應用程序威脅保護。
手動配置Docker容器防火墻
對于那些對自己的Linux網(wǎng)絡功能充滿信心的用戶而言,手動配置Dcoker容器防火墻是一種有效的選擇。
完成此操作的基本步驟如下:
- 將iptables設置為false以確保Docker不會覆蓋您的規(guī)則
- 檢查您創(chuàng)建的規(guī)則并保存
- 添加允許/轉(zhuǎn)發(fā)的規(guī)則(I/O接口,ICMP,Docker)
- 為輸入和輸出流量以及流量路由添加防火墻規(guī)則,確保容器仍然能夠根據(jù)需要訪問互聯(lián)網(wǎng)
- 加載防火墻規(guī)則
- 允許或限制icc設置為等于true的主機到主機容器通信
遵循這些步驟將能夠通過基本的網(wǎng)絡通信進行控制,通過進一步的規(guī)則更新或商用Docker容器解決方案來實現(xiàn)這些功能的自動化,可以實現(xiàn)對容器與其他容器進行通信的更細致的命令。實際上,在高度動態(tài)的環(huán)境中手動更新容器與容器之間的規(guī)則是不可取的。
云原生方式
盡管云原生Docker容器防火墻與下一代防火墻或WAF相似,但它們在云和托管安全功能方面有巨大差異。通過在云原生容器環(huán)境中提供保護,這些防火墻不僅能夠保護外部南北向流量,還能夠保護內(nèi)部東西向流量,同時隔離并保護工作負載、應用程序?qū)?zhàn)和動態(tài)容器環(huán)境。
通過行為學習來啟用自動策略創(chuàng)建
容器防火墻可能了解容器環(huán)境中每個基于容器服務的正常行為,通過收集盡可能多的行為數(shù)據(jù),防火墻就可以系統(tǒng)地理解應用程序的意圖,管理安全策略以自動支持此意圖,識別并禁止與此意圖不符合的行為。
深度包檢測(DPI)
深度包檢測(DPI)技術是容器防火墻可以提供的另一個重要安全需求。所有漏洞都使用可預測的攻擊媒介:惡意HTTP請求可能包含格式錯誤的頭文件,或者在可擴展標記語言(XML)對象中包含可執(zhí)行的shell命令。有效的檢測部署可以查找和識別這些方式,DPI為此過程增加了一個必要的確定性,允許容器防火墻實時審查每個容器連接,并判斷是否允許數(shù)據(jù)包繼續(xù)傳輸。
無論是手動部署容器防火墻還是使用商用防火墻,對于用戶的解決方案能夠檢測主機和容器中的特權升級和可疑進程,掃描這些漏洞以及監(jiān)控其活動和行為的任何容器環(huán)境的安全性至關重要。商用的容器網(wǎng)絡安全選擇通常提供終端安全和審計功能以及強大的防火墻功能。安全審計和一致性測試工具,如Docker Bench for Security或CIS Kubernetes基準測試工具,將用戶的容器環(huán)境納入測試并指出安全改進的特定需求。



















