SSL соединение при использовании LDAP-сервиса
Published on Апрель 23, 2009 by Support · Комментариев нет
StartTLS — бе
Ex Wants You Back Dream
зопасный LDAP
TLS 1.0 (Transport Layer Security) — это протокол безопасной передачи
данных, основанный на SSL 3.0 (Secure Socket Layer), отличается от
него незначительно, поэтому термины SSL и TLS можно использовать как
синонимы.
StartTLS — это механизм установления безопасного соединения на основе
TLS-протокола. Данный механизм использует уже существующее соединение
— для LDAP-соединения это 389-й порт (ldap://). Иногда его называют
TLS upgrade по той же самой причине — испольузется уже установленное
TCP-соединение.
LDAPS (ldaps://) — это тоже безопасное соединение, но оно инициируется
на альтернативном порту (636).
После того как инициализация безопасного соединения прошла успешна,
разницы между StartTLS и LDAPS нет.
Для того, чтобы LDAP-сервер умел формировать безопасное соединение,
необходимо иметь SSL-сертификат для используемого сервера, подписанный
Центром Сертификации (CA), сертификат которого в свою очередь
находится в root-списке (ca-bundle.crt). В основной файл конфигурации
как минимум должны быть добавлены следущие строки:
TLSCertificateFile /etc/ssl/public/server.crt # сертификат ldap-сервера
TLSCertificateKeyFile /etc/ssl/private/server.key # ключ ldap-сервера
TLSCACertificateFile /etc/ssl/public/ca-bundle.crt # root-список
После перезапуска ldap-сервиса, StartTLS механизм можно проверить с
помощью команды:
# ldapsearch -x -b "c=ru" -h slave_ldap.example.com -D "cn=admin,c=ru" -w password -d 1 -ZZ
...
TLS trace: SSL_connect:before/connect initialization
TLS trace: SSL_connect:SSLv2/v3 write client hello A
TLS trace: SSL_connect:SSLv3 read server hello A
TLS certificate verification: depth: 3, err: 0, subject: /O=EuroPKI/CN=EuroPKI
Root Certification Authority, issuer: /O=EuroPKI/CN=EuroPKI Root CertificationAuthority
TLS certificate verification: depth: 2, err: 0, subject: /C=LT/O=EuroPKI/CN=Eur
oPKI Lithuanian Certification Authority, issuer: /O=EuroPKI/CN=EuroPKI Root Certification Authority
TLS certificate verification: depth: 1, err: 0, subject: /C=LT/O=Skaitmeninio S
ertifikavimo Centras/CN=SSC Class 2 CA/serialNumber=3, issuer: /C=LT/O=EuroPKI/
CN=EuroPKI Lithuanian Certification Authority
TLS certificate verification: depth: 0, err: 0, subject: /C=LT/O=UAB Skaitmenin
io sertifikavimo centras/OU=Duomen\xC5\xB3 centras/CN=slave_ldap.example.com/se
rialNumber=33, issuer: /C=LT/O=Skaitmeninio Sertifikavimo Centras/CN=SSC Class
2 CA/serialNumber=3
TLS trace: SSL_connect:SSLv3 read server certificate A
TLS trace: SSL_connect:SSLv3 read server done A
TLS trace: SSL_connect:SSLv3 write client key exchange A
TLS trace: SSL_connect:SSLv3 write change cipher spec A
TLS trace: SSL_connect:SSLv3 write finished A
TLS trace: SSL_connect:SSLv3 flush data
TLS trace: SSL_connect:SSLv3 read finished A
...
Для безопасной (с использованием TLS) репликации данных на другой
сервер предпочтительно использовать механизм StartTLS, без
Ex Wants You Back Dream
использования дополнительного ldaps-порта (636). Всё, что нужно
поправить в этом случае в конфигурационном файле /etc/slapd.conf —
добавить строку starttls=yes в настройку необходимой реплики
(replica). Например:
...
replica uri=ldap://slave_ldap.example.com
starttls=critical
binddn="cn=admin,c=lt"
bindmethod=simple
credentials=password
...
Параметр starttls может принимать значение «yes», в этом случае, если
в момент инициализации TLS-соединения возникли ошибки, соединение
будет установлено без использования TLS. Рекомендуется — critical.
Ссылки:
1. OpenLDAP Faq-O-Matic: How do I use TLS/SSL?
2. RFC2830 — Lightweight Directory Access Protocol (v3): Extension for Transport Layer Security
3. RFC4513 — Lightweight Directory Access Protocol (LDAP):
Authentication Methods and Security Mechanisms
4. SLAPD.CONF(5)
Часть 2. SSL соединение при использовании LDAP-сервиса
Данная заметка вышла как дополнение к постам StartTLS — безопасный
LDAP и cvs->ldif.
При использовании общей для всех сотрудников LDAP-адресной книги за
пределами офиса, условия использования безопасного LDAP-соединения
становятся обязательными. Но существующие на данный момент почтовые
клиенты не умеют использовать функцию StartTLS, вместо этого они
требуют отдельного SSL-соединения на отдельном порту (для ldaps это
порт 636).
В этом случае в дополнение к уже определенным в конфигурационном файле
опциям TLSCertificateFile, TLSCertificateKeyFile,
TLSCACertificateFile, в запускном скрипте необходимо открыть
дополнительный безопасный порт — ldaps. В Debian это делается просто —
в начало скрипта /etc/init.d/slapd необходимо добавить строку:
SLAPD_SERVICES="ldap:/// ldaps:///"
После перезапуска сервиса, убедиться, что ldaps порт открыт:
# /etc/init.d/slapd restart
Stopping OpenLDAP: slapd.
Starting OpenLDAP: slapd.
# netstat -an | grep 636
tcp 0 0 0.0.0.0:636 0.0.0.0:* LISTEN
tcp6 0 0 :::636 :::* LISTEN
Теперь остается только протестировать безопасное соединение из
почтовой программы (галочка «secure connection (SSL)», порт 636).
Thunderbird и Evolution прекрасно срабатывают сразу же. С Outlook'ом
придется добавлять сертификат LDAP-сервера (или CA'я, который выдал
данный сертификат) в Windows-хранилище сертификатов, иначе он будет
отказываться работать, говоря при этом многозначительное «The
specified directory service could not be reached».
zp8497586rq
Смотрите также:
Exchange 2007
Если вы хотите прочитать предыдущие части этой серии статей, перейдите по ссылкам:
Проведение мониторинга Exchange 2007 с помощью диспетчера System ...
[+]
Введение
В этой статье из нескольких частей я хочу показать вам процесс, который недавно использовал для перехода с существующей среды Exchange 2003 ...
[+]
Если вы пропустили первую часть этой серии, пожалуйста, прочтите ее по ссылке Использование инструмента Exchange Server Remote Connectivity Analyzer Tool (Часть ...
[+]
Если вы пропустили предыдущую часть этой серии статей, перейдите по ссылке Мониторинг Exchange 2007 с помощью диспетчера System Center Operations ...
[+]
Если вы пропустили предыдущие части этой серии статей, перейдите по ссылкам:
Подробное рассмотрение подготовки Active Directory для Exchange 2007 (часть 1)
...
[+]
If you missed the previous parts in this article series please read:
Exchange 2007 Install and Configuration from the command line (Part ...
[+]
Инструмент ExRCA
Текущий выпуск инструмента предоставляется только в целях тестирования и оснащен 5 опциями:
Тест подключения Outlook 2007 Autodiscover
Тест подключения Outlook 2003 RPC ...
[+]
Если вы хотите прочитать предыдущие части этой серии статей, перейдите по ссылкам:
Развертывание сервера Exchange 2007 Edge Transport (часть 1)
Развертывание ...
[+]
Если вы пропустили первую статью данного цикла, пожалуйста, перейдите по ссылке: Exchange 2007 Install and Configuration from the command line (Part ...
[+]
Если вы пропустили предыдущую часть этой серии статей, перейдите по ссылке Использование интегрированных сценариев Using Exchange Server 2007 – часть ...
[+]