在Glassfish Application Server中导入SSL证书

时间:2017-12-18 10:18:43

标签: java ssl-certificate netbeans-8 glassfish-4

我正在尝试在Netbeans IDE上的项目上启用SSL并使用Glassfish应用程序服务器。

对于SSL;我按照下面的步骤。

  1. 生成密钥库> keytool -genkey -alias client_keystore -keyalg RSA -keystore client_keystore.jks -keysize 2048
  2. 生成CSR> keytool -certreq -alias client_keystore -file yourcsrname.csr -keystore client_keystore.jks
  3. 将CSR提交给另一方。
  4. 从聚会上收到三张.pem证书。我将.pem转换为.crt为openssl x509 -outform der -in your-cert.pem -out your-cert.crt
  5. 将证书导入我的密钥库,如下所示;
  6. keytool -import -trustcacerts -alias intermediate -file GoDaddy_Intermediate.crt -keystore client_keystore.jks

    keytool -import -trustcacerts -alias root -file GoDaddy_Root.crt -keystore client_keystore.jks

    keytool -import -trustcacerts -alias BizSwitch -file BizSwitch.crt -keystore client_keystore.jks

    1. 将密钥库导入默认的glassfish密钥库> keytool -importkeystore -srckeystore ~/Downloads/ipay/client_keystore.jks -destkeystore keystore.jks
    2. 重新启动的glassfish服务器。
    3. 我不确定这是否全部,但我得到sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target例外。

      重新启动时,我从glassfish日志中看不到加载的证书。

      我错过了什么吗?

3 个答案:

答案 0 :(得分:0)

您的密钥库是否在/ domains / domain1 / config文件夹中?

看起来glassfish没有指向正确的密钥库,因为您正确导入了证书。

答案 1 :(得分:0)

答案 2 :(得分:0)

您在别名-importcert -file BizSwitch.crt -alias client_keystore -keystore client_keystore.jks下创建了密钥对条目,因此您需要将服务器证书导入该别名和条目。假设BizSwitch是您的服务器名称,则需要Certificate reply was installed。如果更正,那么该命令的输出应为Certificate was added NOT keytool。 (后者适用于单独的 CA 证书,但不适用于服务器证书。)

此外,您无需转换为DER。 CertificateFactory(或者更确切地说var myEvent = jQuery.Event("keydown"); myEvent.which = 65; //keycode for 'a' $(document).keydown(function(e){ if ( e.which === 38 ) { $(e.target).trigger(myEvent); e.preventDefault(); } if ( e.which === 65 ) { // You can call your custom function here console.log('a press'); } }); )已经能够读取PEM证书超过十年,甚至是自2012年左右开始的PEM-comments评论。(对于某些其他加密对象,如私钥。)