网络安全检测|网络安全服务|网络安全扫描-香港墨客投资移动版

主页 > 业界资讯 > 网络安全预防措施

开发漫谈:千万别说你不了解Docker!(4)

  Joerg Fritsch指出:"Docker与容器技术目前还无法通过虚拟机管理程序弥合自身最为严重的两大短板:安全性保障与管理功能,外加在常见控制机制的机密性、完整性与可用性方面提供支持。"

  总体来讲,Docker的安全性能还不错,只是这还是一项年轻的技术、因此目前尚未积累起能够满足实际生产需求的完整工具生态系统。

5Docker安全鉴定三方面

  其实如果要谈论Docker的安全性,我们就要谈论三点:命名空间(Namespace);Docker程序本身的抗攻击性和加固内核安全性来影响容器的安全性。

Docker入门白皮书:总能找到你想要的


企业对Docker是否认可?安全是关键

  1、命名空间(Namespace):Docker有五个命名空间:进程、网络、挂载、宿主和共享内存,为了隔离有问题的应用,Docker运用Namespace将进程隔离,为进程或进程组创建已隔离的运行空间,为进程提供不同的命名空间视图。这样,每一个隔离出来的进程组,对外就表现为一个container(容器)。需要注意的是,Docker让用户误以为自己占据了全部资源,但这并不是"虚拟机"。

  内核namesapce从内核2.6.15之后被引入,距今已经5年了,在很多大型生产系统中被验证。他们的设计和灵感提出的时间更早,openvz项目利用namespace重新封装他们的内核,并合并到主流内核中。openvz最早的版本是2005年的,所以他们的设计和实现都很成熟。

  2、Docker程序本身的抗攻击性:Docker允许你在主机和容器之间共享文件夹,这就容易让容器突破资源限制,那么容器就可以对主机做任何更改了。但实际上,几乎所有虚拟机系统都有在物理主机和虚拟机之间共享资源的限制,所以这一层的安全性,需要你自己把控。

  3、加固内核安全性:默认情况下,Docker启动的容器只使用一部分内核capabilities,就算攻击者在容器中取得了root权限,他能做的破坏也少了,也不能获得主机的更高权限。

  由此我们可以说:Docker还是比较安全的,但是你要注意使用在容器中使用非root权限允许进程。

  目前来说,Docker的主要应用场景为:

  面向开发人员:快速开发、交付应用程序。开发环境的机器通常内存比较小,之前使用虚拟的时候,经常需要为开发环境的机器加内存,而现在Docker可以轻易的让几十个服务在Docker中跑起来。

  面向运维人员:降低运维成本。正如通过虚拟机来整合多个应用,Docker隔离应用的能力使得Docker可以整合多个服务器以降低成本。Docker通过镜像机制,将你的代码和运行环境直接打包成镜像,扔到容器启动即可。

  面向企业:Docker本身就发家于PaaS,在Docker面向企业,是可以提供Paas层的实现;比如,扩展现有的OpenShift或Cloud Foundry平台来搭建自己的PaaS环境。

Docker入门白皮书:总能找到你想要的


Docker"集装箱"  

6评说Docker

  【七】评说Docker

  Solomon Hykes(Docker之父):"建立一个为所有生产软件共有的系统,使用一种被广泛接受的方式,让它可以很好的运行和扩展,让它可以被所有人依赖,然后将它视为理所当然的存在,并使用它创造自己的奇迹,这是个挑战。

Docker入门白皮书:总能找到你想要的

评说Docker

  Chris Swan (银行业的技术专家,曾经有十几年的时间在从事金融服务业):Docker公司已经建立了清晰的道路,即发展核心能力(libcontainer)、跨业务管理(libswarm)和容器间消息(libchan)。

  Docker公司表达了利用自身生态系统的意愿。随着时间的推移,虚拟机和容器(Docker中的"运行"部分)之间的区别很可能变得不再那么重要,这将使注意力转到"构建(build)"和"交付(ship)"方面。

  马全一(Docker中文社区创始人之一):Docker一定会成为云计算和大数据领域的重要成员之一。

(责任编辑:admin)