第 17 章 对 pod 进行安全漏洞扫描


使用 Red Hat Quay Container Security Operator,您可以访问 OpenShift Container Platform Web 控制台中用于集群中活跃 pod 的容器镜像,访问 OpenShift Container Platform Web 控制台中的漏洞扫描结果。Red Hat Quay Container Security Operator:

  • 监视与所有或指定命名空间中的 pod 关联的容器
  • 查询容器来自漏洞信息的容器 registry,只要镜像的 registry 正在运行镜像扫描(如 Quay.io 或带有 Clair 扫描的 Red Hat Quay registry)
  • 通过 Kubernetes API 中的 ImageManifestVuln 对象公开漏洞

根据这里的说明,Red Hat Quay Container Security Operator 安装在 openshift-operators 命名空间中,因此 OpenShift Container Platform 集群上的所有命名空间都可以使用它。

17.1. 安装 Red Hat Quay Container Security Operator

您可以通过 OpenShift Container Platform Web 控制台 Operator Hub 或 CLI 安装 Red Hat Quay Container Security Operator。

先决条件

  • 已安装 oc CLI。
  • 使用具有 cluster-admin 权限的用户访问 Web 控制台。
  • 您有来自集群中运行的 Red Hat Quay 或 Quay.io registry 的容器。

流程

  1. 您可以使用 OpenShift Container Platform Web 控制台安装 Red Hat Quay Container Security Operator:

    1. 在 Web 控制台中,进入到 Operators OperatorHub 并选择 Security
    2. 选择 Red Hat Quay Container Security Operator Operator,然后选择 Install
    3. Red Hat Quay Container Security Operator 页面中,选择 InstallUpdate channel, Installation mode, 和 Update approval 会自动选择。Installed Namespace 字段默认为 openshift-operators。您可以根据需要调整这些设置。
    4. 选择 Install。在 Installed Operators 页面中,Red Hat Quay Container Security Operator 会出现。
    5. 可选:您可以在 Red Hat Quay Container Security Operator 中添加自定义证书。例如,在当前目录中创建一个名为 quay.crt 的证书。然后,运行以下命令将自定义证书添加到 Red Hat Quay Container Security Operator 中:

      $ oc create secret generic container-security-operator-extra-certs --from-file=quay.crt -n openshift-operators
      Copy to Clipboard Toggle word wrap
    6. 可选:如果您添加了自定义证书,请重启 Red Hat Quay Container Security Operator pod 以使新证书生效。
  2. 另外,您可以使用 CLI 安装 Red Hat Quay Container Security Operator:

    1. 输入以下命令来检索 Container Security Operator 及其频道的最新版本:

      $ oc get packagemanifests container-security-operator \
        -o jsonpath='{range .status.channels[*]}{@.currentCSV} {@.name}{"\n"}{end}' \
        | awk '{print "STARTING_CSV=" $1 " CHANNEL=" $2 }' \
        | sort -Vr \
        | head -1
      Copy to Clipboard Toggle word wrap

      输出示例

      STARTING_CSV=container-security-operator.v3.8.9 CHANNEL=stable-3.8
      Copy to Clipboard Toggle word wrap

    2. 使用上一命令的输出,为 Red Hat Quay Container Security Operator 创建一个 Subscription 自定义资源,并将它保存为 container-security-operator.yaml。例如:

      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: container-security-operator
        namespace: openshift-operators
      spec:
        channel: ${CHANNEL} 
      1
      
        installPlanApproval: Automatic
        name: container-security-operator
        source: redhat-operators
        sourceNamespace: openshift-marketplace
        startingCSV: ${STARTING_CSV} 
      2
      Copy to Clipboard Toggle word wrap
      1
      spec.channel 参数指定您在上一步中获取的值。
      2
      指定您在上一步中为 spec.startingCSV 参数获取的值。
    3. 输入以下命令应用配置:

      $ oc apply -f container-security-operator.yaml
      Copy to Clipboard Toggle word wrap

      输出示例

      subscription.operators.coreos.com/container-security-operator created
      Copy to Clipboard Toggle word wrap

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat