Мой сервер настроен на прием протоколов SSLv3 и TLS1.0. Но несколько клиентов отправляют параметры ниже рукопожатия, и после того, как сервер приветствует, клиент разрывает соединение и отправляет предупреждение «Ошибка совместного использования (40)», не будучи уверенным, что это ошибка клиента или сервера.
Вот начальный пакет приветствия клиента:
Secure Socket Layer
SSLv3 Record Layer: Client Hello
Content Type: Handshake (22)
Version: SSL 3.0 (0x0300) <-----------------
Length: 103
Handshake Protocol: Client Hello
Handshake Type: Client Hello (1)
Length: 78
Version: TLS 1.0 (0x0301) <-------------
Random
Session ID Length: 0
Cipher Suites Length: 18
Cipher Suites (9 suites)
Уровень записи - это SSL 3.0, а протокол внутреннего рукопожатия - TLS 1.0. Мой вопрос, это правильный способ сделать это, то есть использовать разные версии для каждого слоя? если это какой метод это? Я нигде не могу его найти, я просмотрел RFC, но не могу найти никаких ссылок. Кроме того, как я могу производить такие запросы?
РЕДАКТИРОВАТЬ : Я не заинтересован в устранении неполадок и устранении проблемы, я просто хочу знать, как я могу отправлять такие пакеты? Любая команда? И как мне назвать этот метод?
то есть я могу использовать curl или openssl для использования ssl3 или tls1, но при этом будет отправлена одна и та же версия как на уровне записи, так и на уровне рукопожатия:
curl -v -ssl3 https://www.mywebserver.com
Выше команды curl будет выглядеть на wireshark:
РЕДАКТИРОВАТЬ2: Это даже законно? Я гуглил вокруг и не могу найти ни одного примера. Это нарушает какие-либо стандарты RFC?
Спасибо