4.13. 使用自定义 SSL 证书配置 Satellite 服务器


默认情况下,Red Hat Satellite 使用自签名 SSL 证书来启用 Satellite 服务器、外部胶囊服务器和所有主机之间的加密通信。如果无法使用 Satellite 自签名证书,您可以将 Satellite 服务器配置为使用由外部证书颁发机构(CA)签名的 SSL 证书。

当使用自定义 SSL 证书配置 Red Hat Satellite 时,您必须满足以下要求:

  • 您必须对 SSL 证书使用隐私增强型邮件(PEM)编码。
  • 您不能将相同的 SSL 证书用于 Satellite 服务器和 Capsule 服务器。
  • 同一 CA 必须为 Satellite 服务器和 Capsule 服务器签名证书。
  • SSL 证书也不能是 CA 证书。
  • SSL 证书必须包含与通用名称(CN)匹配的主题 alt name (SAN)条目。
  • 在使用密钥用法扩展时,必须允许 SSL 证书。
  • SSL 证书不能有短名称作为 CN。
  • 您不能为私钥设置密码短语。

要使用自定义证书配置 Satellite 服务器,请完成以下步骤:

4.13.1. 为 Satellite 服务器创建自定义 SSL 证书

使用这个流程为 Satellite 服务器创建自定义 SSL 证书。如果您已有 Satellite 服务器的自定义 SSL 证书,请跳过此步骤。

流程

  1. 要存储所有源证书文件,请创建一个只能被 root 用户访问的目录:

    # mkdir /root/satellite_cert
    Copy to Clipboard Toggle word wrap
  2. 创建为证书签名请求(CSR)签名的私钥。

    请注意,私钥必须未加密。如果您使用密码保护的私钥,请删除私钥密码。

    如果您已有此 Satellite 服务器的私钥,请跳过这一步。

    # openssl genrsa -out /root/satellite_cert/satellite_cert_key.pem 4096
    Copy to Clipboard Toggle word wrap
  3. 为 CSR 创建 /root/satellite_cert/openssl.cnf 配置文件并包含以下内容:

    [ req ]
    req_extensions = v3_req
    distinguished_name = req_distinguished_name
    prompt = no
    
    [ req_distinguished_name ]
    CN = satellite.example.com
    
    [ v3_req ]
    basicConstraints = CA:FALSE
    keyUsage = digitalSignature, keyEncipherment
    extendedKeyUsage = serverAuth, clientAuth
    subjectAltName = @alt_names
    
    [ alt_names ]
    DNS.1 = satellite.example.com
    Copy to Clipboard Toggle word wrap

    有关 [ v3_req ] 参数及其目的的更多信息,请参阅 RFC 5280: Internet X.509 公钥基础架构证书和证书撤销列表(CRL)配置文件

  4. 可选: 如果要向 CSR 添加可辨识名称(DN)详情,请在 [ req_distinguished_name ] 部分添加以下信息:

    [req_distinguished_name]
    CN = satellite.example.com
    countryName =My_Country_Name 
    1
    
    stateOrProvinceName = My_State_Or_Province_Name 
    2
    
    localityName = My_Locality_Name 
    3
    
    organizationName = My_Organization_Or_Company_Name
    organizationalUnitName = My_Organizational_Unit_Name 
    4
    Copy to Clipboard Toggle word wrap
    1
    两个字母代码
    2
    全名
    3
    全名(例如:New York)
    4
    负责证书的部门(示例:IT 部门)
  5. 生成 CSR:

    # openssl req -new \
    -key /root/satellite_cert/satellite_cert_key.pem \ 
    1
    
    -config /root/satellite_cert/openssl.cnf \ 
    2
    
    -out /root/satellite_cert/satellite_cert_csr.pem 
    3
    Copy to Clipboard Toggle word wrap
    1
    私钥的路径
    2
    配置文件的路径
    3
    要生成的 CSR 的路径
  6. 将证书签名请求发送到证书颁发机构(CA)。同一 CA 必须为 Satellite 服务器和 Capsule 服务器签名证书。

    提交请求时,指定证书的寿命。发送证书请求的方法会有所不同,因此请查阅 CA 查看首选方法。为了响应请求,您可以在单独的文件中接收 CA 捆绑包和签名证书。

使用这个流程将 Satellite 服务器配置为使用证书颁发机构签名的自定义 SSL 证书。

重要

不要将 SSL 证书或 .tar 捆绑包存储在 /tmp/var/tmp 目录中。操作系统定期从这些目录中删除文件。因此,satellite-installer 在启用功能或升级 Satellite 服务器时无法执行。

流程

  • 更新 Satellite 服务器上的证书:

    # satellite-installer \
    --certs-server-cert "/root/satellite_cert/satellite_cert.pem" \ 
    1
    
    --certs-server-key "/root/satellite_cert/satellite_cert_key.pem" \ 
    2
    
    --certs-server-ca-cert "/root/satellite_cert/ca_cert_bundle.pem" \ 
    3
    
    --certs-update-server --certs-update-server-ca
    Copy to Clipboard Toggle word wrap
    1
    由证书颁发机构签名的 Satellite 服务器证书文件的路径。
    2
    用于为 Satellite 服务器证书签名的私钥的路径。
    3
    证书颁发机构捆绑包的路径。

验证

  1. 在可访问 Satellite 服务器的计算机上,导航到以下 URL
  2. 在您的浏览器中,查看证书详情以验证部署的证书。

4.13.3. 将自定义 SSL 证书部署到主机

在将 Satellite 服务器配置为使用自定义 SSL 证书后,还必须在注册到此 Satellite 服务器的每个主机上安装 katello-ca-consumer 软件包。

流程

  • 在每个主机上安装 katello-ca-consumer 软件包:

    # dnf install http://satellite.example.com/pub/katello-ca-consumer-latest.noarch.rpm
    Copy to Clipboard Toggle word wrap
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat