2013-07-02 55 views
3

我希望你能原諒我的壞/糟糕的英語。爲什麼我的HTTPS連接不使用TLS?

我很確定這是一個很天真的問題,但我需要解決它。

我運行在JBOSS應用AS 7服務器,我啓用了HTTPS在我的standalone.xml文件中添加此行連接:現在

<connector name="https" protocol="HTTP/1.1" scheme="https" socket-binding="https" secure="true"> 
    <ssl name="ssl" password="password" protocol="TLSv1"/> 
</connector> 

,如果我試圖通過進入電影我的應用程序使用這個網址的web瀏覽器:

https://localhost:8443/myapp/ 

後,我接受我的自制證書,瀏覽器告訴我,連接是由AES 128使用一切TLS協議提出,並加密看起來很好。

但是,當我在服務器上使用Wireshark,並嘗試使用位於本地網絡中的計算機訪問我的應用程序時,沒有TLS跟蹤,但只有TCP連接(似乎已加密)。另一方面,如果我嘗試訪問HTTPS Web服務器,Wireshark告訴我正在使用的協議是TLS。我現在很困惑。

所以,這裏是我的問題:我的連接是否在TLS上工作?如果沒有,可能是什麼問題(可能是端口8443不是HTTPS的標準端口?)?

讓我知道我是否真的不清楚,或者如果我沒有提供足夠的信息。

此致敬禮, PDauph。

回答

4

我懷疑你的連接是使用TLS。 Wireshark不會自動識別所有協議。它使用試探法(包括端口號)嘗試確定連接上的分層協議。如果您使用的是非標準端口(如8443),則Wireshark可能不會將連接解釋爲TLS,即使它實際上是。

如果Wireshark沒有單獨選擇正確的連接,您可以手動告訴Wireshark將連接解碼爲特定的協議。右鍵單擊其中一個數據包,然後從上下文菜單中選擇「Decode As ...」。然後選擇SSL作爲傳輸協議。 Wireshark現在應該嘗試將連接解析爲SSL/TLS流。

這裏是documentation on Wireshark decoding

+1

謝謝!我懷疑8443端口,但不是因爲Wireshark,謝謝你指出這一點。通過執行「Decode As ...」操作,我可以看到「密鑰交換」,「加密握手」以及TLS協議所需的其他階段。 – PDauph

0

這確實是因爲默認情況下,Wireshark不考慮8443來建立HTTPS/SSL連接。

除了處理的解碼器,這可以相當容易地配置成在首選項:

  1. 打通偏好(菜單:編輯 - >首選項,鍵:CTRL + SHIFT + P)

  2. 選擇協議 - > HTTP首選項頁面

  3. 然後,對於SSL/TLS端口用 「443,」(或根據需要)

然後在下一次捕獲數據時,它將會使用適當的HTTPS/SSL解碼器。

+0

似乎對我有用。不知道爲什麼這是downvoted。 – rhashimoto