本文概述
- 正宗的Docker映像
- 授权访问
- 敏感信息管理
- 代码级和应用程序运行时安全性
- 完整的生命周期管理
- 限制资源
- 监控容器活动
Docker已经走了很长一段路, 一直在努力构建功能强大且安全的产品, 提出最佳实践并对任何漏洞或问题具有高度的响应能力。
自成立以来, Docker的采用量逐年大幅增长。通过勤奋的设置, 无需任何无知, Docker无疑将成为你为IT实践提供的强大资产。
保护你的容器环境的责任不仅在于加强容器或它们最终运行的服务器, 而且还必须制定策略, 以妥善处理从注册表中拉出容器映像到推动容器时的所有细微动作。进入生产世界。
由于容器通常是作为CI / CD框架的一部分以DevOps速度部署的, 因此必须自动化执行更多任务, 从而提高效率, 生产率, 审计/日志记录, 从而处理安全问题。
文章图片
以下概述了采用Docker时应注意的与安全性相关的最佳实践。
正宗的Docker映像 很多时候, 开发人员开始使用基本的Docker映像, 而不是从头开始重建。但是, 从不受信任的来源下载这些映像可能会增加安全漏洞。
因此, 请采取以下预防措施, 确保在下载图像之前检查真实性:
- 使用来自受信任来源(例如Docker Hub)的基础映像, 该基本映像具有由Docker的Security Scanning Services进行扫描和审查的映像。
- 使用由Docker Content Trust数字签名的基本映像, 以防止伪造。
拥有适当的Docker访问管理解决方案至关重要, 它可以使容器以最小的权限运行以完成任务所需的特权和访问权限, 从而降低了风险因素。
随着用户数量的增加, 这有助于照顾可伸缩性。
敏感信息管理 根据Docker Swarm服务的说法, 机密是敏感数据, 不应在Dockerfile或应用程序的源代码中未经加密地进行通信或存储。
机密是敏感信息, 例如密码, SSH密钥, 令牌, TLS证书等。机密在传输过程中以及在Docker群中处于静止状态时都经过加密。只有已明确授予访问权限的服务才可以访问机密, 并且仅当这些服务正在运行时才可以访问。
必须确保秘密只能由相关的容器访问, 并且不应在主机级别公开或存储。
代码级和应用程序运行时安全性 Docker安全性始于主机级别, 因此保持主机操作系统更新至关重要。此外, 通过结合最佳的安全性相关编码实践, 容器内运行的进程应具有最新更新。
你必须主要确保由第三方供应商安装的容器不会下载任何内容并在运行时运行任何内容。必须声明Docker容器运行的所有内容并将其包含在静态容器映像中。
文章图片
命名空间和cgroups权限应最佳地应用于访问隔离和控制每个进程可以修改的内容。
容器跨群集彼此连接, 从而使它们的通信限制了防火墙和网络工具的可见性。在发生攻击时, 利用纳米分段可以有效地限制爆炸半径。
完整的生命周期管理 容器安全性取决于你处理容器生命周期的方式, 涉及从创建, 更新到删除容器的权利。应该将容器视为不可变的, 而不是使用更新来更改或更新正在运行的容器, 创建新映像并彻底测试这些容器的漏洞并替换现有容器。
限制资源 Docker是轻量级进程, 因为你可以运行比虚拟机更多的容器。这有利于最佳利用主机资源。尽管它可以引起诸如拒绝攻击之类的漏洞威胁, 但可以通过限制单个容器可以通过诸如Swarm之类的容器框架消耗的系统资源来处理这些威胁。
监控容器活动 与任何其他环境一样, 至关重要的是, 必须持续主动地监视容器生态系统周围的用户活动, 以识别并修复任何恶意或可疑活动。
必须将审核日志合并到应用程序中, 以记录事件, 例如创建和激活帐户的时间, 目的, 最后一次更新密码的时间以及组织级别的类似操作。
在为组织创建和部署的每个容器周围实施此类审核跟踪之后, 这将是识别恶意入侵的好习惯。
总结
Docker在设计时就考虑了最佳安全实践, 因此安全性在容器中不是问题。但是至关重要的是, 你切勿放松警惕并保持警惕。
随着更多的更新和改进的出现, 将这些功能付诸实践将有助于构建安全的应用程序。将容器安全性方面(如容器映像, 访问和权限, 容器分段, 机密信息和生命周期管理)纳入IT实践中, 可以确保优化的DevOps流程而将安全问题降至最低。
【安全最佳实践–构建可靠的Docker容器】如果你是Docker的新手, 那么你可能会对这个在线课程感兴趣。
推荐阅读
- 如何像黑客一样分析你的网站以查找漏洞()
- 13个用于性能和配置更改的DNS监视工具
- 适用于小型企业网站的十大基于云的DDoS保护
- 什么是DNS CAA(如何验证和实施?)
- 6种最佳数据丢失防护解决方案可以为你节省数百万美元
- 在黑客入侵之前先检测网站漏洞和安全漏洞
- PubNub GCM通知无法在Android 5.0及更高版本上运行
- 谷歌Android的导入类文件存在问题
- 即使App已关闭,也会收到Android推送通知