您可以添加 SSL 证书以启用增强的身份验证和加密,从而增强 OnCommand Insight 环境的安全性。
开始之前
必须确保您的系统满足所需的最小位数(1024 位)。
关于本任务
注:尝试执行此过程之前,您应备份现有的 server.keystore 文件,并将该备份命名为 server.keystore.old。如果 server.keystore 文件损坏,可能会导致 Insight 服务器在重新启动 Insight 服务器之后无法工作。如果创建备份,则您可以在出现问题时还原到旧文件。
步骤
- 为原始密钥库文件创建一份副本: cp c:\Program Files\SANscreen\wildfly\standalone\configuration\server.keystore "c:\Program Files\SANscreen\wildfly\standalone\configuration\server.keystore.old
- 列出密钥库的内容: C:\Program Files\SANscreen\java64\bin\keytool.exe -list -v -keystore "c:\Program Files\SANscreen\wildfly\standalone\configuration\server.keystore"
- 当系统提示您提供密码时,输入 changeit。
系统将显示密钥库的内容。密钥库应包含至少一个证书,即 "ssl certificate"。
- 删除 "ssl certificate": keytool -delete -alias "ssl certificate" -keystore c:\Program Files\SANscreen\wildfly\standalone\configuration\server.keystore
- 生成新密钥: C:\Program Files\SANscreen\java64\bin\keytool.exe -genkey -alias "ssl certificate" -keyalg RSA -keysize 2048 -validity 365 -keystore "c:\Program Files\SANscreen\wildfly\standalone\configuration\server.keystore"
- 当系统提示您提供名字和姓氏时,输入要使用的完全限定域名 (Fully Qualified Domain Name, FQDN)。
- 提供以下有关您的组织和组织结构的信息:
- 国家或地区:所在国家或地区的 ISO 缩写(由两个字母组成,例如,US)
- 州或省:您的组织的总部所在州或省的名称(例如,马萨诸塞州)。
- 区域:您的组织的总部所在城市的名称(例如,沃尔瑟姆)
- 组织名称:拥有该域名的组织的名称(例如,NetApp)
- 组织单位名称:将使用该证书的部门或组的名称(例如,支持部门)
- 域名/公用名:用于对您的服务器执行 DNS 查找的 FQDN(例如,www.example.com)
此时,系统将返回类似于以下内容的信息作为响应: Is CN=www.example.com, OU=support, O=NetApp, L=Waltham, ST=MA, C=US correct?
- 如果公用名 (Common Name, CN) 等于 FQDN,则输入 Yes。
- 当系统提示您提供密钥密码时,输入密码,或者按 Enter 键以使用现有的密钥库密码。
- 生成证书请求文件: C:\Program Files\SANscreen\java64\bin\keytool.exe -certreq -alias "ssl certificate" -keystore "c:\Program Files\SANscreen\wildfly\standalone\configuration\server.keystore" -file c:\localhost.csr
c:\localhost.csr 文件是新生成的证书请求文件。
- 将 c:\localhost.csr 文件提交给证书颁发机构 (CA) 进行审批。
证书请求文件获得批准之后,您希望证书以 .der 格式返回。该文件不一定会以 .der 文件格式返回。对于 Microsoft CA 服务,默认文件格式是 .cer。
大多数组织的 CA 使用信任模型链,其中包括一个根 CA(通常在脱机模式下工作)。它仅为少数几个子 CA(称为中间 CA)签署证书。
您必须获取整个信任链的公钥(证书),包括为 OnCommand Insight 服务器签署证书的 CA 的证书以及签署 CA 和组织的根 CA 之间的所有证书。
在某些组织中,您可能会在提交签名请求时收到以下其中一项:
- 一个 PKCS12 文件,其中包含您的已签名证书和信任链中的所有公共证书
- 一个 .zip 文件,其中包含各个文件(包括您的已签名证书)和信任链中的所有公共证书
- 只有您的已签名证书
您必须获取公共证书。
- 导入已获得批准的证书: C:\Program Files\SANscreen\java64\bin\keytool.exe -importcert -alias OCI.hostname.com -file c:\localhost2.DER -keystore "c:\Program Files\SANscreen\wildfly\standalone\configuration\server.keystore"
- 当出现提示时,输入密钥库密码。
此时将显示以下消息: Certificate reply was installed in keystore
- 编辑 SANscreen\wildfly\standalone\configuration\standalone-full.xml 文件:
示例
替换以下别名字符串:
alias="cbc-oci-02.muccbc.hq.netapp.com"。例如:
<keystore path="server.keystore" relative-to="jboss.server.config.dir" keystore-password="${VAULT::HttpsRealm::keystore_password::1}" alias="cbc-oci-02.muccbc.hq.netapp.com" key-password="${VAULT::HttpsRealm::key_password::1}"/>
- 重新启动 SANscreen 服务器服务。
如果 Insight 正在运行,则您可以单击挂锁图标以查看已安装在系统上的证书。
如果所显示的证书包含与“颁发者”信息匹配的“颁发给”信息,则表明您的系统上仍安装了自签名证书。由 Insight 安装程序生成的自签名证书的有效期为 100 年。
NetApp 无法保证此过程不会出现数字证书警告。最终用户对其工作站的配置方式不在 NetApp 的控制范围之内。请考虑以下情形:
- 在 Windows 上,Microsoft Internet Explorer 和 Google Chrome 均利用 Microsoft 的本机证书功能。
这意味着当 Active Directory 管理员将组织的 CA 证书推送到最终用户的证书信任存储时,如果 OnCommand Insight 自签名证书已被替换为由内部 CA 基础架构签署的证书,这些浏览器的用户不会看到证书警告。
- Java 和 Mozilla Firefox 具有各自的证书存储。
如果系统管理员未将 CA 证书载入到这些应用程序的可信证书存储的过程自动化,则在使用 Insight Java 客户端或 Firefox 浏览器时,即使已替换了自签名证书,系统也可能会由于证书不受信任而继续生成证书警告。因此,还需要将您的组织的证书链安装在信任存储中。