ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
## 进程限制 限制访问和能力将降低暴露区域在攻击面前的潜在弱点。Docke的缺省设置被设计为限制Linux的capabilities(能力)。Linux的传统视角是以root权限对比用户权限的方式考虑OS安全,而现在的Linux已经演进到支持一种更加细致的权限模型:Capabilities。 Linux capabilities支持用户capabilit及传统方式的颗粒度规格,root用户可以访问每一个capability。通常非root用户有一个更加严格的capability集,但是一般通过使用sudo或执行文件的setuid权限为他们提供了提升至root级别访问的选择。这会构成一个安全凤风险。 [![](https://box.kancloud.cn/2015-11-11_5642a2681848f.png)](http://dockerone.com/uploads/article/20151109/2be3e720db5bb74bd034a3dfd99e3c42.png) 在一个Docker容器内部的缺省capability集不到一个Linux进程所被授予的capability集的一半(见LinuxCapabilities图)。这降低了通过应用程序漏洞提升为root用户而拥有一切权利的的风险。Docker应用了一个额外的颗粒度等级,它对传统的root/非root二分法进行了极大的扩充。在多数情况下,应用程序容器不需要root用户所拥有的全部能力,因为需要这些权限的大多数任务都由容器之外的OS环境来处理。容器可以使用一套缩减的capability集运行,而这不会对应用程序带来负面的影响反而提升了系统整体的安全级别并且缺省使得运行的应用程序更安全。它使得在入侵过程中很难发起系统级别的破坏,即使入侵者想要提升到root权限也无能为力因为容器的能力从根本上被限制住了。