Как импортировать сертификат для Apache + LDAPS?

Как импортировать сертификат для Apache + LDAPS?

Я пытаюсь заставить ldaps работать через Apache 2.2.17 (Windows Server 2008). Если я использую ldap (обычный текст), моя конфигурация работает отлично.

LDAPTrustedGlobalCert CA_DER C:/wamp/certs/Trusted_Root_Certificate.cer
LDAPVerifyServerCert Off
<Location />
    AuthLDAPBindDN "CN=corpsvcatlas,OU=Service Accounts,OU=u00958,OU=00958,DC=hca,DC=corpad,DC=net"
    AuthLDAPBindPassword ..removed..
    AuthLDAPURL "ldaps://gc-hca.corpad.net:3269/dc=hca,dc=corpad,dc=net?sAMAccountName?sub"
    AuthType Basic
    AuthName "USE YOUR WINDOWS ACCOUNT"
    AuthBasicProvider ldap
    AuthUserFile /dev/null
    require valid-user
</Location>

Я также попробовал другие варианты шифрования, помимо CA_DER, просто чтобы быть уверенным, но безуспешно.

Наконец, мне также понадобилось это с Apache tomcat. Для tomcat я использовал tomcat JRE и запустил строку вроде этой:

keytool -import -trustcacerts -keystore cacerts -storepass changeit -noprompt -alias mycert -file Trusted_Root_Certificate.cer

После выполнения вышеуказанной строки ldaps работал отлично через tomcat. Это дает мне знать, что мой сертификат в порядке.

Обновление: оба модуля ldap включены, поскольку использование ldap вместо ldaps работает нормально.

При запуске git clone возвращается следующая ошибка:

C:\Temp>git clone http://eqb9718@localhost/git/Liferay.git
Cloning into Liferay...
Password:
error: The requested URL returned error: 500 while accessing http://eqb9718@loca
lhost/git/Liferay.git/info/refs
fatal: HTTP request failed

В access.log есть следующее:

127.0.0.1 - eqb9718 [23/Nov/2011:18:25:12 -0600] "GET /git/Liferay.git/info/refs service=git-upload-pack HTTP/1.1" 500 535
127.0.0.1 - eqb9718 [23/Nov/2011:18:25:33 -0600] "GET /git/Liferay.git/info/refs HTTP/1.1" 500 535

apache_error.log ничего не содержит. Есть ли более подробное логирование, которое я могу включить или провести более качественные тесты?

Обновление 2: Я могу запустить wireshark на сервере Apache и ясно вижу исходящее соединение, но я не могу понять ничего другого. Я не гуру wireshark, просто выглядит как жаргон.

Кроме того, я использовал браузер ldap, чтобы убедиться, что ldaps отлично работает на этой машине.

Обновление 3: Я включил ведение журнала Apache в режим отладки, и вот какая ошибка возвращается:

[3016] auth_ldap authenticate: user eqb9718 authentication failed; URI /git/Liferay.git/info/refs [LDAP: ldap_simple_bind_s() failed][Server Down]

Теперь имейте в виду, что на этой же машине Server 2008 я могу использовать LDAP Browser для подключения через ldaps к порту 3269, и ничего не "падает". О чем говорит нам эта ошибка?

Обновление 4: Вот результаты запуска openssl s_client -connect gc-hca.corpad.net: 3269 -showcerts:http://pastebin.com/2yEGN4C1

Я также пробовал команду openssl, идущую напрямую к контроллеру домена на порту 636, которая работает, и я пробовал ее в моем httpd.conf, который выдает ту же ошибку. Я не знаю, важно ли отметить, что когда я иду напрямую к контроллеру (389 или 636), я должен добавить контейнер к URL, например ou=group,dc=hca и т. д. Это делает использование GC обязательным. Должно быть, это ошибка в mod_ldap, так как я нашел это решение во многих других постах.

Обновление 5: Я запустил Apache вручную, а не через службу, и вот отладочная информация ldap, которая выводится:

C:\wamp\bin\apache\Apache2.2.17\bin>httpd
[Thu Nov 24 19:19:08 2011] [debug] util_ldap.c(1769): LDAP: SSL verify server ce
rtificate - FALSE
[Thu Nov 24 19:19:08 2011] [debug] mod_authnz_ldap.c(1010): [3144] auth_ldap url
parse: `ldaps://gc-hca.corpad.net:3269/dc=hca,dc=corpad,dc=net?sAMAccountName?s  
ub?(objectClass=*)', Host: gc-hca.corpad.net:3269, Port: 3269, DN: dc=hca,dc=cor
pad,dc=net, attrib: sAMAccountName, scope: subtree, filter: (objectClass=*), con
nection mode: using SSL

решение1

Вы LDAPVerifyServerCert Offделаете доверенную корневую конфигурацию инертной, поэтому проблема доверия не возникает.

Действительно ли в OU=Service Accounts?

А у вас включено mod_ldapи mod_authnz_ldap?

Если ни одна из этих проблем не является причиной, можете ли вы проверить журналы ошибок на предмет чего-либо полезного?

Связанный контент