2013-07-02 2 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> 

Теперь, если я пытаюсь Acces моего приложения через веб-браузер, используя этот адрес:

https://localhost:8443/myapp/ 

После того как я принимаю мой самодельный сертификат, браузер сказать мне, что подключение осуществляется с использованием протокола TLS, и зашифровано AES 128. Все выглядит прекрасно.

Но когда я использую Wireshark на сервере, и я пытаюсь получить доступ к моему приложению с компьютером, находящимся в моей локальной сети, нет следа TLS, а только TCP-соединений (которые, кажется, зашифрованы).

С другой стороны, если я пытаюсь получить доступ к веб-серверу HTTPS, Wireshark сообщает мне, что используемым протоколом является TLS. Теперь я совершенно смущаюсь.

Итак, вот мои вопросы: Является ли мое соединение, даже работая над TLS? Если нет, в чем может быть проблема (может ли это быть порт 8443, который не является стандартным портом HTTPS?)?

Сообщите мне, если я не совсем понят, или если я не предоставил достаточной информации.

С уважением, PDauph.

ответ

4

Я подозреваю, что ваше соединение использует TLS. Wireshark автоматически не распознает все протоколы. Он использует эвристику, включая номер порта, чтобы попытаться определить многоуровневые протоколы в соединении. Если вы используете нестандартный порт (например, 8443), то Wireshark, вероятно, не интерпретирует соединение как TLS, хотя оно и есть на самом деле.

Вы можете вручную сообщить Wireshark об декодировании соединения как о конкретном протоколе, когда он сам не выбирает правильный. Щелкните правой кнопкой мыши по одному из пакетов и выберите «Декодировать как ...» в контекстном меню. Затем выберите SSL в качестве транспортного протокола. Теперь Wireshark попытается проанализировать соединение как поток SSL/TLS.

Адрес documentation on Wireshark decoding.

+1

Спасибо! Я подозревал порт 8443, но не из-за Wireshark, спасибо за это. Выполняя манипуляцию «Декодировать как ...», позвольте мне увидеть «обмен ключами», «зашифрованное рукопожатие» и другие этапы, необходимые для протокола TLS. – PDauph

0

Это действительно вызвано тем, что по умолчанию Wireshark не рассматривает 8443 для установления соединения HTTPS/SSL.

В дополнение к работе с декодерами, это может быть настроен довольно легко в настройках:

  1. Открывают Настройки (меню: Edit -> Preferences, клавиша: Ctrl + Shift + P)

  2. Выберите протоколы -> HTTP предпочтение странице

  3. Тогда для SSL/TLS используются порты "443, " (или по мере необходимости)

Затем при следующем захвате данных будет применен соответствующий декодер HTTPS/SSL.

+0

Мне кажется полезным. Не уверен, почему это было приостановлено. – rhashimoto

Смежные вопросы