Servigistics InService 部署 > 为 Web 应用程序服务器配置 SSL
  
为 Web 应用程序服务器配置 SSL
安全超文本传输协议 (HTTPS) 是用于在计算机网络上进行安全通信的通信通道。在 Servigistics InService 中,HTTPS 使用安全套接层 (SSL) 来确保在 Servigistics InService Web 服务器和浏览器之间传递的所有数据的隐私性和完整性。SSL 是一种加密协议,可为安全性较差的基础设施提供安全通信。要在 Servigistics InService 中支持 HTTPS,您必须为应用程序配置 SSL 证书,该证书需经第三方 (受信任的证书颁发机构) 的验证。默认情况下,应用程序使用端口 8443 通过 SSL 进行通信。
通过使用第三方证书 (受信任的证书颁发机构) 支持 HTTPS
第三方证书由受信任的证书颁发机构予以验证。确保由第三方验证的证书具有 .keystore.jks 文件扩展名。
下述过程将第三方证书简称为 *.jks。此过程适用于所有设置配置类型。请确保已在 Publisher 和 Viewer 的配置器实体中正确更新安全端口和核心主机名称。
请按照以下步骤于 Servigistics InService 中使用 *.jks 证书:对于单一、拆分和群集配置,必须在各个实体上执行相同的步骤。也就是说,对于拆分和群集配置,必须在 Publisher 和各个 Viewer 实体上执行这些步骤。
1. 停止所有正在运行的 coreServer、coreCMIserver 和 JBoss 服务。
2. *.jks 证书保存到 <INS_HOME>/InS_SW/SW/system/wildfly/standalone/configuration 位置。
* 
对于 Servigistics InService,必须拥有扩展名为 .jks 的 HTTPS 证书。
密码必须为已知。
证书必须具有一个别名。例如,jboss。别名在证书生成过程中在证书中进行设置。
3. 更新与 Web 和离线系统的 security-realm 元素相关的详细信息 (如适用)。
a. 对于 Web 系统,请打开位于 <INS_HOME>/InS_SW/SW/System/WildFly/standalone/configuration 目录下的 standalone-full-<database-name>.xml 文件。
b. 对于离线系统,请打开位于 <INS_HOME>/InS_SW/SW/System/WildFly/standalone/configuration 目录下的 standalone-full.xml 文件。
<security-realm name="SSLRealm>
<server-identities>
<ssl>
<keystore path="*.jks" relative-to="jboss.server.config.dir" keystore-password="<actual_password_value>" alias="<actual alias from certificate>"
key-password="<actual_password_value>"/>
</ssl>
</server-identities>
</security-realm>
其中:
Keystore 路径:证书的名称。
Keystore 密码:证书的密码。
别名:证书的实际别名。
密码:证书的密码。
* 
对于离线系统,需修改 standalone-full.xml,而不是 standalone-full-<database-name>.xml
4. 运行以下命令将 *.jks 证书和 Java keystore 证书导出至 CA 证书:
<InS_HOME>/InS_SW/SW/System/Java/bin/keytool.exe -exportcert -noprompt
-alias "<actual alias from certificate>"
-keypass "<actual_password_value>" -storepass "<actual_password_value>"
-file <InS_HOME>/InS_SW/SW/System/WildFly/standalone/configuration/cert.crt
-keystore <InS_HOME>/InS_SW/SW/System/WildFly/standalone/configuration/<certificate_name>.jks
5. 运行以下命令将 CA 证书导入 JRE 证书:
<InS_HOME>/InS_SW/SW/System/Java/bin/keytool.exe -import -noprompt
-alias "<actual alias from certificate>"
-keypass keypass "<actual_password_value"> -storepass keypass "<actual_password_value">
-file <InS_HOME>/InS_SW/SW/System/WildFly/standalone/configuration/cert.crt
-keystore <INS_HOME>/InS_SW/SW/System/Java/jre/lib/security/cacerts
6. 对于拆分和群集环境,按照以下步骤导入新创建的 Publisher 和 Viewer 证书:
a. 将证书从一台计算机的 sw/System/WildFly/standalone/configuration 文件夹复制到另一台计算机的相同位置。将 Publisher 证书复制到 Viewer 并将 Viewer 证书复制到 Publisher。
b. 运行 importCertificate.bat 文件并将证书名称作为参数传递。SW 文件夹包含 .sh.bat 文件。例如,importCertificate.bat <FullCertificateName.crt>
* 
如果正在使用通配符证书,则可以跳过此交叉导入证书步骤。
7. 重新启动 coreServer、coreCMIserver 和 JBoss 服务。
您可以使用 SSL 访问 Servigistics InService Web 应用程序。例如,尝试访问 URL:https://localhost:8443
通过使用自签名证书支持 HTTPS
自签名证书是一个身份证书,由需要证明身份的同一实体签署,而非由受信任的证书颁发机构签署。安装应用程序时,应用程序会自动创建自签名证书。
要支持 HTTPS,就必须将证书添加到系统中。
* 
PTC 建议您仅使用受信任的第三方证书颁发机构所颁发的 SSL 证书。自签名证书仅限测试系统使用。不建议将自签名证书用于任何生产环境,即使在防火墙之后也不适宜。
对于单一配置,应用程序会在安装应用程序时自动创建证书。
上述步骤仅用于创建和导入自签名证书。
1. 将证书从一台计算机上的 sw/System/WildFly/standalone/configuration 文件夹复制到另一台计算机上的相同位置。将 Publisher 证书复制到 Viewer 并将 Viewer 证书复制到 Publisher。
2. 运行 importCertificate.bat 文件,并将 machineName (从中复制证书) 作为参数传递。SW 文件夹中具有以下 .sh.bat 文件。
例如,在 Publisher 计算机上,转至 SW 文件夹,然后运行以下命令:
对于 Windows:
importCertificate.bat <v1.FullName>
对于 Linux:
./importCertificate.sh <v1.FullName>
在 Viewer 1 上:对于 Windows,运行
importCertificate.bat <Publisher.FullName>
;对于 Linux,运行
./importCertificate.sh <Publisher.FullName>
* 
在离线系统上导入 Web 服务器的证书。对于离线 SSL 配置,运行 importCertificate.bat <primary_server_Full_host_Name> 命令。
全名表示完整域名,例如 <host_name>.ptcnet.ptc.com
对于群集环境
对于拆分环境
故障排除
如果某些步骤执行有误,您希望重新导入证书,请执行以下步骤:
1. 删除或重命名 sw\System\Java\JRE\lib\security\cacerts 文件。
2. 删除 inskeystore 及所有证书。
3. 在所有将参数作为计算机名称的计算机上运行 createkeyStore
4. 根据需要复制证书。
5. 使用 importKeyStore 在每台计算机上导入其他证书。