軟件容器無疑正處于上升期的,開發人員在構建更高效且能迅速帶到市場的原生云應用程序時,更會看重容器所提供的靈活性。同時由于容器所帶來的資源利用率的提高,也有益于提高生產力,降低成本。有些人認為,容器的安全性低于部署虛擬機(VM),但在適當的實現中,容器可以提供更安全的環境。網絡安全是一個復雜的問題,但業內人士都在致力于開發所需的工具和流程來解決這個問題。
此外,容器和VM不是非此即彼的命題。如果你愿意,也可以將容器部署到虛擬機上,或使用像英特爾Clear容器或開源Hyper這樣的技術去實現一個兩全其美的方案:同時具備VM的隔離性與容器的靈活性。
容器和分布式系統帶來了一個進展,使得靈活性與速度超過了傳統流程。而越遲應用的企業,競爭力則會越弱。一旦你決定遷移到容器部署,還要確保采取了適當的辦法步驟去保護你的基礎設施。
這里有5個最佳的辦法,可保護你的分布式系統:
1、使用一個輕量級的Linux操作系統
一個輕量級的操作系統,除了其他的收益外,也降低了表面的易受攻擊性。這也使得應用更新容易得多,因為操作系統更新與應用程序不掛鉤,而且更新后重新啟動會花費更少的時間。
2、保持所有圖像是最新的
保持所有圖像是最新的,確保它們被打補丁,以防止最新的漏洞利用。實現這一目標的最好方法是使用一個集中的存儲庫來幫助進行版本控制。通過使用版本號標記每個容器,更新會更容易管理。容器本身也持有自己的依賴性,需要維護。
3、自動安全更新
自動更新能確保補丁很快應用于基礎設施,將發布補丁與應用于生產之間的時間間隔最小化。解耦的容器可以相互獨立更新,并且可以遷移到另一個主機,如果主機操作系統需要更新的話。無需為基礎設施安全更新會影響你堆棧的其他部分而擔心。
4、掃描容器圖像排 除潛在缺陷
有很多工具可以幫助你做到這一點。這些工具會對比容器的已知漏洞列表,且會對你進行提醒,無論它們是探測到了一些可能會影響你容器啟動的舊漏洞還是發現了一個會影響你容器運行的新漏洞。
5、不要在容器中運行無關的面向網絡的服務
不在容器中運行Secure Shell(SSH)被認為是最好的做法——對容器訪問而言,編排API通常會有更好的訪問控制。一個好的經驗法則是,如果你不希望個人容器執行日常維護任務,就不要允許任何登錄訪問。相對于VM來說,設計一個生命更短的容器也是一個好辦法,它可以確保每個生命周期都能夠獲得最新的安全性能。
容器領域的安全會繼續發展。通過上文中概述的5個最佳辦法,我希望能有助于消除容器不安全的言論,幫助企業更好地利用容器所帶來的生產力,同時盡可能保證安全。