Я пытаюсь подключиться к серверу HTTPS, который поддерживает следующие шифры / протоколы, но рукопожатие не удается:
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
TLS_RSA_WITH_AES_256_CBC_SHA256
TLS_RSA_WITH_AES_256_CBC_SHA
TLS_RSA_WITH_CAMELLIA_256_CBC_SHA
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
TLS_RSA_WITH_AES_128_CBC_SHA256
TLS_RSA_WITH_AES_128_CBC_SHA
TLS_RSA_WITH_CAMELLIA_128_CBC_SHA
Согласно SSL Labs, OpenSSL 1.0.2 поддерживает следующие шифры:
https://www.ssllabs.com/ssltest/viewClient.html?name=OpenSSL&version=1.0.2
Я попытался скомпилировать из исходного кода, и список шифров, поддерживаемых моей скомпилированной стабильной версией OpenSSL 1.0.2 (из Github), находится здесь: http://pastebin.com/ZQ0xJu1U
Похоже, они не совпадают со списком, который поддерживает мой HTTPS-сервер. Я что-то упускаю? Как SSL Labs OpenSSL 1.0.2 поддерживает шифры, которые не охватываются стандартным OpenSSL? Я также проверил скомпилированные версии OpenSSL и не мог понять, что происходит.
Как мне добавить эти шифры в мою копию OpenSSL?
Я обнаружил, что этот вопрос похож на тот, что я искал, но ни моя платформа CentOS, ни этот вопрос не указывали, как добавить эти наборы, если они отсутствуют, даже после компиляции OpenSSL из исходного кода.