1.2. 为独立 Red Hat Quay 部署配置 SSL/TLS


对于独立的 Red Hat Quay 部署,必须使用命令行界面和手动更新 config.yaml 文件来配置 SSL/TLS 证书。

1.2.1. 使用命令行界面配置自定义 SSL/TLS 证书

必须使用命令行界面(CLI)配置 SSL/TLS,并手动更新 config.yaml 文件。

先决条件

  • 您已创建了证书颁发机构并签署证书。

流程

  1. 将证书文件和主密钥文件复制到您的配置目录中,确保它们分别命名为 ssl.certssl.key

    cp ~/ssl.cert ~/ssl.key /path/to/configuration_directory
  2. 输入以下命令进入配置目录:

    $ cd /path/to/configuration_directory
  3. 编辑 config.yaml 文件并指定您希望 Red Hat Quay 处理 SSL/TLS:

    config.yaml 文件示例

    # ...
    SERVER_HOSTNAME: <quay-server.example.com>
    ...
    PREFERRED_URL_SCHEME: https
    # ...

  4. 可选:输入以下命令将 rootCA.pem 文件的内容添加到 ssl.cert 文件的末尾:

    $ cat rootCA.pem >> ssl.cert
  5. 输入以下命令停止 Quay 容器:

    $ sudo podman stop <quay_container_name>
  6. 输入以下命令重启 registry:

    $ sudo podman run -d --rm -p 80:8080 -p 443:8443 \
      --name=quay \
      -v $QUAY/config:/conf/stack:Z \
      -v $QUAY/storage:/datastorage:Z \
      registry.redhat.io/quay/quay-rhel8:v3.13.1

1.2.2. 配置 Podman 以信任证书颁发机构

Podman 使用两个路径来查找证书颁发机构(CA)文件: /etc/containers/certs.d//etc/docker/certs.d/。使用以下步骤将 Podman 配置为信任 CA。

流程

  1. 将 root CA 文件复制到 /etc/containers/certs.d//etc/docker/certs.d/ 之一。使用服务器主机名决定的确切路径,并将文件命名为 ca.crt

    $ sudo cp rootCA.pem /etc/containers/certs.d/quay-server.example.com/ca.crt
  2. 在登录到 Red Hat Quay registry 时,验证您不再需要使用 the -tls-verify=false 选项:

    $ sudo podman login quay-server.example.com

    输出示例

    Login Succeeded!

1.2.3. 将系统配置为信任证书颁发机构

使用以下步骤将您的系统配置为信任证书颁发机构。

流程

  1. 输入以下命令将 rootCA.pem 文件复制到合并的系统范围信任存储中:

    $ sudo cp rootCA.pem /etc/pki/ca-trust/source/anchors/
  2. 输入以下命令更新系统范围的信任存储配置:

    $ sudo update-ca-trust extract
  3. 可选。您可以使用 trust list 命令来确保 Quay 服务器已配置:

    $ trust list | grep quay
        label: quay-server.example.com

    现在,当您通过 https://quay-server.example.com 浏览到 registry 时,锁定图标会显示连接安全:

    Connection not secure

  4. 要从系统范围的信任中删除 rootCA.pem 文件,请删除该文件并更新配置:

    $ sudo rm /etc/pki/ca-trust/source/anchors/rootCA.pem
    $ sudo update-ca-trust extract
    $ trust list | grep quay

如需更多信息,请参阅 使用共享系统证书的 RHEL 9 文档。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.