Docker 安全技术全解析
1. 企业级 Docker 安全工具原理
许多企业级 Docker 安全工具基于特定原理工作,它们会让应用运行一段时间,跟踪系统调用、文件访问情况以及操作系统功能的使用情况。依据这些信息和可配置的学习周期,工具能确定应用的预期行为,并报告异常行为。例如,攻击者进入运行中的容器并启动 bash 二进制文件或打开意外端口,系统就会发出警报。DockerSlim 可提前控制这一过程,降低攻击者得手后的破坏能力。此外,限制应用的功能也能缩小攻击面。
2. 移除构建过程中添加的机密信息
在企业环境构建镜像时,常需使用密钥和凭证来获取数据。使用 Dockerfile 构建应用时,即使使用后删除机密信息,它们仍会存在于镜像历史记录中。这会带来安全问题,若有人获取镜像,就可能获取早期层中的机密信息。
2.1 问题与解决方案
- 问题:从镜像历史记录中移除文件。
- 解决方案:使用 docker - squash 移除镜像层。
2.2 理论上的简单解决方法及缺点
- 方法一:在使用机密信息时删除它。示例代码如下:
FROM ubuntu RUN echo mysecret > secretfile && command_using_secret && rm secretfile此方法