管理密钥和证书

Qlik NPrinting 加密需要 PEM 格式的 X.509 证书文件。您可生成自签名的证书,或者通过证书颁发机构 (CA) 进行签名。单个证书同时涵盖 NewsStandQlik NPrinting web console,因为它们具有相同的域名。

生成自签名证书

自签名证书是一种身份证书,由拥有证书的实体签名。该实体使用其自己的私钥来认证其身份。使用自签名证书可让您自己签署自己的证书。

您可在以下情况下使用自签名证书:

  • 您希望使用 HTTPS(HTTP上的TLS)来保护自己的 Web 服务器。
  • 您不需要由证书颁发机构 (CA) 签署您的证书。

例如,如果您的 Web 服务器仅在您的局域网内使用,则您可使用自签名证书。

进行以下操作:

  1. 打开 Windows 命令提示符。
  2. 移动至 OpenSSL 二进制文件夹。默认命令为 cd C:\OpenSSL-Win64\bin。将在该文件夹中创建文件,然后您将把它们移动到最终文件夹中。
  3. 要创建自签名证书,请运行以下命令:
    openssl req -newkey rsa:4096 -nodes -keyout NPrinting.key -x509 -days 365 -out NPrinting.crt

    其中:

    • req 是 PKCS#10 证书请求并且生成实用程序。
    • -x509选项指示 req 创建自签名证书。
    • -days 365 选项指定证书的有效时间为 365 天。

    要跳过交互性问题,可使用 -subj,后接您的在引号中的域信息。

    例如:

    -subj "/C=US/ST=New York/L=Brooklyn/O=Example Brooklyn Company/CN=mywebsitedomain.com".

警告: 不应向任何人披露私钥,也不应将其发送给证书颁发机构。将其备份并存放在安全位置。

您可仅散布公钥文件。

从证书颁发机构购买证书

如果在您的 Web 服务器可经由 Web 浏览器公开访问的情况下,您需要避免安全警告,则您的证书必须由证书颁发机构 (CA) 签名。有许多证书颁发机构。您所选择 CA 将有其自身要遵照的特定说明。有关生成和实施 CA 签名的证书的一些步骤对于所有证书颁发机构是通用的。以下各部分概述了这些通用步骤。

生成证书签名请求

要获得 CA 签名的证书,则必须生成证书签署请求 (CSR)。CSR 包含您的公钥以及其他额外信息。该信息将包括在已签名的证书中。CSR 永远不包含私钥。

进行以下操作:

  1. 为了生成 CSR,私钥运行以下命令:

    openssl req -new -newkey rsa:4096 -nodes -keyout NPrinting.key -out NPrinting.csr

  2. 将提示您回答交互性问题。
    要跳过交互性问题,可使用 -subj,后接您的在引号中的域信息。

    例如:

    -subj "/C=US/ST=New York/L=Brooklyn/O=Example Brooklyn Company/CN=mywebsitedomain.com".

对于创建 CSR 所需的任何自定义程序,请参阅证书颁发机构的说明。

通用名称字段

通用名称 (CN) 字段中的名称必须为将使用证书的完全限定的域名 (FQDN)。

例如:

  • 如果您的 NewsStand 的 URL 为 https://yourcompany.com:4994,则 FQND 为 yourcompany.com(端口不属于 FQND 的一部分)。
  • URL https://www.yourcompany.com:4994 被视为不同于 https://yourcompany.com:4994。如果您希望 URL 地址成为有效的主机名,则必须生成两个证书,一个包含 FQDN www.yourcompany.com,一个包含 FQDN yourcompany.com。

将已签署的证书和服务器证书合并

在使用证书颁发机构 (CA) 签署的证书时,您必须创建包含服务器证书、任何中间内容以及 CA 签署的证书的 PEM 文件证书捆绑。一旦您创建了证书捆绑,则将它结合您的私钥使用以设置代理。必须提供包含证书和匹配服务器私钥的文件。

进行以下操作:

  1. 您可通过为自己的域、服务器证书和任何中间内容串联 CA 签署的证书来创建证书捆绑。必须串联包括根证书的所有证书。
  2. 对于串联,确保应用以下顺序:

    • 域证书
    • 中间证书(一个或多个)
    • 根证书

    例如:

    more < NPrinting.crt >> NPrinting.public.crt
    more < RSADomainValidationSecureServerCA.crt >> NPrinting.public.crt
    more < RSAAddTrustCA.crt >> NPrinting.public.crt
    more < AddTrustExternalCARoot.crt >> NPrinting.public.crt

    其中:

    • NPrinting.crt 为域证书。
    • NPrinting.public.crt 为将用于设置代理的证书捆绑。
    • RSADomainValidationSecureServerCA.crtRSAAddTrustCA.crt 为中间证书。
    • AddTrustExternalCARoot.crt 为根证书。
  3. 使用 NPrinting.public.crt 作为证书文件和私钥来设置代理。