Клиент OpenLDAP не может подключиться к серверу ApacheDS с помощью SSLv2?

Я пытаюсь подключиться к своему Java-приложению, содержащему сервер ApacheDS, с клиентом openLDAP. Сервер настроен хорошо, я проверял это на разных клиентах (ldapbrowser, jxplorer). С openLDAP я могу подключиться к обычному порту ldap, но когда я пытаюсь подключиться к порту ldaps или использую TLS, у меня всегда одно и то же сообщение:

TLS trace: SSL_connect:before/connect initialization
TLS trace: SSL_connect:SSLv2/v3 write client hello A
TLS trace: SSL3 alert read:fatal:unexpected_message
TLS trace: SSL_connect:error in SSLv2/v3 read server hello A
TLS: can't connect: error:140773F2:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert unexpected message.

И мое приложение дает мне исключение:

WARN [org.apache.directory.server.ldap.LdapProtocolHandler] - Unexpected exception forcing session to close: sending disconnect notice to client.

и после этого:

 javax.net.ssl.SSLHandshakeException: SSLv2Hello is disabled

Я пытался заставить java включить sslv2, но ответ сервера такой же. Я не видел в конфигурации ApacheDS опции включения SSLv2 (есть только SSLv3 и 3 TLS).

Возможно ли, что для соединения с tls OpenLDAP требуется сообщение SSLv2? Я не могу найти способ, как отключить его. Или проблема с Apache в том, что он не распознает сообщения рукопожатия TLS?

У вас есть идеи, как это решить?

Спасибо!


person eewe    schedule 11.01.2016    source источник
comment
Проблема может заключаться в вашем Java-клиенте, если сервер хорошо настроен, но форсирование SSL2 не является курсом действий. Убедитесь, что клиент Java использует TLS 1.0 и выше; а не SSLv3 и выше (как хочет сделать Java). Также см. раздел Какие наборы шифров включить для сокета SSL?. В нем показано, как настраивать протоколы и наборы шифров.   -  person jww    schedule 11.01.2016


Ответы (1)


Я нашел способ отключить SSLv2 в клиенте OpenLDAP. Я добавил минимальную версию протокола в файл ldaprc:

TLS_ПРОТОКОЛ_МИН 3.3

Это была недостающая строка. Теперь я могу подключиться через SSLv3 и TLS.

person eewe    schedule 11.01.2016