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


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

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

  • 您必须使用对 SSL 证书的隐私增强邮件(PEM)编码。
  • 您不能对 Satellite 服务器和 Capsule 服务器使用相同的 SSL 证书。
  • 同一 CA 必须为 Satellite 服务器和胶囊服务器签名证书。
  • SSL 证书也不能是 CA 证书。
  • SSL 证书必须包含与通用名称(CN)匹配的主题备用名称(SAN)条目。
  • 必须使用密钥使用扩展进行密钥加密(Key Encipherment)的 SSL 证书。
  • SSL 证书不能将短名称作为 CN。
  • 您不能为私钥设置密码短语。

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

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

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

流程

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

    # mkdir /root/satellite_cert
  2. 创建用于签署证书签名请求(CSR)的私钥。

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

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

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

    [ req ]
    req_extensions = v3_req
    distinguished_name = req_distinguished_name
    prompt = no
    
    [ req_distinguished_name ]
    commonName = satellite.example.com
    
    [ v3_req ]
    basicConstraints = CA:FALSE
    keyUsage = digitalSignature, keyEncipherment
    extendedKeyUsage = serverAuth, clientAuth
    subjectAltName = @alt_names
    
    [ alt_names ]
    DNS.1 = satellite.example.com

    有关 [ 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
    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
    1
    私钥的路径
    2
    配置文件的路径
    3
    要生成的 CSR 的路径
  6. 将证书签名请求发送到证书颁发机构(CA)。同一 CA 必须为 Satellite 服务器和胶囊服务器签名证书。

    提交请求时,指定证书的期限。发送证书请求的方法会有所不同,因此请查阅 CA 了解首选方法。根据请求,您可以预期在单独的文件中接收 CA 捆绑包和签名证书。

3.7.2. 将自定义 SSL 证书部署到 Satellite 服务器

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

重要

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

流程

  • 更新 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
    1
    由证书颁发机构签名的 Satellite 服务器证书文件的路径。
    2
    用于为 Satellite 服务器证书签名的私钥的路径。
    3
    证书颁发机构捆绑包的路径。

验证

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

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

在将 Satellite 配置为使用自定义 SSL 证书后,您必须将证书部署到注册到 Satellite 的主机。

流程

  • 更新每个主机上的 SSL 证书:

    # dnf install http://satellite.example.com/pub/katello-ca-consumer-latest.noarch.rpm
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2026 Red Hat
返回顶部