跳转至

使用自己的安全证书

Info

该程序与适当的(内部或外部)证书颁发机构相结合,可解决 NET::ERR_CERT_AUTHORITY_INVALID 错误。

默认情况下,octoplant 会在运行时自动创建自签名证书和私钥。

要使用自己的证书而不是 octoplant 创建的证书(建议用于 OIDC 或 WebClient),请按照此可选步骤操作。本指南面向 IT 部门或域管理员。

Warning

更换这些文件后,必须更新所有的 octoplant 客户端计算机。否则,将无法连接客户端。

如果 D:\certs\rootCA.crt 已作为受信任的根授权机构安装在每个客户端上,且客户端使用的服务器名称与 通用名称 匹配,则无需采取进一步步骤。

如果没有,请删除 knownhosts.txt 文件:

  • 在每个客户端的客户端存档中:\vdClientArchive\VD$A\Configuration\Local
  • 在服务器的服务器存档中:\vdServerArchive\VD$A\Configuration\Local

基本步骤

  1. 创建根 CA 私钥和公开证书。在服务器和使用该服务器的所有客户端上,将该证书作为受信任根证书导入。此根 CA 可用于多个服务器。
  2. 为每台服务器创建私钥和证书签名请求(CSR)。
  3. 使用根 CA 的私钥签署公共服务器证书。
  4. 在服务器存档中存储服务器的私钥和签名证书。

要求

  • 您需要一个已安装 OpenSSL 的环境(推荐:OpenSSL 3.2.1 或更高版本)。要检查您的版本,请打开命令 shell 并运行:

    openssl -v
    

    您应该会看到类似的输出结果:

    OpenSSL 3.5.2 5 Aug 2025 (Library: OpenSSL 3.5.2 5 Aug 2025)
    
  • 为证书创建一个本地文件夹,例如 D:\certs

创建自己的根 CA

这一过程分为三个步骤:

  • 创建根私钥
  • 创建并自行签署根证书
  • 分发证书

Warning

根 CA 密钥可以签署任何服务器证书。任何可以访问此私钥的人都可以创建受信任的证书。请妥善保管并确保其私密性

  1. 创建根 CA 私钥(rootCA.key):

    openssl genrsa -aes128 -out D:\certs\rootCA.key 4096
    

    系统会提示您输入口令,每次签署证书时都需要输入口令。要创建没有口令的私钥,请删除 -aes128 选项。

  2. 创建根证书 (rootCA.crt):

    openssl req -x509 -new -nodes -key D:\certs\rootCA.key -sha256 -days 1024 -out D:\certs\rootCA.crt
    
  3. rootCA.crt 分发给将连接到服务器的每个客户端。

创建服务器证书签名请求

  1. 创建服务器证书私钥(hostname.key):

    openssl genrsa -out D:\certs\hostname.key 2048
    

    该文件是服务器的机密。请勿共享或分发该文件,只应服务器才能访问该文件

  2. 创建签名请求(hostname.csr):

    openssl req -new -key D:\certs\hostname.key -out D:\certs\hostname.csr
    

    请按照交互式提示操作。通用名称 必须与客户端用于连接的主机名完全匹配。请勿设置密码。

  3. (可选)验证 CSR:

    openssl req -in D:\certs\hostname.csr -noout -text
    

签署服务器证书

使用 CSR、根 CA 私钥和根证书创建签名服务器证书(hostname.crt):

openssl x509 -req -in D:\certs\hostname.csr -CA D:\certs\rootCA.crt -CAkey D:\certs\rootCA.key -CAcreateserial -out D:\certs\hostname.crt -days 3650 -sha256

系统将提示您输入 CA 根私钥口令。生成的 hostname.crthostname.key 是 octoplant 服务器所需要的。

验证证书

  1. Certificates 下,右键单击 {server_name}

    图:OIDC-Cert-Step-11

  2. 选择 打开

  3. 查看证书信息。

    图:OIDC-Cert-Step-12

  4. Details 选项卡上,选择 Subject Alternative Name 以验证 DNS 和 IP 条目。

    图:OIDC-Cert-Step-13

  5. 选择 OK 并退出控制台。

存储已签名的服务器证书

替换 VD$A\Configuration\Local 中的以下文件,这些文件位于服务器存档中:

  • ApiCertificateCSCCertificate:包含一份 D:\certs\rootCA.crt 的副本
  • ApiPrivateKeyCSCPrivateKey:包含一份 D:\certs\hostname.key 的副本

不要使用文件扩展名

证书创建过程已完成。现在您可以:


相关主题