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). В основной файл конфигурации
как минимум должны быть добавлены следущие строки:
Для безопасной (с использованием TLS) репликации данных на другой
сервер предпочтительно использовать механизм StartTLS, без
использования дополнительного ldaps-порта (636). Всё, что нужно
поправить в этом случае в конфигурационном файле /etc/slapd.conf -
добавить строку starttls=yes в настройку необходимой реплики
(replica). Например:
Параметр 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 порт открыт:
Теперь остается только протестировать безопасное соединение из
почтовой программы (галочка "secure connection (SSL)", порт 636).
Thunderbird и Evolution прекрасно срабатывают сразу же. С Outlook'ом
придется добавлять сертификат LDAP-сервера (или CA'я, который выдал
данный сертификат) в Windows-хранилище сертификатов, иначе он будет
отказываться работать, говоря при этом многозначительное "The
specified directory service could not be reached".
1179 Прочтений • [SSL соединение при использовании LDAP-сервиса (ssl ldap crypt)] [08.05.2012] [Комментариев: 0]