调试Jetty https

时间:2015-03-25 00:42:47

标签: https jetty jetty-9

我正在使用https。

设置一个独立的(非嵌入式)码头9.2.1

我在我当地的盒子上玩了一张自签名证书,一切都很顺利。

现在我正在设置一个uat服务器(类似于我将在生产中获得的),并且我无法使https正常运行。 这些是我的步骤:

1)我创建了一个密钥库,生成了证书请求并提交给我的CA,获得了签名证书,并在密钥库中导入了新证书和根证书

2)我可以通过执行以下操作验证密钥库是否正常:

keytool -list -keystore jetty.jks

我可以看到所有带有别名的证书

3)我将密钥库放在/ etc文件夹中并编辑了jetty-ssl.xml

<Set name="KeyStorePath"><Property name="jetty.base" default="." />/<Property name="jetty.keystore" default="etc/jetty.jks"/></Set>
<Set name="KeyStorePassword"><Property name="jetty.keystore.password" default="somepassword"/></Set>
<Set name="KeyManagerPassword"><Property name="jetty.keymanager.password" default="somepassword"/></Set>
<Set name="TrustStorePath"><Property name="jetty.base" default="." />/<Property name="jetty.truststore" default="etc/jetty.jks"/></Set>
<Set name="TrustStorePassword"><Property name="jetty.truststore.password" default="somepassword"/></Set>

启动时我可以看到http和https连接器'up'

10927 [main] INFO  org.eclipse.jetty.server.ServerConnector  - Started ServerConnector@231e04a9{HTTP/1.1}{0.0.0.0:8090}
11285 [main] INFO  org.eclipse.jetty.server.ServerConnector  - Started ServerConnector@4a1f826d{SSL-http/1.1}{0.0.0.0:8443}
11285 [main] INFO  org.eclipse.jetty.server.Server  - Started @12632ms

但是https没有响应,确实我从netstat看到没有任何东西正在侦听端口8443(同时显示端口8090的健康端口)

我尝试使用jetty附带的'sample'密钥库并使其正常工作,这让我想到了我的密钥库的一些问题......但是,我看到控制台上没有错误,也没有任何日志(即使是在启动时) -DDEBUG = true)我可以看到密钥库的证书。

我还试图'强制'使用-Djetty.https-cert-alias = capi选择哪个别名但没有运气。

关于如何调试这个的任何想法?

谢谢!

3 个答案:

答案 0 :(得分:4)

我添加了以下属性以启用ssl调试:

-DDEBUG=true -Dorg.eclipse.jetty.LEVEL=DEBUG -Djavax.net.debug=ssl,handshake,data

这就是诀窍。 ;)

答案 1 :(得分:0)

我所做的是将调试属性添加到jetty启动脚本:

-Djavax.net.debug=all

由于某些原因,/var/log/upstart/myComponent.log

下的我的新手文件中提供了所有调试信息

答案 2 :(得分:0)

对我而言,这有效:

 -DDEBUG=true -Dorg.mortbay.jetty.LEVEL=DEBUG -Djavax.net.debug=ssl,handshake,data -classpath