浅谈Docker安全机制内核安全与容器之间的网络安全

内核安全

内核为容器提供两种技术 cgorups和namespaces,分别对容器进行资源限制和资源隔离,使容器感觉像是在用一台独立主机环境。

·cgroups资源限制

容器本质上是进程,cgroups的存在就是为了限制宿主机上不同容器的资源的使用量,避免单个容器耗尽宿主机资源而导致其他容器异常。

·namespaces资源隔离

为了使容器处在独立的环境中,docker使用namespaces技术来隔离容器,使容器与容器之间,容器与宿主机之间相互隔离。

docker目前仅对uts、IPC、pid、network、mount这5种namespace有完整的支持,user namespace尚未全部支持。除了上述资源外,还有许多系统资源未进行隔离,如/proc和/sys信息未完成隔离,SELinux、time、syslog和/dev等设备信息均未隔离。可见在内核安全方面,虽然已经达到了基本可用的程度,但是距离真正的安全还有一定的距离。

容器之间的网络安全

Docker daemon指定--icc标志的时候,可以禁止容器与容器之间通信,主要通过设定iptables规则来实现。有关iptables的内容欢迎大家参阅:详解Docker使用Linux iptables 和 Interfaces管理容器网络以及本站其他相关内容。

以上就是本文关于Docker安全机制内核安全与容器之间的网络安全的全部内容,希望对大家有所帮助。