在Docker容器技术兴起的初期,对于许多企业而言,容器安全问题一直是他们在生产环境中采用Docker的一大障碍。然而,在过去的一年中,许多开源项目、初创公司、云供应商甚至是Docker公司自己,已经开始打造用于强化Docker环境的新解决方案,关于容器安全的担忧及挑战正在被逐渐解决。如今,许多容器安全工具可以满足容器整个生命周期的各方面需求。


Docker 的安全工具可以分为以下几类:

内核安全工具:

这些工具源于Linux开源社区,它们已经被docker等容器系统吸纳成为内核级别的基础安全工具。

镜像扫描工具:

Docker Hub是最受欢迎的容器镜像仓库,但除Docker Hub之外也有很多其他镜像仓库可供选择。大多数镜像仓库现在都有针对已知漏洞扫描容器镜像的解决方案。

编排安全工具:

Kubernetes和Docker Swarm 是两个被普遍使用的编排工具。并且它们的安全功能在过去一年已经得到加强。

网络安全工具:

在容器驱动的分布式系统中,网络比以往更为重要。基于策略的网络安全在基于外围的防火墙上的重要性越来越突出。

安全基准测试工具:

互联网安全中心(CIS)为容器安全提供了指导方针,这一方针已被Docker Bench和类似的安全基准工具所采用。

CaaS平台的安全性:

AWS ECS,、GKE和其他CaaS平台通常是基于其母公司的laaS平台来构建其安全功能。然后添加容器专用功能或者借用Docker、Kubernetes的安全功能。

容器专用安全工具:

对于容器安全来说,这是一个最优选择。其中,机器学习是中心阶段,因为这类工具能够为容器安全构建智能的解决方案。

以下是根据Docker堆栈工具安全部分,列出的可用的Docker安全工具备忘清单。

内核安全工具

命名空间(Namespaces)

命名空间隔离了相邻的进程,并且限制了容器所能看到的内容,因此可以防止攻击的蔓延。

cgroups

该工具限制了容器使用的资源,限制容器可以使用的内容,从而防止受感染的容器占用所有的资源。

SeLinux

该工具为内核提供访问控制。它强制执行“强制访问控制(MAC)”,依据策略控制了容器访问内核的方式。

AppArmor

该工具可以启用进程访问控制,可设置强制执行策略,亦可设置为仅在违反策略时发出报告。

Seccomp

该工具允许进程以“安全”状态与内核进行交互,“安全”状态下仅可执行数量有限的一些命令。如果超出命令,那么进程将被终止。

镜像扫描工具

Docker Hub安全扫描

该工具根据常见漏洞和暴露列表(CVEs)扫描从Docker Hub下载的镜像。

Docker Content Trust

该工具可以根据作者验证从第三方文件库下载的镜像,作者可是个人或组织。

Quay Security Scanner

该工具由CoreOS Clair提供支持。这是Quay Docker安全扫描版本,它可以扫描容器镜像漏洞。

AWS ECR

作为AWS ECS的一部分,ECR在S3中静态加密图像,并通过HTTPS传输。它使用AWS IAM控制对镜像仓库的访问。

编排安全工具

Docker Swarm Secrets Management

用安全的方式来使用Docker Swarm存储密码、token以及其他机密数据。

Kubernetes Security Context

保证在Kubernetes集群中容器和pod的安全,并提供访问控制及 SELinux 和 AppArmor等Linux内核安全模块。

网络安全工具

Project Calico

通过提供基于策略的安全保障来保护容器网络,并确保服务只能访问其所需要的服务和资源。

Weave

该工具为容器网络强制实施基于策略的安全保障,并且为每个容器而非整个环境提供防火墙。

Canal

集成了Project Calico的安全功能和Flannel的连接功能,为容器提供了全面的网络解决方案。

安全基准测试工具

Docker Bench

这是一个根据互联网安全中心(CIS)创建的基准清单,来检查生产环境中的容器的安全状况的脚本。

Inspec

这是一个由Chef构建的测试框架,它将合规性和安全性视为代码。此外,它可以扫描镜像并拥有自己的一个Docker Bench版本。

CaaS平台的安全性

AWS ECS

在AWS ECS中,容器是运行在虚拟机内的,这就为容器提供了第一层安全保护。同时ECS也添加了AWS的安全功能,如IAM、安全组以及网络ACLs等。

Azure容器服务

Azure容器服务有自己的容器镜像仓库来扫描镜像,同时还可充分利用Azure的默认安全功能,如IAM。

GKE

GKE采纳了Kubernetes的安全功能并且添加了一些自己谷歌云的安全功能,如IAM和RBAC。

容器专用安全工具

Twistlock

这是一个端到端的容器安全平台。它利用机器学习来自动分析应用程序。

Aqua Security

一个端到端的容器平台,提供了易于扩展的成熟API。

Anchore

该工具可以扫描容器镜像并为容器平台强制运行安全策略。同时它用Jenkins整合了CI/CD的工作流程。

NeuVector

该工具通过执行服务策略来保护容器运行安全。并且能够基于自动化白名单自动开始或停止容器运行。

Deepfence

该工具是CI / CD集成安全工具,可防止已知的攻击。

StackRox

该容器安全工具可以利用机器学习提供“自适应威胁保护”

Tenable

这是一个可以扫描容器镜像的托管安全解决方案,它甚至可以允许企业在它们的环境内执行安全策略。

Cavirin

这是一个持续的安全评估工具,可以根据CIS基准测试漏洞。

感受Docker安全工具的魅力

本文是一个十分全面的Docker安全工具清单。通过这份清单,我们可以清楚地发现,保证Docker的安全需要多种工具的共同合作。因为每个工具都有其优势以及所专注的领域。有针对容器堆栈的内核、镜像仓库、网络、编排工具以及CaaS平台的每一层提供解决方案。最棒的是,大部分工具或者至少是大部分容器工作负载中的常用工具都非常适合彼此集成

充分了解每个安全工具的功能及其特性之后,您可以为企业级生产工作负载打造固若金汤的容器安全环境。这一直是Docker的承诺,而容器安全工具把这一承诺变成了现实。

作者简介

Twain在谷歌开始他的职业生涯,其中,他成为了AdWords团队的技术支持。他的工作涉及审查堆栈跟踪,解决影响客户和支持团队的问题以及处理升级问题。后来,他建立了品牌社交媒体应用程序和自动化脚本,来帮助创业公司更好地管理它们的营销业务。今天,他作为一名技术记者,帮助IT杂志以及初创公司改变构建和发布应用程序的方式。

推荐阅读

细数你不得不知的容器安全工具

Rancher Labs联手NeuVector,提供容器管理与安全解决方案

30个不可不知的容器技术工具和资源

使用开源工具fluentd-pilot收集容器日志

如若转载请注明出处,谢谢!
微信号: RancherLabs


Rancher
1.2k 声望2.5k 粉丝

Rancher是一个开源的企业级Kubernetes管理平台,实现了Kubernetes集群在混合云+本地数据中心的集中部署与管理。Rancher一向因操作体验的直观、极简备受用户青睐,被Forrester评为“2020年多云容器开发平台领导厂商...