Docker安全
Docker的安全性 Docker的安全性主要体现在如下几个方面: Docker容器的安全性这是指容器是否会危害到宿主机或其他容器; 镜像的安全性用户如何确保下载下来的镜像是可信的、未被篡改过的; Docker daemon的安全性如何确保发送给daemon的命令是由可信用户发起的。用户通过CLI或者REST API向daemon发送命令已完成对容器的各种操作,例如通过docker exec命令删除容器里的数据,因此需要保证client与daemon的连接时可信的。 Docker容器的安全性 容器的安全性问题的根源在于容器和宿主机共用内核,因此受攻击的面特别大,另外,如果容器里的应用导致Linux内核崩溃,那么毫无疑问,整个系统哥都会崩溃。这一点与虚拟机是不同的,虚拟机与宿主机的接口非常有限,而且虚拟机崩溃一般不会导致宿主机崩溃。 在共用内核的前提下,容器主要通过内核的Cgroup和Namespace这两大特性来达到容器隔离和资源限制的目的。目前Cgroup对系统资源的限制已经比较完善了,但Namespace的隔离还是不够完善,只有PID、mount、network、UTS、IPC和user这几种。而对于未隔离的内核资源,容器访问时也就会存在影响到宿主机及其他容器的风险。 比如,procfs里的很多接口都没有被隔离,因此通过procfs可以查询到整个系统的信息,例如系统的CPU