OpenSearch 自定义证书 - 在集群设置中安装 Control Room 期间,您可以上传由受信任证书颁发机构 (CA) 签发的自定义证书,以增强安全性,而不是使用产品提供的默认证书。

Automation 360

在集群设置中安装 Control Room 期间,您可以上传由受信任证书颁发机构 (CA) 签发的自定义证书,以增强安全性,而不是使用产品提供的默认证书。

在上传自定义证书之前,请确保查看以下指南和建议:
  • 确保证书具有适当的有效期(持续时间),以免安装失败。
  • 请查看 Windows 和 Linux 中自定义证书文件的以下命名约定:
    文件 预期的文件命名 预期的文件格式
    根(CA 证书) root-ca-cert.pem .pem
    证书/密钥(节点-管理) elasticsearch-cert.pem .pem
    elasticsearch-key.pem
    证书/密钥(节点-互通信) elasticsearch-node-cert.pem .pem
    elasticsearch-node-key.pem
    • elasticsearch-cert.pem 用于管理目的,我们建议您使用 firstnode 主机名。

      elasticsearch-node-cert.pem 用于保障节点间通信的安全性。 它必须包含第二个或第三个节点的主机名,以确保集群成员之间的通信是加密且可信的。

      注:
      • 如果您具有中间证书,可以将其重命名为 root-ca-cert.pem 以用作根证书。 然后,在对中间证书进行证书链验证后,系统会将中间证书认定为根证书。
      • .zip 文件必须包含证书、密钥和根 CA 证书文件。
    • 请确保以下证书(适用于 Windows 和 Linux)由根/中间 CA 证书签署:
      • elasticsearch-cert.pem
      • elasticsearch-node-cert.pem
        注:
        • 必须生成两个独特的 CA 签名证书:
          • 一个用于节点管理员。
          • 一个用于节点间通信
        • 两个证书必须具有唯一的通用名称 (CN) 值。 但是,请确保不要为多个证书使用相同的CN。
          CN 用于唯一标识证书所有者。 在不同证书中使用相同的CN可能会导致在验证和故障排除过程中难以区分证书,并可能导致证书验证失败或客户端应用程序选择错误的证书。 例如,考虑以下证书:
          • OpenSearch 节点证书:opensearch-node1.example.com
          • OpenSearch 管理员证书:opensearch-admin.example.com
          在此示例中,每个证书具有不同的 CN,并且可以被唯一识别。
        • 传输层 TLS 证书需要在证书的扩展密钥用法部分同时配置为客户端(TLS 网页客户端身份验证)和服务器(TLS 网页服务器身份验证),因为使用 TLS 证书的节点需在内部承担发送和接收通信请求的职责。 证书应具有扩展密钥用法,包括服务器和客户端身份验证。 例如,在生成证书时,必须通过使用配置文件包含 extendedKeyUsage = serverAuth, clientAuth。
  • 确保 .zip 文件中的证书遵循以下指南,以便 Control Room 能够轻松访问和处理。
    • 确保证书未加密(无密码保护)
    • 仅包含五个必需的证书文件
    • 文件夹结构不应在 .zip 文件中包含任何子文件夹。

      例如: OpenSearch CA for Linux

  • 证书主题中必须包含通用名称(CN)属性。

    我们建议将OpenSearch服务器的完全限定域名(FQDN)或主机名用作CN。 这有助于确保 Automation 360 在连接 OpenSearch 时所使用的主机名与在 SSL/TLS 验证期间证书中呈现的身份相匹配。

    例如,如果Automation 360连接到OpenSearch,使用opensearch.example.com,请确保您使用CN=opensearch.example.com作为证书的CN。 使用服务器主机名作为 CN 可以简化证书管理,并有助于防止在安全连接期间出现主机名不匹配错误。

调试常见的自定义证书上传错误

由于以下原因,自定义证书检索可能会失败。 有关详细信息,请检查 temp 文件夹中的 msi 日志。 示例: C:\Users\<Username>\AppData\Local\Temp。
错误代码 可能原因 缓解
java.security.cert.CertificateExpiredException 证书无效错误。 确保证书未过期,并检查证书详细信息中是否有任何不匹配。 在纠正所有问题后重新上传证书。
java.Lang.RuntimeException: 错误,所需证书不存在 .zip 文件夹结构不正确或证书缺失证书错误。 确保证书正确放置在 .zip 文件夹中。
错误:java.lang.RuntimeException: Elasticsearch 根证书不是 CA 根 CA 与节点证书不匹配。 验证该证书是有效的 CA 证书。 纠正所有问题并重新上传证书。