Apache: после отключения SSLv3 для POODLE невозможно установить соединение с openssl или java без предварительного указания -tls1
Недавно мы обновили нашу конфигурацию mod_ssl, чтобы отключить SSLv3 для атаки POODLE, и это, похоже, работает. Однако старые клиенты (наши java 1.6 приложения, openssl 0.9.8za на моем mac) получают ошибку рукопожатия, если только мы не укажем TLSv1 в коде / командной строке соответственно. Тем не менее, с тех же клиентов я могу инициировать SSL-соединение из тех же инструментов, например с facebook.com, на котором также отключен SSLv3.
Симптом:
#working example site with SSLv3 disabled:
My-iMac:~ me$ openssl s_client -connect facebook.com:443
CONNECTED(00000003)
depth=1 /C=US/O=DigiCert Inc/OU=www.digicert.com/CN=DigiCert High Assurance CA-3
....
#My site with SSLv3 disabled:
My-iMac:~ me$ openssl s_client -connect site.company.com:443
CONNECTED(00000003)
66904:error:140790E5:SSL routines:SSL23_WRITE:ssl handshake failure:/SourceCache/OpenSSL098/OpenSSL098-52/src/ssl/s23_lib.c:182:
#Same site, now with -tls1 on command line, works:
My-iMac:~ me$ openssl s_client -connect site.company.com:443 -tls1
CONNECTED(00000003)
depth=1 /C=US/O=GeoTrust Inc./CN=RapidSSL SHA256 CA - G3
....
Мой вопрос - что я могу сделать, чтобы этот и другие клиенты подключались / договаривались правильно, автоматически (например, facebook.com), без необходимости указывать tls1? Это какое-то известное ограничение версии openssl в RHEL5/Centos5?
Настройка сервера: Centos 5.x, последние openssl rpm (openssl-0.9.8e-31.el5_11), пользовательский apache 2.4.10
Соответствующий конфиг apache:
SSLEngine on
SSLProtocol -all +TLSv1
SSLHonorCipherOrder On
SSLCipherSuite RC4:HIGH:!MD5:!aNULL:!EDH:!AESGCM:!SSLV2:!eNULL
SSLCertificateFile /opt/ca/cert.pem
SSLCertificateChainFile /opt/ca/cert.pem