本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。
所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。

whorf Docker 镜像下载 - 轩辕镜像

whorf 镜像详细信息和使用指南

whorf 镜像标签列表和版本信息

whorf 镜像拉取命令和加速下载

whorf 镜像使用说明和配置指南

Docker 镜像加速服务 - 轩辕镜像平台

国内开发者首选的 Docker 镜像加速平台

极速拉取 Docker 镜像服务

相关 Docker 镜像推荐

热门 Docker 镜像下载

whorf
bridgecrew/whorf

whorf 镜像详细信息

whorf 镜像标签列表

whorf 镜像使用说明

whorf 镜像拉取命令

Docker 镜像加速服务

轩辕镜像平台优势

镜像下载指南

相关 Docker 镜像推荐

Checkov Admission Controller是Kubernetes的准入控制器,基于Checkov的IaC静态分析能力,在Kubernetes资源创建或更新时执行安全策略验证,通过预设规则检查配置安全性,阻止不安全资源进入集群,增强Kubernetes环境配置安全。
0 次下载activebridgecrew镜像

whorf 镜像详细说明

whorf 使用指南

whorf 配置说明

whorf 官方文档

Checkov Admission Controller 镜像文档

镜像概述和主要用途

Checkov Admission Controller镜像基于开源IaC静态分析工具Checkov构建,是Kubernetes的准入控制器组件。其核心功能是在Kubernetes资源(如Pod、Deployment、StatefulSet等)创建或更新阶段,通过Kubernetes Webhook机制自动执行安全策略检查,基于Checkov的内置规则及自定义策略验证资源配置安全性,拦截不符合安全标准的资源请求,从而实现对Kubernetes集群配置安全的自动化管控。

核心功能和特性

1. 基于Checkov规则的静态分析

  • 集成Checkov的数百条内置安全规则,覆盖容器配置(如非root用户、特权容器禁用)、网络策略(如禁止默认允许的入站规则)、资源限制(如CPU/内存限制设置)等Kubernetes资源安全检查场景。
  • 支持Checkov的自定义规则扩展,可通过YAML/JSON格式定义业务特定的安全策略。

2. Kubernetes准入控制集成

  • 兼容Kubernetes ValidatingWebhook机制,可配置触发检查的资源类型(如Pod、Deployment)和操作(如CREATE、UPDATE)。
  • 支持“拒绝”(阻止不安全资源)或“审计”(仅记录不阻止)两种检查模式,适应不同阶段的安全管控需求。

3. 灵活的策略管理

  • 支持本地策略文件挂载(通过卷挂载自定义规则目录)或远程策略仓库拉取(如Git仓库),实现策略的集中化管理和版本控制。
  • 规则优先级配置,可自定义规则的启用/禁用状态及严重级别。

4. 轻量高效部署

  • 容器化设计,镜像体积小,资源占用低,适合在Kubernetes集群中以Deployment方式部署。
  • 支持TLS加密通信(基于Kubernetes Webhook标准),确保与API Server通信安全。

使用场景和适用范围

适用场景

  • Kubernetes集群安全加固:防止因错误配置(如特权容器、未设置健康检查、敏感目录挂载)导致的安全风险(如容器逃逸、资源耗尽)。
  • DevSecOps流程集成:作为CI/CD流水线的最后一道安全关卡,在资源部署至Kubernetes前进行自动化检查,替代人工审核。
  • 多团队共享集群管理:为共享集群提供统一的安全基线,确保所有团队提交的资源符合组织级安全标准。
  • 合规性检查:满足PCI DSS、HIPAA等合规要求,通过自动化检查确保资源配置符合合规条款(如数据加密、访问控制)。

适用用户

  • Kubernetes集群管理员
  • DevOps工程师(负责集群资源部署流程)
  • 安全运维团队(负责制定和实施集群安全策略)

使用方法和配置说明

部署前准备

  • 环境要求:Kubernetes集群(v1.16+,支持Webhook);集群管理员权限(用于创建Webhook配置、RBAC权限等)。
  • 依赖资源:TLS证书(用于Webhook通信加密,可通过cert-manager自动生成);Checkov策略文件(内置规则或自定义规则,可选)。

部署步骤(Kubernetes集群内)

1. 创建命名空间

bash
kubectl create namespace checkov-admission-controller

2. 部署控制器(Deployment)

创建deployment.yaml

yaml
apiVersion: apps/v1
kind: Deployment
metadata:
  name: checkov-admission-controller
  namespace: checkov-admission-controller
spec:
  replicas: 1
  selector:
    matchLabels:
      app: checkov-admission-controller
  template:
    metadata:
      labels:
        app: checkov-admission-controller
    spec:
      containers:
      - name: checkov-admission-controller
        image: checkov-admission-controller:latest  # 替换为实际镜像地址
        ports:
        - containerPort: 443
        volumeMounts:
        - name: tls-certs
          mountPath: /certs
          readOnly: true
        - name: policy-dir
          mountPath: /policy
          readOnly: true
        args:
        - --tls-cert-file=/certs/tls.crt
        - --tls-private-key-file=/certs/tls.key
        - --policy-dir=/policy
        - --log-level=info
        resources:
          limits:
            cpu: 500m
            memory: 512Mi
          requests:
            cpu: 200m
            memory: 256Mi
      volumes:
      - name: tls-certs
        secret:
          secretName: checkov-admission-tls  # 包含TLS证书的Secret
      - name: policy-dir
        configMap:
          name: checkov-policy  # 包含自定义规则的ConfigMap(可选)

执行部署:

bash
kubectl apply -f deployment.yaml -n checkov-admission-controller

3. 创建Service

创建service.yaml

yaml
apiVersion: v1
kind: Service
metadata:
  name: checkov-admission-controller
  namespace: checkov-admission-controller
spec:
  selector:
    app: checkov-admission-controller
  ports:
  - port: 443
    targetPort: 443
  clusterIP: None  # Headless Service(可选,根据Webhook配置调整)

执行创建:

bash
kubectl apply -f service.yaml -n checkov-admission-controller

4. 配置ValidatingWebhook

创建webhook.yaml(定义触发检查的资源和规则):

yaml
apiVersion: admissionregistration.k8s.io/v1
kind: ValidatingWebhookConfiguration
metadata:
  name: checkov-admission-controller
webhooks:
- name: checkov-admission-controller.example.com
  clientConfig:
    service:
      name: checkov-admission-controller
      namespace: checkov-admission-controller
      path: /validate
    caBundle: <CA_BUNDLE>  # 集群CA证书Base64编码(用于验证Webhook服务证书)
  rules:
  - apiGroups: ["", "apps", "batch"]
    apiVersions: ["v1"]
    operations: ["CREATE", "UPDATE"]
    resources: ["pods", "deployments", "statefulsets", "daemonsets", "jobs"]
    scope: "Namespaced"
  admissionReviewVersions: ["v1"]
  sideEffects: None
  timeoutSeconds: 5

替换<CA_BUNDLE>为集群CA证书(可通过kubectl config view --raw --minify --flatten -o jsonpath='{.clusters[0].cluster.certificate-authority-data}'获取),执行创建:

bash
kubectl apply -f webhook.yaml

配置参数说明

启动参数

参数名说明示例值
--tls-cert-fileTLS证书文件路径(容器内路径)/certs/tls.crt
--tls-private-key-fileTLS私钥文件路径(容器内路径)/certs/tls.key
--policy-dir自定义规则文件目录(容器内路径)/policy
--log-level日志级别(debug/info/warn/error)info
--port服务监听端口443(默认)
--check-mode检查模式(deny/audit)deny(默认,阻止不安全资源)

环境变量

变量名说明示例值
CHECKOV_POLICY_REPO远程策略仓库地址(如Git)[***]
CHECKOV_POLICY_BRANCH远程策略仓库分支main
KUBECONFIG本地测试用Kubeconfig路径(非集群内部署时)/root/.kube/config

自定义策略配置

通过--policy-dir挂载包含Checkov自定义规则的目录,规则文件需符合Checkov自定义规则格式(如custom_rule.yaml),示例:

yaml
- name: "禁止特权容器"
  id: "CKV_K8S_999"
  severity: "CRITICAL"
  message: "特权容器可能导致容器逃逸,禁止使用"
  category: "容器安全"
  match:
    apiGroups: [""]
    apiVersions: ["v1"]
    kinds: ["Pod"]
  cond:
    - attr: "spec.containers[*].securityContext.privileged"
      operator: "equals"
      value: true

注意事项

  • 确保Kubernetes集群启用了Webhook(--enable-admission-plugins=ValidatingAdmissionWebhook)。
  • TLS证书需与Webhook配置中的caBundle匹配,避免API Server验证Webhook服务证书失败。
  • 首次部署后建议先使用--check-mode=audit模式测试规则有效性,避免误拦截正常资源。

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

oldzhang的头像

oldzhang

运维工程师

Linux服务器

5

"Docker加速体验非常流畅,大镜像也能快速完成下载。"