我正在使用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选择哪个别名但没有运气。
关于如何调试这个的任何想法?
谢谢!
答案 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