2015-03-25 41 views
4

我使用https設置獨立(不嵌入)jetty 9.2.1。調試碼頭https

我在本地盒子上玩了一下自簽名證書,一切都很順利。

現在我正在設置一個uat服務器(類似於我在生產中獲得的),並且我無法正常運行https。 這是我的步驟:

1)我創建了一個密鑰庫,生成的證書請求,並提交給我的CA,拿到了簽名的證書和密鑰庫

2進口無論對新根證書),我可以驗證密鑰庫正在細並且通過這樣做:

keytool -list -keystore jetty.jks 

我可以看到所有的證書與他們的別名

3示出)我把密鑰存儲在/ etc文件夾和編輯的碼頭-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連接器「向上」

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

但HTTPS沒有反應,事實上,我從netstat的看到,沒有什麼是監聽端口8443(同時顯示一個健康的港口8090)

我試着用'樣品'keystore碼頭髮貨,並得到它的工作,這讓我想到我的密鑰庫的一些問題......但是,我看到控制檯上沒有錯誤,也沒有在任何日誌中(即使以-DDEBUG = true開頭),我都可以看到密鑰庫的證書工商業污水附加費。

我也嘗試'強制'與別名選擇-Djetty.https-cert-alias = capi但沒有運氣。

有關如何調試的任何想法?

謝謝!

回答

3

我已經添加了以下屬性來啓用SSL調試:

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

該訣竅。 ;)

0

我所做的是爲了調試屬性添加到碼頭啓動腳本:在/var/log/upstart/myComponent.log

0

-Djavax.net.debug=all 

出於某種原因,所有調試信息是可在我的新貴文件對於我這個作品:

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