2018-09-18 10:09 浏览量:618
随着Docker技术越来越火,很多企业已经基于Docker的云计算平台部署到自己的IDC中。互联网时代,每时每刻都有计算机被黑客攻陷。给企业和个人造成严重的损失。目前,虽然还未发现Docker的严重漏洞,但是,Docker的容器云安全问题不容小视。本文将分享一下作者在实施私有云方面如何做有效的安全防护。
(一) IDC机房安全防护
IDC机房防火墙可预防所有常见的攻击。我们在给客户部署我们容器云产品时,会递交一份产品网络规划说明。说明书上详细说明的产品的网络拓扑图、使用的端口号等等。我们建议客户只开启说明书中提到的端口号。在我们的实践中,对于需要外网访问的用户。我们只需要开启80端口。
部署容器云产品的每台物理机器会开启防火墙。
1. 控制授信机器之间可以互相访问。
2. 禁用icmp协议。
使用vpn远程访问容器服务平台跳板机器。由跳板机器登录容器服务平台所在机器进行日常运维。
(二) Docker daemon 安全
Docker daemon的安全更多是出现在docker engine API的防护上。我们在docker daemon做如下配置
1. 配置tls方式访问docker daemon
2. http remote api 绑定IP地址(只用户内网调度系统访问)
3. 使用非root用户运行docker daemon。例如:创建docker:docker 用户与用户组。
(三) 镜像安全
我们的私有容器云服务镜像来源于两个地方:客户自行构建的镜像与我们的公有云镜像中心。
1. 客户自行构建的镜像
客户自行构建的镜像有两种方式,一种是通过我们容器云平台定制的模板来构建。这种方式下,基础镜像由平台提供,安全最有保证。另外一种由用户编写Dockerfile自行构建的镜像。此类镜像我们通过两种手段来保障容器的安全:人工审核与在线安全扫描。我们会不定期通知用户更新我们的镜像安全扫描特征库来保证镜像的安全。
2. 我们的共有云镜像中心
目前,公有云镜像中心中的镜像全部由我们研发团队与安全管控团队制作,几乎不会存在安全问题的。公有云镜像中心,主要是提供工具类相关的镜像,譬如:缓存、redis、mongodb、微服务架构等等。
(四) 容器安全
我们主要从以下几个部分管控容器安全。
1. 网络安全
不同用户之间容器网络隔离。默认,不同用户的容器与容器之间不能互相访问;同一用户的所有容器可以互相访问。
容器与宿主机网络隔离。默认,容器是不能网络内网环境下任何一台宿主机。
2. 数据安全
宿主机挂在目录。用户通过统一运维管理平台,只能将固定目录挂在到容器中。
不同容器之间文件共享。用户通过统一运维管理平台,可以将自己的数据分享给指定的容器(或者其他用户)。
分布式文件系统。用户通过统一运维管理平台申请数据文件。通过apikey/secrekey访问平台提供的分布式文件存储。
3. 进程安全
采用docker 默认隔离策略。