如何使用Docker Bench for Security审查部署的容器?

译文
开发 前端
Docker Bench for Security是一种简单的方法,用于检查生产环境中部署的Docker方面的常见实践。本文介绍了如何使用该工具。

[[393437]]

【51CTO.com快译】容器部署方面的最大问题之一是安全。这之所以是个问题,是由于要检查的可变因素太多。您的容器清单文件可能很安全,可是主机呢?也许您的主机很安全,但YAML文件充斥着安全漏洞。

该如何是好?您可以花数小时乃至数天梳理所有内容以确保那些部署安全,也可以使用现成的工具。Docker Bench for Security这个预构建的容器就是这样一款工具,它在审查容器主机和目前运行的部署方面做得很好。不像许多此类工具,Docker Bench for Security非常易于使用。

Docker Bench for Security审查以下内容:

  • 常规配置
  • Linux主机特定配置
  • Docker守护程序配置
  • Docker守护程序配置文件
  • 容器映像和构建文件
  • 容器运行时环境
  • Docker安全运营
  • Docker Swarm配置
  • Docker企业配置
  • Docker可信注册中心配置

下面介绍如何完成此操作。

您需要什么?

您只需要在服务器上运行的Docker实例以及与可运行Docker命令的docker组关联的用户。

我将在Ubuntu Server 20.04上进行演示,但该工具可以在支持Docker的任何平台上运行。

如何获得Docker Bench?

我们首先要做的是从GitHub克隆该工具。如果您尚未安装git,使用以下命令来安装:

  1. sudo apt-get install git -y 

使用以下命令克隆Docker Bench:

  1. git clone https://github.com/docker/docker-bench-security.git 

使用以下命令切换到新创建的目录:

  1. cd docker-bench-security 

如何配置Docker守护程序?

在运行审查之前,我们需要创建一个Docker守护程序配置文件。使用以下命令创建该文件:

  1. sudo nano /etc/docker/daemon.json 

在该文件中,粘贴以下内容:

  1.  "icc"false
  2. "userns-remap""default"
  3.  "live-restore"true
  4. "userland-proxy"false
  5. "no-new-privileges"true 

保存并关闭文件。

如何安装和配置auditd?

现在,我们需要使用以下命令安装auditd:

  1. sudo apt-get install auditd -y 

安装完成后,使用以下命令打开auditd规则文件:

  1. sudo nano /etc/audit/audit.rules 

在文件底部,粘贴以下内容:

  1. -w / usr / bin / docker -p wa 
  2. -w / var / lib / docker -p wa 
  3. -w / etc / docker -p wa 
  4. -w /lib/systemd/system/docker.service -p wa 
  5. -w /lib/systemd/system/docker.socket -p wa 
  6. -w / etc / default / docker -p wa 
  7. -w /etc/docker/daemon.json -p wa 
  8. -w / usr / bin / docker-containerd -p wa 
  9. -w / usr / bin / docker-runc -p wa 

保存并关闭文件。

使用以下命令重新启动auditd:

  1. sudo systemctl restart auditd 

最后,使用以下命令重新启动Docker守护程序:

  1. sudo systemctl restart docker 

如何运行审查?

在docker-bench-security目录中时,使用以下命令启动审查:

  1. ./docker-bench-security.sh 

上述命令将运行审查,并开始列出以下任何一项的详细信息:

  • 通过(PASS)
  • 信息(INFO)
  • 说明(NOTE)
  • 警告(WARN)

审查完成后,您得梳理输出结果,至少要处理被列为“警告”的所有内容(见图A)。您甚至可能需要处理一些“信息”或“说明”消息。

图A. Docker Bench的输出结果清楚地表明了需要修复的内容

您得到的输出结果将取决于已部署的主机和容器的配置。然而,您的目标应该是至少修复每条警告。解决这些问题后,确保重新运行审查,直至不再看到任何“警告”标签列出来。

这就是使用Docker Bench for Security审查主机和容器的全过程。

原文标题:How to use Docker Bench for Security to audit your container deployments,作者:Jack Wallen

【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】

责任编辑:华轩 来源: 51CTO
相关推荐

2019-07-01 09:33:58

DockerNginx操作系统

2020-01-02 10:44:22

运维架构技术

2022-07-29 15:19:27

Dockersudo权限

2016-12-01 13:37:42

OpenStack MDocker Swar容器

2023-06-16 16:06:02

lazydockerDocker容器

2017-05-23 15:53:52

docker服务容器

2023-09-26 07:34:24

Docker部署依赖包

2020-08-28 13:27:25

Docker Node应用

2015-08-03 16:15:53

Docker部署集群

2016-10-08 15:42:02

ElasticsearcAdvisorDocke

2019-12-05 10:40:41

DockerMySQL数据库

2022-10-08 00:00:02

Docker项目技术

2021-05-11 08:00:00

Docker容器开发

2023-08-29 15:17:40

Docker容器架构

2023-08-08 10:23:34

2021-10-13 08:53:09

Docker Django 容器

2024-03-04 00:05:00

人工智能LLM 评估

2016-10-17 13:33:26

原子主机AnsibleCockpit

2018-03-09 10:07:34

mysql

2022-05-06 07:20:38

Docker容器镜像
点赞
收藏

51CTO技术栈公众号