jetty 9.1.2 ssl配置根据文档不起作用

时间:2014-03-08 18:01:44

标签: java ssl jetty

使用jetty 9.1.2和[1]中的文档,我遵循使用openssl的步骤,但无法使ssl工作。

我按照链接运行了以下步骤:

我在jetty文件夹中,debian 7。

cd etc
rm keystore 

openssl genrsa -des3 -out jetty.key

openssl req -new -x509 -key jetty.key -out jetty.crt

keytool -keystore keystore -import -alias jetty -file jetty.crt -trustcacerts

openssl pkcs12 -inkey jetty.key -in jetty.crt -export -out jetty.pkcs12

keytool -importkeystore -srckeystore jetty.pkcs12 -srcstoretype PKCS12 -destkeystore keystore


cd..

然后根据[1]它说这个xml添加到jetty-https.xml但是到哪里?

<New id="sslContextFactory" class="org.eclipse.jetty.util.ssl.SslContextFactory">
  <Set name="KeyStorePath"><Property name="jetty.home" default="." />/etc/keystore</Set>
  <Set name="KeyStorePassword">OBF:1vny1zlo1x8e1vnw1vn61x8g1zlu1vn4</Set>
  <Set name="KeyManagerPassword">OBF:1u2u1wml1z7s1z7a1wnl1u2g</Set>
  <Set name="TrustStorePath"><Property name="jetty.home" default="." />/etc/keystore</Set>
  <Set name="TrustStorePassword">OBF:1vny1zlo1x8e1vnw1vn61x8g1zlu1vn4</Set>
</New>

我还将etc / jetty-https.xml添加到start.ini

java -jar start.jar 

错误:jetty-https.xml java.lang.reflect.InvocationTargetException

文档中是否缺少某些内容?什么是让新码头在https上工作的完整设置?

[1] http://www.eclipse.org/jetty/documentation/current/configuring-ssl.html#loading-keys-and-certificates

1 个答案:

答案 0 :(得分:0)

文档也没有提到将以下内容添加到JETTY_HOME / start.ini:

# ---------------------------------------
# Module: ssl
--module=ssl

# ---------------------------------------
# Module: https
--module=https

...没有它,jetty会忽略你手工编码/复制的所有配置,无论如何;-)它还提到使用默认设置你正在创建一个JSSE密钥库。这是JKS。

我知道你们这些码头的专家已经开始睁大眼睛了,但它是SSL配置的一部分,应该真的包含在“启用SSL”文档中,对于我们这些无法通过互联网阅读开发人员思想的人来说