热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Docker的安全基准

nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd

Docker公司与Center for Internet Security (CIS)合作,制作了一份基准文档[pdf],包含很多针对部署Docker的安全性的建议。Diogo Mónica在一篇博客“理解Docker的安全性和最佳实践”中公布了该基准,她和Nathan McCauley一起最近受雇来领导Docker的安全团队。该团队也发布了“容器安全性入门”[pdf]白皮书。


#


基准文档涵盖了运行Docker的宿主(系统)的配置、Docker本身的配置,以及在Docker管理下运行的容器的配置。该基准针对Docker 1.6.0,(这是)本文写作时的最新版本,并且基于(使用)红帽企业Linux(RHEL)第7版或Debian第8版作为宿主操作系统(OS)。基准的附录中有包含每项建议的检查清单。


建 议分为两个级别,第一级涉及的措施“实用而谨慎,提供明确的安全方面的好处,而又不妨碍运用的技术超出可接受的范围。”第二级的建议更加具有侵入性,被描 述为“针对把安全性视为头等大事的环境或情况,作为深入全面的防御措施,或者会消极地抑制技术的运用或性能。”第一级的建议适用于宿主操作系统和 Docker,而第二级的3项关于强制访问控制(mandatory access control,MAC)和端点保护平台(endpoint protection platform,EPP)的建议,只适用于Docker。


很多建议在其审核一节有脚本片段,可以用来判断配置是否 处于所需的状态,这表明,大部分基准可以组织成脚本,用来检查(及重新配置)宿主是否符合基准。补救措施在适当的情况下也用脚本片段描述,但是这些脚本不太有用,因为在大多数情况下,必须编辑启动配置。鉴于所有主要的Linux发行版本现在都切换到systemd作为其默认的启动系统,CIS可能会选择显 示与此相应的配置步骤,但这也有可能会造成许多仍在旧发行版本上运行Docker的用户的困惑。


尽管有些建议是相当通用的,比如“不要在生 产环境使用开发工具”,大多数建议还是很具体和可操作的,比如“不要使用aufs”。因此该基准可以用来剖析某一Docker环境,决定可以采取以提高其安全性的实际步骤。当由于底层宿主操作系统的不同而存在多种选择时,就会给出由Docker核心团队和其他人撰写的很多外部指导性文档。


一些可能以前被认为是容器的最佳实践,比如,“一个容器只包含一个进程”,以及,“不要在容器内运行SSH”,在基准中作为安全性的建议。把这认为是安全性的问题,将有可能进一步削弱把容器作为小型虚拟机的使用模式。


基准中有一些特别之处希望能在将来的版本中解决。其中之一是在Docker将来的版本中对用户命名空间的支持,表明这有可能出现在1.6版本中(即使该基准就是关于1.6版本的)。这也许说明用户命名空间的整合的确要比预想的更成问题。基准还建议使用nsenter,尽管其使用已经在很大程度上被Docker 1.3引入的‘exec’命令所取代。


伴随基准推出的白皮书表明,Docker公司正努力把容器定位为改进安全性的方法,但就象任何新技术一样,公司面临艰难的时刻说服对安全性有顾虑的客户,在生产环境运行是安全的。CIS基准的发布为那些想在生产环境运行Docker的(用户)提供了可测量的手段来评估其安全状况,这很可能有助于缓解任何顾虑。对于拥抱Docker来打包应用程序、加速持续交付管道、以及促进微服务架构的开发者,这应当使(部署)到生产环境中的最后步骤在一定程度上更加容易。


Docker安装应用(CentOS 6.5_x64) 2014-07/104595.htm 


在 Docker 中使用 MySQL 2014-01/95354.htm


在Ubuntu Trusty 14.04 (LTS) (64-bit)安装Docker 2014-10/108184.htm 


Docker安装应用(CentOS 6.5_x64) 2014-07/104595.htm 


Ubuntu 14.04安装Docker  http://www.linuxidc.com/linux/2014-08/105656.htm 


阿里云CentOS 6.5 模板上安装 Docker 2014-11/109107.htm 


Docker 的详细介绍:请点这里
Docker 的下载地址:请点这里



推荐阅读
  • 本文探讨了如何在日常工作中通过优化效率和深入研究核心技术,将技术和知识转化为实际收益。文章结合个人经验,分享了提高工作效率、掌握高价值技能以及选择合适工作环境的方法,帮助读者更好地实现技术变现。 ... [详细]
  • PyCharm下载与安装指南
    本文详细介绍如何从官方渠道下载并安装PyCharm集成开发环境(IDE),涵盖Windows、macOS和Linux系统,同时提供详细的安装步骤及配置建议。 ... [详细]
  • 本文详细介绍了如何在BackTrack 5中配置和启动SSH服务,确保其正常运行,并通过Windows系统成功连接。涵盖了必要的密钥生成步骤及常见问题解决方法。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 探讨如何高效使用FastJSON进行JSON数据解析,特别是从复杂嵌套结构中提取特定字段值的方法。 ... [详细]
  • 本文介绍了Java并发库中的阻塞队列(BlockingQueue)及其典型应用场景。通过具体实例,展示了如何利用LinkedBlockingQueue实现线程间高效、安全的数据传递,并结合线程池和原子类优化性能。 ... [详细]
  • 本文介绍了如何使用JQuery实现省市二级联动和表单验证。首先,通过change事件监听用户选择的省份,并动态加载对应的城市列表。其次,详细讲解了使用Validation插件进行表单验证的方法,包括内置规则、自定义规则及实时验证功能。 ... [详细]
  • 本文介绍了一款用于自动化部署 Linux 服务的 Bash 脚本。该脚本不仅涵盖了基本的文件复制和目录创建,还处理了系统服务的配置和启动,确保在多种 Linux 发行版上都能顺利运行。 ... [详细]
  • 在Ubuntu 16.04 LTS上配置Qt Creator开发环境
    本文详细介绍了如何在Ubuntu 16.04 LTS系统中安装和配置Qt Creator,涵盖了从下载到安装的全过程,并提供了常见问题的解决方案。 ... [详细]
  • 尽管某些细分市场如WAN优化表现不佳,但全球运营商路由器和交换机市场持续增长。根据最新研究,该市场预计在2023年达到202亿美元的规模。 ... [详细]
  • 掌握远程执行Linux脚本和命令的技巧
    本文将详细介绍如何利用Python的Paramiko库实现远程执行Linux脚本和命令,帮助读者快速掌握这一实用技能。通过具体的示例和详尽的解释,让初学者也能轻松上手。 ... [详细]
  • 本文探讨了在Linux系统上使用Docker时,通过volume将主机上的HTML5文件挂载到容器内部指定目录时遇到的403错误,并提供了解决方案和详细的操作步骤。 ... [详细]
  • 科研单位信息系统中的DevOps实践与优化
    本文探讨了某科研单位通过引入云原生平台实现DevOps开发和运维一体化,显著提升了项目交付效率和产品质量。详细介绍了如何在实际项目中应用DevOps理念,解决了传统开发模式下的诸多痛点。 ... [详细]
  • 选择适合生产环境的Docker存储驱动
    本文旨在探讨如何在生产环境中选择合适的Docker存储驱动,并详细介绍不同Linux发行版下的配置方法。通过参考官方文档和兼容性矩阵,提供实用的操作指南。 ... [详细]
  • 如何将本地Docker镜像推送到阿里云容器镜像服务
    本文详细介绍将本地Docker镜像上传至阿里云容器镜像服务的步骤,包括登录、查看镜像列表、推送镜像以及确认上传结果。通过本文,您将掌握如何高效地管理Docker镜像并将其存储在阿里云的镜像仓库中。 ... [详细]
author-avatar
殇子休
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有