Я пытался использовать Скамья Apache (ab) на моем локальном сервере, который работает HTTP-сервер Apache, с ssl модуль включен, используя TLS1.3 в качестве протокола для общения, но всякий раз, когда я пытаюсь его использовать, у меня есть Сообщение об ошибке установления связи SSL появляется в моем терминале командной строки.
Я просто установил apache2 на моем локальном ПК (работающем под управлением Zorin OS 15.2) и внес некоторые изменения в ssl.conf файл, который я указал Протоколы SSL использовать:
SSLProtocol -all +TLSv1.2 +TLSv1.3
и в файле конфигурации сайта для активации SSL Engine укажите все файлы сертификатов, назначив Имя сервера и т. д.
После того, как все это будет сделано, я просто запускаю команду ab для тестирования, и если я запускаю команду следующим образом:
ab -n 100 -c 10 https://myhostname/
Все работает нормально, но если я попытаюсь указать протокол TLS1.3, используя один шифр, который используется для TLS1.3, появится следующее сообщение об ошибке:
ab -n 1000 -c 50 -Z TLS_AES_256_GCM_SHA384 https://myhostname:443/
This is ApacheBench, Version 2.3 <$Revision: 1807734 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking hostname (be patient)
SSL handshake failed (1).
139632751683456:error:141A90B5:SSL routines:ssl_cipher_list_to_bytes:no ciphers available:../ssl/statem/statem_clnt.c:3786:No ciphers enabled for max supported SSL/TLS version
Что для меня странно, если я запускаю ту же команду с использованием некоторых шифров, поддерживаемых TLS1.2, все работает нормально, но если я использую какие-либо шифры, поддерживаемые TLS1.3, я получаю эту ошибку.
Я даже попытался выполнить простое подключение с помощью openssl s_client с опцией -tls1_3 для подключения к моему серверу с использованием TLS1.3 в качестве протокола, и соединение работает нормально.
Вот список программного обеспечения, которое я использую:
Я хочу просто запустить ту же команду, но с использованием шифров, поддерживаемых протоколом TLS1.3.
Документация для ab - инструмент тестирования HTTP-сервера Apache имеет:
-f
протоколУкажите протокол SSL / TLS (SSL2, SSL3, TLS1, TLS1.1, TLS1.2 или ВСЕ). Поддержка TLS1.1 и TLS1.2 доступна в 2.4.4 и новее.
Это также упоминается в журнал изменений:
Изменения в Apache 2.4.4
ab
: добавить параметры TLS1.1 / TLS1.2 в-f
переключение и адаптация вывода для более точного отчета о согласованном протоколе. PR 53916. [Николас Пернас Марадеи, Каспар Бранд]
Поскольку в TLS 1.3 подобного упоминания нет, можно предположить, что ab
пока не поддерживает его (несмотря на то, что Apache 2.4 поддерживает TLS 1.3).