Docker 运行时如何将安全和隔离作为容器架构一部分

所属分类: 网络 / 网络其他 阅读数: 2089
收藏 0 赞 0 分享
Docker 是开源的一个基于LXC 的高级容器引擎,容器是完全使用沙箱机制,相互之间不会有任何接口。 >

我们需要的不是一次性的标签或设置,而是需要将安全放到软件生命周期的每个阶段。

由于软件供应链上的人、代码和基础设施一直在改变,交互也越来多,组织(公司)必须将安全纳入供应链的核心部分。

考虑一个实际存在的产品:如电话,仅仅考虑到最终产品的安全性是不够的。除了决定使用什么样的防盗包装,你可能也想知道材料的来源,以及他们是如何组装,包装,运输。因为,重要的是我们还要确保手机不被改造或运输途中被盗。

软件供应链几乎跟实际产品的供应链是相同的。你必须能够识别和信任原材料(代码、依赖、打包),把它们组装在一起后,将它们从海上、陆上或空中(网络)运输到一个存储地(存储库),以便将项目(应用)出售(部署)给终端用户。

确保软件供应链也十分相似。你需要:

确定流水线中的所有东西,从人,代码,依赖关系,到基础设施 确保一个一致和优质的构建过程 在存储和运输中保护产品 对材料清单的交付保证并验证最终产品

在这篇文章中,我们将诠释Docker的安全特性如何为软件供应链提供持续的安全。

身份

整个流水线构建在身份验证和访问控制之上 。从根本上说,你需要知道谁可以访问什么资产,可以使用哪些操作。

Docker 架构中的身份认证理念很清晰,它隐藏在软件供应链策略中:加密密钥允许发布者对镜像进行签名,以保证其来源的真实性。

一致的构建:好的输入= 好的输出

确定一致的构建允许你创建一个可重复的过程,并控制你的应用程序依赖和组件,以便使它更容易测试出缺陷和漏洞。当你对你的组件有一个清晰认识的时候,它变得更容易识别异常的组件。

要获得一致的构建,你必须确保你添加了优质的组件:

评价依赖的质量,确保它是最新/兼容的版本,并用你的软件进行测试 验证组件来自于你期望的来源,并且在传输过程中没有损坏或改变 确定依赖后不要轻易改变,确保后续重建是一致的,因此如果一个缺陷是由代码或依赖的变化引起的,很容易被发现 使用Docker Content Trust ,从可信的、有标识的基础镜像中构建你的镜像

使用签名”密封”构建结果

应用程序签名是从构建进行有效“密封”的一步。通过镜像签名,可以确保任何在接收端(docker pull)的签名验证与镜像发布者建立一个安全链。

这种关系保证了镜像在传输过程中不被改变、添加、或删除。此外,签名表明发布者“赞同”你拉取的该镜像是没问题的 。

在构建机器和运行环境上启用 Docker Content Trust后,一个策略就会生效:只有签名镜像才可以被拉取并运行在那些 Docker 主机上。

在组织中,签名的镜像向其他人传递一个信号:发布者(构建者)声明镜像是没问题的。

安全扫描和风控

CI系统和开发者都需要确认一件事情:构建工具与依赖一起工作,操作你的应用程序时,无论在成功还是失败,都有预期的行为。

但他们审查过依赖的漏洞吗?审查过子依赖或捆绑系统库的依赖吗?他们知道依赖的许可证吗?这种审查很难通过常规的方式来完成,因为提供错误修正和功能上是一个巨大的开销。

Docker 安全扫描有助于镜像的自动化扫描。因为这是发生在镜像被推送到registry之前,在容器被部署进生产环境之前的最后一次检查。

该功能目前在Docker Cloud 中可用,并且很快延伸到Docker Datacenter。安全扫描创建了一个清单,清单中包括镜像每一层的打包信息和版本信息。

这份材料清单被用于连续监测各种 CVE 数据库。确保该扫描不止一次地发生,并在爆出新漏洞时,及时通知使用镜像的系统管理员或应用程序开发者。

多重签名-- 把签名绑在一起

安全保证最强大的一点来自Docker Content Trust 签名,它允许多个签名者参与容器的签名过程。要了解这一点,想象一个简单的 CI 过程,通过以下步骤移动容器镜像:

自动化CI Docker 安全扫描 推送到 staging环境 推送到 production 环境

这里有四个阶段,每个阶段完成后,都可以添加一个签名,从而CI/CD 过程的每一个阶段都有验证。

镜像通过CI 吗?添加签名! Docker Security Scanning 确定镜像没有漏洞?添加签名! staging阶段中构建成功?添加签名! 验证所有3个签名的镜像并将其部署到生产中

现在构建被部署到生产集群之前,它可以加密验证,CI / CD过程各阶段已经签订了一个镜像。

结论

在软件生命周期的每个环节,Docker 平台都允许企业将安全纳入其中。从与用户建立信任,到基础设施和代码,docker模型给了开发者以及 IT团队足够的自由和控制力。

从构建安全的基础镜像,到扫描每一个镜像验证签名,每个特性都允许IT人员将信任植入到应用中。

当应用沿着正常的生命周期不断前行,安全信息也能够动态维护和更新,并在部署到生产环境之前通过风控检查。

更多精彩内容其他人还在看

怎么开通联通免费WLAN?联通WLAN免费开通的详细教程

怎么开通联通免费WLAN?相比移动电信的收费WLAN,联通提供免费的WLAN,测试带宽4M左右,下面小编就给大家演示一下怎么开通和使用,需要的朋友可以参考下
收藏 0 赞 0 分享

公共网络无法连接 显示黄色叹号的解决方法

很多时候我们在上着网的时候会突然断线,然后再也无法连接上,并且电脑右下角的本地连接图标上会出现一个叹号,提示网络连接受限制或无连接,下面小编就为大家介绍公共网络无法连接,显示黄色叹号的解决方法介绍,希望能对大家有所帮助
收藏 0 赞 0 分享

宽带网络怎么设置?宽带网络设置方法

宽带路由怎么设置一直困扰着很多初次配置路由的朋友们,那么宽带网络怎么设置?下面小编就为大家介绍宽带网络设置方法,希望能对大家有所帮助
收藏 0 赞 0 分享

DNSPod DNS(119.29.29.29)无劫持怎么样?解析速度对比评测

很多朋友终于都忍受不了国内疯狂的电信运营商DNS劫持现象,旗下的DNSPod推出DNSPod公共DNS服务,主打安全无劫持,那速度怎么样呢?解析准确率又如何呢?下面小编来为大家简单测试一下
收藏 0 赞 0 分享

电脑网络连接失败 网卡只有发送没有接收该怎么办?

电脑网络连接失败 网卡只有发送没有接收该怎么办?电脑没法上网,网线和网络都没有问题,就是测试发现有发送包但接收包为0,该怎么办呢?下面分享解决办法,需要的朋友可以参考下
收藏 0 赞 0 分享

怎么查看自己的Wifi是否被盗用 怎么查看wifi有几个人用

在使用wifi上网的时候,如果使用的人多会影响网速,所以一般都会设置密码,但是现在有很多能破解密码的软件,那么如何查看自己的wifi有没有被盗用?到底有多少个人用呢?下面脚本之家小编教大家怎么查看自己的Wifi是否被盗用,需要的朋友可以参考下
收藏 0 赞 0 分享

Wifi密码怎么看?常用Wifi密码排名大全

如今Wifi无线网络已经非常流行,有时候如果需要临时上网,打算连接这些搜索到的Wifi,但没有密码怎么办?下面小编位大家介绍Wifi密码怎么看以及常用的WiFi密码吧
收藏 0 赞 0 分享

路由器与无线网卡连接故障详细分析

在使用路由器时,会顺便使用同一品牌的无线网卡,这样对兼容性是最好的,可以有效的提升无线网的传输速度,但在使用过程中,也会出现各种不同的故障。
收藏 0 赞 0 分享

电信流量不清零是真的吗 10月1日起中国电信流量不清零

运营商流量不清零终于要开始无门槛实施了,至少中国电信是这样。从网友@看啊就是這只貓曝光的图片来看,中国电信已经引发了“关于套餐内流量单月不清零实施方案的通知”,通知中明确表示,从10月1日开始,中国电信所有手机上网按流量计费的月套餐用户
收藏 0 赞 0 分享

无线网传输变慢的解决办法

无线局域网是越来越多用户采用的组网方式,也被称为WLAN(WirelessLAN),安装十分方便,不需要重新布线、不会破坏家庭原有装修,相比有线网络,无线网络要灵活得多。
收藏 0 赞 0 分享
查看更多