0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Docker安全怎么发挥作用

汽车玩家 来源:未知 作者:新钛云服 2020-05-05 21:12 次阅读

Docker安全吗? 随着越来越多的组织将生产工作负载迁移到容器,这就是价值数百万美元的问题。但也是一个简单的问题,并没有肯定或否定的答案,而不是用二进制术语来思考Docker安全性(也就是说,试图确定它是否安全),最好深入研究Docker如何工作的细节,以便了解Docker安全范例如何发挥作用。那么,让我们来看看Docker如何工作以及这对容器安全性意味着什么。要回答Docker是否安全的问题,我们首先来看看Docker堆栈的关键部分:

Docker有两个关键部分:Docker Engine,即运行时;Docker Hub,是Docker容器的官方注册表。 保护系统的两个部分同样重要。 要做到这一点,需要了解它们各自包含哪些内容,哪些组件需要保护,以及如何保护。让我们从Docker Engine开始吧。

Docker Engine

Docker Engine从容器映像文件托管和运行容器。 它还管理网络和存储卷。 保护Docker Engine有两个关键方面:命名空间和控制组。命名空间是Docker从Linux内核继承的功能。 命名空间将容器彼此隔离,以便容器中的每个进程都无法查看在相邻容器中运行的进程。最初,Docker容器默认以root用户身份运行,这引起了很多关注。 但是,从v1.10开始,Docker支持名称空间,允许您以非root用户身份运行容器。 默认情况下,在Docker中关闭命名空间,因此需要先激活它们才能使用它们。Docker中对控制组或cgroup的支持允许您设置CPU,内存,网络和块IO的限制。 默认情况下,容器可以使用无限量的系统资源,因此设置限制很重要。否则整个系统可能会受到一个饥饿容器的影响。除了命名空间和控制组之外,还可以通过使用SELinux和AppArmor等其他工具进一步加强Docker Engine。SELinux为内核提供访问控制。 它可以根据您为主机设置的策略,根据容器中运行的进程类型或进程级别来管理访问。 根据此策略,它可以启用或限制对主机的访问。AppArmor会将安全配置文件附加到主机上运行的每个进程。 该配置文件定义了进程可以使用的资源。 Docker将默认配置文件应用于进程,但您也可以应用自定义配置文件。与AppArmor类似,Seccomp使用安全配置文件来限制进程可以进行的调用次数。 这完善了DockerEngine中可用的基于Linux的内核安全功能列表。

Docker Hub

当Docker Engine管理容器时,它需要Docker堆栈的另一半来从中提取容器映像。 那部分是Docker Hub——容器图像存储和共享的容器注册表。容器图像可以由任何人创建,并公开供任何人下载。这既是好事,也是坏事。 这很好,因为它可以实现开发人员之间的协作,并且只需点击几下就可以非常轻松地启动操作系统或应用程序的实例。但是如果下载具有漏洞的公共容器映像,则会出现安全性问题。经验法则是始终下载官方存储库,这些存储库可用于大多数常用工具,并且永远不会从未知作者下载存储库。除此之外,应扫描每个下载的容器映像是否存在漏洞。对于私有存储库的用户,Docker Hub将扫描下载的容器映像。它会免费扫描一些存储库,之后您需要支付扫描作为附件。Docker Hub不是Docker容器的唯一注册表服务。其他流行的注册表包括Quay,AWS ECR和GitLab Container Registry。 这些工具还具有自己的扫描功能。 此外,Docker Trusted Registry(DTR)可以安装在防火墙后面,但需要付费。 第三方安全工具虽然上述安全功能为Docker Engine和Docker Hub提供了基本保护,但它们缺乏专用容器安全工具的功能和范围。 像Twistlock这样的工具可以完全保护您的Docker堆栈。 它超越了任何一个部分,并为您提供整个系统的整体视图。Docker是各种移动和静态部件的复杂网格。显然,插入这些安全工具中的任何一个都不会立即使整个堆栈安全。 它将采用这些方法的组合来保护所有级别的Docker。所以,下次有人问你Docker是否安全时,你应该问他们他们指的是Docker的哪一部分。 然后,您可以解释影响该层的各种安全注意事项。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 堆栈
    +关注

    关注

    0

    文章

    182

    浏览量

    19711
  • Docker
    +关注

    关注

    0

    文章

    452

    浏览量

    11789
收藏 人收藏

    评论

    相关推荐

    工控一体机如何在车间发挥作用

    工控一体机在车间中发挥着重要作用,具体表现在以下几个方面:
    的头像 发表于 09-10 09:35 167次阅读

    TS RadiMation测试软件如何在脉冲抗扰度测试中发挥作用

    放电 (ESD) 测试 ● 电快速瞬变 (EFT) /脉冲群抗扰度(Burst)测试 ● 浪涌抗扰度测试 今天为您介绍,TS RadiMation测试软件 如何在脉冲抗扰度测试中发挥作用,实现测试自动化! 一、静电放电测试 下图为ESD配置屏幕。工程师必须选择测试级别和脉冲极性。此外
    的头像 发表于 07-26 10:47 253次阅读
    TS RadiMation测试软件如何在脉冲抗扰度测试中<b class='flag-5'>发挥作用</b>?

    AI 时代,滚珠花键能在哪些领域发挥作用呢?

    在人工智能技术高速发展的大环境下,滚珠花键被赋予了新的应用领域和可能性。其在工业机器人、医疗器械、航空航天技术等领域都发挥着重要作用
    的头像 发表于 07-22 15:03 291次阅读

    关于Docker 的清理命令集锦

    这篇文章主要介绍了Docker 清理命令集锦,需要的朋友可以参考下 复制代码代码如下: docker kill $(docker ps -a -q)  删除所有已经停止的容器 复制代码代码如下
    的头像 发表于 06-13 15:56 294次阅读

    JFrog安全研究表明:Docker Hub遭受协同攻击,植入数百万恶意存储库

    JFrog 和 Docker 在近期发现Docker Hub 存储库被用于传播恶意软件和网络钓鱼诈骗后,联手采取缓解和清理措施。 作者:安全研究员AndreyPolkovnichenko | 恶意
    的头像 发表于 05-14 16:13 870次阅读
    JFrog<b class='flag-5'>安全</b>研究表明:<b class='flag-5'>Docker</b> Hub遭受协同攻击,植入数百万恶意存储库

    智能边缘计算网关如何在实际生产环境中发挥作用

    环境中发挥作用。 案例背景: 某大型制造企业拥有一条高度自动化的生产线,用于生产精密机械零件。这条生产线配备了大量的传感器和执行器,用于监控设备的运行状态、生产数据等。为了确保生产线的稳定运行和提高生产效率
    的头像 发表于 02-21 14:54 288次阅读

    如何利用树莓派安装DockerDocker-compose呢?

    本文主要演示了树莓派如何安装DockerDocker-compose的过程。
    的头像 发表于 12-14 16:19 2654次阅读
    如何利用树莓派安装<b class='flag-5'>Docker</b>和<b class='flag-5'>Docker</b>-compose呢?

    聊聊组成光纤系统的关键组件,它是如何在光纤连接中发挥作用的?

    聊聊组成光纤系统的关键组件,它是如何在光纤连接中发挥作用的? 光纤系统是通过利用光的传输来实现高速、长距离的数据传输。一个光纤系统通常由光纤、光衰减器、光纤连接器、光源、光电转换器等几个关键组件组成
    的头像 发表于 11-28 14:28 566次阅读

    副电源提供故障保护发挥作用所需的电流介绍

    电子发烧友网站提供《副电源提供故障保护发挥作用所需的电流介绍.pdf》资料免费下载
    发表于 11-28 11:14 0次下载
    副电源提供故障保护<b class='flag-5'>发挥作用</b>所需的电流介绍

    docker核心组件有哪些

    Docker 是一种开源的容器化平台,它能够实现将应用程序及其依赖项打包到一个可移植的容器中,从而实现快速、可重复、可扩展的部署和管理。Docker 的核心组件包括 Docker Engine
    的头像 发表于 11-23 09:47 1778次阅读

    docker进入容器的方法有哪些

    Docker是一种流行的容器化平台,它能够快速构建、交付和运行应用程序。在使用Docker时,我们经常需要进入容器进行调试、管理和运行命令等操作。本文将详细介绍Docker进入容器的各种方法,包括
    的头像 发表于 11-23 09:45 1w次阅读

    如何启动本机docker服务

    Docker是一个开源项目,可以帮助开发者打包应用程序及其依赖,并且能够将其作为独立的容器来运行。本文将详细介绍如何在本机上启动Docker服务。 第一步:安装Docker 在开始之前,首先需要
    的头像 发表于 11-23 09:43 1909次阅读

    linux关闭docker的命令

    在 Linux 系统中,关闭 Docker 的操作可以通过以下多种方式进行。本文将详细讲解每一种方式,并提供示例代码和命令,以帮助读者更好地理解和实践。 使用 docker 命令 最常用的方法
    的头像 发表于 11-23 09:39 2695次阅读

    docker exec命令的使用方法

    Docker是一种开源的容器化平台,可以让开发人员在容器中打包和运行应用程序。它提供了一种快速、可靠和一致的方式来构建、部署和运行应用程序。Docker exec命令是Docker提供的一个非常
    的头像 发表于 11-23 09:33 1515次阅读

    docker部署mysql的坏处

    Docker 是一种虚拟化技术,它允许开发人员在容器内打包应用程序及其所有依赖项,从而实现在不同环境中运行相同的应用程序的能力。然而,在使用 Docker 部署 MySQL 时,也存在一些潜在
    的头像 发表于 11-23 09:29 1322次阅读