安装 SSL 证书

     



     

    介绍

    ServiceDesk Plus MSP 可以作为 HTTPS 服务运行。但它需要一个 SSL(安全套接字层)证书 由有效的证书授权机构(CA)签发。

    默认情况下,首次启动时,它会创建一个自签名证书。此自签名证书不会被用户浏览器信任。因此,在连接到 ServiceDesk Plus MSP 时,您需要手动验证证书信息和 ServiceDesk Plus MSP 服务器的主机名,并强制浏览器接受该证书。

    为了让 ServiceDesk Plus MSP 服务器正确地向 Web 浏览器和用户标识自身,您需要从 CA 获取 ServiceDesk Plus MSP 主机的新签名证书。您可以使用随 Java 捆绑的 keytool 来创建证书,让 CA 签名,并在 ServiceDesk Plus MSP 中使用它们。

     

    在 ServiceDesk Plus MSP 中安装 SSL 的步骤

    配置 ServiceDesk Plus MSP 使用 SSL 的步骤如下。         

    步骤 1: 创建 Keystore 文件

    步骤 2: 创建 .CSR(证书签名请求)文件

    步骤 3a: 从 ServiceDesk Plus UI 安装 SSL 证书

    步骤 3b: 安装您的 SSL 证书

     

    注意: 在所有图片中,将高亮文本替换为您想用于 ServiceDesk Plus MSP 的别名。

    步骤 1:创建 Keystore 文件

    在向 CA 请求证书之前,您需要创建 tomcat 特定的 “.keystore” 文件和 “.csr” 文件。 .keystore 文件和 .csr 文件 将包含创建者提供的信息。 .keystore .csr 文件。

    创建 .keystore 文件,请按照以下步骤操作:

    • 打开命令提示符。

    • 从位置 <installation directory> \ jre \ bin 执行命令

    keytool -genkey -alias <your_alias_name> 或 [域名] -keyalg RSA -keystore sdp.keystore

    • 如果您的供应商要求 2048 位大小的 CSR 请使用以下命令。

    keytool -genkey -alias <your_alias_name> 或 [域名] -keyalg RSA -keysize 2048 -keystore sdp.keystore

    • 系统将提示您为 keystore 选择密码。

    注意: 请注意密码 不应包含 $ 符号。.

    • 当询问您的名字和姓氏时,这个 不是 您的名字和姓氏,而是您所保护站点的 完全限定域名(FQDN)。 如果您订购的是
       


    • 通配符证书 ,命令必须以 * 字符开头。输入所需信息后,当系统提示时,输入 ‘y’ 或 ‘yes’ 确认信息正确。
       


    • 执行上述命令结束时,系统将提示您输入 keystore 密码。建议
       


    • 密码与您的密钥密码相同 。请务必记住您选择的密码。您名为 sdp.keystore 的 Keystore 文件现已在当前工作目录中创建。

    • 建议您在安装证书前备份 sdp.keystore 文件。如果证书安装出错或来年续订证书时,可以使用备份的 keystore。

    注意: 步骤 2:创建 .CSR(证书签名请求)文件

     

    .CSR 文件是临时的,应提交给 CA 以获得

    CA 签名证书 文件。

    请按照以下步骤创建 CSR 文件。

    • 打开命令提示符。

    • 从位置 <installation directory> \ jre \ bin 执行以下命令。

    keytool -certreq -alias <your_alias_name> -file key.csr -keystore sdp.keystore

    上述命令中, <your_alias_name>  是创建 keystore 时提供的别名, key.csr 是该命令执行后生成的 CSR 文件名。

    注意: 您可以通过两种方式安装 SSL 证书, 一是 从 UI , 二是.
     

     

     

    手动 

    • 步骤 3a: 从 ServiceDesk Plus MSP UI 安装 SSL 证书 从 CA 下载证书文件到 keystore (sdp.keystore) 所在位置。 
    • 进入 管理 通用设置 导入 SSL 设置.
    • 在显示的屏幕中,浏览证书文件并选择主证书或域证书文件。注意,仅可选择扩展名为 .cer、.crt、.p7b、.pfx、.keystore 或 .jks 的文件。
    • 对于 .pfx、.keystore、 .jks 文件,输入 keystore 密码并点击 导入 按钮以安装 SSL 证书。  
    • 对于 .cer , .crt 文件,提供 keystore 文件和密码, 并选择中间证书/根证书的上传方式,然后点击 导入 按钮以安装 SSL 证书。  
    • 。 对于 .p7b keystore 文件和密码, 文件,只需提供 导入 按钮以安装 SSL 证书。
    • 并点击 

    重启应用程序以使更改生效。 注意 :如果您有私钥文件格式为  

    .key  
     


    ,则无需输入密码。

     

    下图说明了如何为 .cer/.crt 文件手动上传中间证书/根证书的流程。

    :您最多可以上传四个中间证书/根证书。

    步骤 3b:安装您的 SSL 证书
     


    通过电子邮件收到 CA 的证书文件后,下载到您在创建 CSR 期间保存 keystore (sdp.keystore) 的目录中。必须将证书安装到该 keystore。如果尝试安装到其他 keystore,将无法生效。您下载的证书必须按正确顺序安装到 keystore 中,证书才能被信任。如果证书安装顺序不正确,则证书无法正确认证。要确定正确顺序,请双击域证书,然后转到“证书路径”。这些证书通常格式为 .cer 或 .crt 对于 。如果您的证书是 扩展名为 .p7b

    ,请参照 安装 .P7b 证书的指引,将证书导出为 .cer 或 .crt 格式。 根据上面的证书路径,我们可以推断出在导入域证书之前需先导入另外两个证书。首先是 根证书 ,接着是中间证书 ,最后是域证书


    。某些 CA 还可能使用另一种称为

    交叉中间证书

    的证书。这些证书可从供应商网站下载。

    注意: 安装根证书文件每次将证书安装到 keystore 时,系统会提示您输入生成 CSR 时选择的 keystore 密码。使用以下命令安装根证书文件:keytool -import -trustcacerts -alias root -file <File_Name>.crt -keystore sdp.keystore

    如果出现如下提示:“Certificate already exists in system-wide CA keystore under alias <Alias Name> Do you still want to add it to your own keystore? [no]:”,请选择 ‘
     

     

    请按照CA提供的说明操作。

    keytool -import -trustcacerts –alias intermediate -file <File_Name>.crt -keystore sdp.keystore

    keytool -import -trustcacerts –alias cross -file <File_Name>.crt -keystore sdp.keystore

    如果出现如下提示:“Certificate already exists in system-wide CA keystore under alias <Alias Name> Do you still want to add it to your own keystore? [no]:”,请选择 ‘
     


    安装主证书或域证书文件

    输入以下命令安装主证书文件:

    keytool -import -trustcacerts -alias <your_alias_name or [Domain Name]> -file your_domain_name.crt -keystore sdp.keystore

    请注意 <your_alias_name or [Domain Name]> 应替换为创建keystore时提供的别名(如步骤1中所述)。这次您将收到不同的确认信息,提示 “Certificate reply was installed in keystore”.
     

    如果您想信任该证书,请选择y或yes. 您的证书现已安装到您的keystore文件(sdp.keystore)中。

     

    配置服务器(版本9400及以上) 

    • 将sdp.keystore文件从<ServiceDeskMSP_Home>\jre\bin复制到<ServiceDeskMSP_Home>\conf

    • 在命令提示符下,执行changeWebServerPort.bat脚本将连接模式更改为HTTPS。

     

    Cmd>[ServiceDesk Plus MSP Home]\bin> changeWebServerPort.bat <WEBSERVER_PORT> https 

     

    • 最后,在生成sdp.keystore时,在<ServiceDesk_Home>\conf目录下的server.xml文件中,更新您在步骤1中给出的keystore名称和密码

    • 重启ManageEngine ServiceDesk Plus MSP服务以使更改生效。

     

    配置服务器(版本低于9400)

    • 将sdp.keystore文件从<ServiceDeskMSP_Home>\jre\bin复制到<ServiceDeskMSP_Home>\server\default\conf

    • 在命令提示符下,执行changeWebServerPort.bat脚本将连接模式更改为HTTPS。

     

    Cmd>[ServiceDesk Plus MSP Home]\bin> changeWebServerPort.bat <WEBSERVER_PORT> https

     

    • 最后,在生成sdp.keystore时,在<ServiceDeskMSP_Home>\server\default\deploy\jbossweb-tomcat50.sar目录下的server.xml文件中,更新您在步骤1中给出的keystore名称和密码

    • 重启ManageEngine ServiceDesk Plus MSP服务以使更改生效。

     

    安装 .P7b 证书

    一些CA会提供扩展名为.p7b的证书文件。此情况下,您可以双击该文件打开控制台,控制台会列出所有所需证书。您可以将这些证书导出为Base-64编码的X.509(.cer)文件。 

    然后,可以使用步骤3中给出的说明将这些证书安装到keystore文件中。

    导出证书时,

    • 进入 [ServiceDesk Plus MSP Home] \ jre \ bin \ domain.P7B.
    • 右键点击证书并选择 所有任务 -> 导出 选项。
    • 证书导出向导对话框弹出。点击 下一步 按钮继续。
    • 选择导出文件格式为 Base-64编码的X.509(.cer)。点击 下一步.
    • 指定导出文件的名称。 点击 下一步.
    • 证书导出向导成功完成。您可以检查已指定的设置。点击 完成.
    • 成功消息会在对话框中显示。点击 确定.

     

    某些常见供应商证书安装命令

    以下是您需要使用的安装一些常见供应商证书的命令.

    注意: 这些说明可能会根据CA颁发的证书有所变化。

    GoDaddy

    如果您的CA是 “GoDaddy”,则需执行以下步骤:

    keytool -import -alias root -keystore <Keystore_Name>.keystore -trustcacerts -file gd_bundle.crt

    keytool -import -alias cross -keystore <Keystore_Name>.keystore -trustcacerts -file gd_cross_intermediate.crt

    keytool -import -alias intermediate -keystore <Keystore_Name>.keystore -trustcacerts -file gd_intermediate.crt

    keytool -import -alias <创建Keystore时指定的别名> -keystore <Keystore_Name>.keystore -trustcacerts -file <CertificateName>.crt

    Verisign

    如果您的CA是 “Verisign”,则需执行以下步骤:

    keytool -import -alias intermediateCA -keystore <Keystore_Name>.keystore -trustcacerts -file <your_intermediate_certificate_name>.cer

    keytool -import -alias <创建Keystore时指定的别名> -keystore < Keystore_Name>.keystore -trustcacerts -file <CertificateName>.cer

    Comodo

    如果您的CA是 “Comodo”,则需执行以下步骤:

    keytool -import -trustcacerts -alias root -file AddTrustExternalCARoot.crt -keystore <Keystore_Name>.keystore

    keytool -import -trustcacerts -alias addtrust -file UTNAddTrustServerCA.crt -keystore <Keystore_Name>.keystore

    keytool -import -trustcacerts -alias ComodoUTNServer -file ComodoUTNServerCA.crt -keystore <Keystore_Name>.keystore

    keytool -import -trustcacerts -alias essentialSSL -file essentialSSLCA.crt -keystore <Keystore_Name>.keystore

    keytool -import -trustcacerts -alias <创建Keystore时指定的别名> -file <Certificate-Name>.crt -keystore <Keystore_Name>.keystore


     常见错误/故障排除技巧

    • 即使证书未损坏且密码正确,预验证仍失败。importssl0日志文件中有如下异常跟踪:


    原因:java.io.IOException: 解包装私钥时异常 - java.security.spec.InvalidKeySpecException: Invalid KeySpec: unknown PRF algorithm 1.2.840.113549.2.9

     

    答案:这可能是因为应用程序中使用的Java版本不支持.pfx文件中用于加密密码的算法。请按照以下步骤进行建议的变通处理:

    1. 按照说明将SSL证书导入您的机器 这里.

    2. 使用Microsoft管理控制台以.pfx格式导出,包括私钥、证书路径中的所有证书及所有扩展属性。确保密码加密为TripleDES-SHA1,而非AES256-SHA256。了解如何操作 这里.

    3. 使用新的.pfx文件将SSL证书导入应用程序。

     

    • 在使用keytool导入域证书时,出现“Failed to establish chain from reply”错误,如下所示:

     

     

     

    答案:检查应用程序中使用的Java版本的keytool是否支持证书(根、中间和域)使用的签名算法。例如,Java 8不支持RSASSA-PSS算法。

    建议的变通方案是获取使用应用程序中Java版本支持的算法的新根证书、中间证书和域证书。

    如果无法获得新证书,请使用由支持该签名算法的Java版本提供的keytool生成的同一keystore和证书来导入域证书。手动将keystore放置在{PRODUCT_HOME}/conf中,并按以下说明配置服务器。 这里.

    使用不同于应用程序所用Java版本生成的keystore进行UI导入将会失败。

    点击 这里 有关创建和导入SSL证书到keystore的步骤,请参见。

     

    • 从UI导入.pfx证书失败并显示错误Illegal Key Size。importssl0日志文件中有以下异常跟踪::


    原因:java.io.IOException: 解包装私钥时异常 - java.security.InvalidKeyException: Illegal key size

     

    答案:这可能是因为产品中使用的Java版本不支持该密钥大小。换言之,证书可能是由另一个Java版本生成,且密钥大小不同。

    建议的变通方案是获取适当密钥大小的新证书,或将{PRODUCT_HOME}\jre\lib\security中的策略文件替换为不同Java版本的策略文件。

    下载政策文件用于 ServiceDesk Plus MSP 网址见下方链接:

    Zoho 公司。 版权所有。