注意:此镜像已不再在Docker Hub上维护。 请访问 [***] 获取最新镜像。
!Docker Bench for Security运行截图
Docker Bench for Security是一个脚本工具,用于检查数十项关于在生产环境中部署Docker容器的常见最佳实践。所有测试均为自动化执行,其灵感来源于CIS Docker Community Edition Benchmark v1.1.0标准。该工具作为Understanding Docker Security and Best Practices博客文章的后续内容发布。
本工具以开源形式提供,使Docker社区能够轻松地根据此基准对其主机和Docker容器进行自我评估。
最简单的使用方式是运行预构建的容器镜像。注意,由于需要对主机进行安全检查,容器需要以较高权限运行,包括共享主机的文件系统、PID和网络命名空间。
bashdocker run -it --net host --pid host --userns host --cap-add audit_control \ -e DOCKER_CONTENT_TRUST=$DOCKER_CONTENT_TRUST \ -v /var/lib:/var/lib \ -v /var/run/docker.sock:/var/run/docker.sock \ -v /usr/lib/systemd:/usr/lib/systemd \ -v /etc:/etc --label docker_bench_security \ docker/docker-bench-security
注意:对于不含
auditctl的发行版,审计测试将通过检查/etc/audit/audit.rules文件来验证规则是否存在。解决此问题的特定发行版Dockerfile可在distros目录中找到。
Docker Bench for Security提供以下命令行选项:
-b 可选 不打印彩色输出 -h 可选 打印帮助信息 -l FILE 可选 将输出记录到指定文件 -c CHECK 可选 以逗号分隔的特定检查项列表 -e CHECK 可选 以逗号分隔的要排除的特定检查项列表 -i INCLUDE 可选 以逗号分隔的容器名称中要检查的模式列表 -x EXCLUDE 可选 以逗号分隔的要从检查中排除的容器名称模式列表 -t TARGET 可选 以逗号分隔的要检查的镜像名称列表
默认情况下,Docker Bench for Security脚本将运行所有可用的CIS测试,并在当前目录中生成名为docker-bench-security.sh.log.json和docker-bench-security.sh.log的日志文件。
基于CIS的检查命名为check_<section>_<number>,例如check_2_6,社区贡献的检查命名为check_c_<number>。完整的检查列表可在functions_lib.sh中找到。
仅运行检查2.2 确保日志级别设置为'info':
bashsh docker-bench-security.sh -l /tmp/docker-bench-security.sh.log -c check_2_2
运行所有可用检查,但排除2.2 确保日志级别设置为'info':
bashsh docker-bench-security.sh -l /tmp/docker-bench-security.sh.log -e check_2_2
如果需要自行构建和运行容器,可以按照以下步骤操作:
bashgit clone [***] cd docker-bench-security docker build --no-cache -t docker-bench-security . docker run -it --net host --pid host --userns host --cap-add audit_control \ -e DOCKER_CONTENT_TRUST=$DOCKER_CONTENT_TRUST \ -v /var/lib:/var/lib \ -v /var/run/docker.sock:/var/run/docker.sock \ -v /usr/lib/systemd:/usr/lib/systemd \ -v /etc:/etc --label docker_bench_security \ docker-bench-security
bashgit clone [***] cd docker-bench-security docker-compose run --rm docker-bench-security
也可以直接在基础主机上运行脚本:
bashgit clone [***] cd docker-bench-security sudo sh docker-bench-security.sh
该脚本符合POSIX 2004标准,因此应可在任何Unix平台上移植使用。
DOCKER_CONTENT_TRUST: 传递Docker内容信任设置,用于检查镜像签名验证配置为执行全面的安全检查,容器需要挂载以下主机目录:
/var/lib: Docker数据目录/var/run/docker.sock: Docker守护进程套接字/usr/lib/systemd: systemd配置目录(根据操作系统调整)/etc: 系统配置目录对于未包含Docker 1.13.0或更高版本的发行版,或有特定系统配置的环境,可以使用发行版特定Dockerfiles来解决兼容性问题。
来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429