Glassfish 3并导入签名的SSL证书问题

时间:2014-03-05 16:34:36

标签: java-ee ssl openssl ssl-certificate glassfish-3

我正在尝试将已签名的SSL证书安装到Glassfish中,但我失败了。以下是步骤列表

1。我使用keytool生成新密钥对(别名domain1)

keytool -genkeypair -keyalg RSA -keystore glassfish/domains/domain1/config/keystore.jks -validity 1000 -alias domain1

2。生成证书签名请求(out-domain1.csr)

keytool -certreq -alias domain1 -file **domain1.csr** -keystore glassfish/domains/domain1/config/keystore.jks

第3。我使用OpenSSL生成自己的根CA证书

3.1。生成根CA私钥(out - rootCA.key)

   openssl genrsa -out rootCA.key 1024

3.2。创建证书签名请求(out - rootCA.csr)

   openssl req -new -key rootCA.key -out rootCA.csr

3.3。自签名rootCA.csr(out - rootCA.crt)

   openssl x509 -req -days 3650 -in rootCA.csr -signkey rootCA.key -out rootCA.crt

4。签署domain1.csr(从步骤2生成) - (out - domain1.crt)

openssl x509 -req -days 500 -in domain1.csr -CA rootCA.crt -CAkey rootCA.key -out **domain1.crt** -CAcreateserial

5。我有2个签名证书

  • rootCA.crt
  • domain1.crt

6。我需要将rootCA.crt,domain1.crt安装到Glassfish v3

6.1。使用别名rootCA(成功)将 rootCA.crt 导入/ glassfish / domains / domain1 / config / cacerts.jks

    keytool -import -v -trustcacerts -alias rootCA -file rootCA.crt -keystore cacerts.jks

6.2。使用别名domain1(FAILED)将 domain1.crt 导入/ glassfish / domains / domain1 / config / keystore.jks

    keytool -import -v -trustcacerts -alias domain1 -file domain1.crt -keystore keystore.jks

在第6.2步。我收到了错误消息:

keytool错误:java.lang.Exception:无法建立回复链

当我将rootCA.crt和domain1.crt导入Glassfish时,任何人都知道我缺少哪些步骤?

由于glassfish keystore.jks只存储私钥,所以我想知道我是否必须将自签名的rootCA.crt导入到keystore.jks中?

非常感谢你!

1 个答案:

答案 0 :(得分:6)

我认为您在keystore.jks中缺少CA证书。在步骤6.1之后尝试这个:

keytool -import -v -trustcacerts -alias rootCA -file rootCA.crt -keystore keystore.jks