`

СПЕЦИАЛЬНЫЕ
ПАРТНЕРЫ
ПРОЕКТА

Архив номеров

Как изменилось финансирование ИТ-направления в вашей организации?

Best CIO

Определение наиболее профессиональных ИТ-управленцев, лидеров и экспертов в своих отраслях

Человек года

Кто внес наибольший вклад в развитие украинского ИТ-рынка.

Продукт года

Награды «Продукт года» еженедельника «Компьютерное обозрение» за наиболее выдающиеся ИТ-товары

 

LDAP – универсальные каталоги на службе компаний

Статья опубликована в №15 (726) от 27 апреля

+55
голосов

Современный бизнес зависит от компьютерных систем. Приложения обмениваются данными посредством локальных или глобальных сетей, создавая разрозненные «островки» информации в виде БД, каждая из которых имеет свои особенности реализации и использования. Для дальнейшего эффективного развития сетевой инфраструктуры компании весь этот массив данных необходимо интегрировать в единый информационный комплекс. Вот тут на сцену и выходят службы каталогов...

LDAP – универсальные каталоги на службе компаний
Пример древовидной записи каталога

Учетные записи пользователей, параметры аутентификации, адресные книги, сведения о сетевых сервисах и службах предприятия, списки сетевых принтеров – все это и многое другое с ростом компьютерной сети компании неизбежно группируется в специализированные служебные или пользовательские хранилища данных. Все вроде бы вполне логично и эффективно. Но время идет, компания расширяется, а вместе с ней растет и количество этих специализированных баз. И рано или поздно наступает момент, когда такой подход к организации хранения служебной информации становится неэффективным, затратным, усложняет дальнейшее развитие всего предприятия. Как же быть? Как связать воедино эти разрозненные «островки» информации, удешевить процесс их сопровождения и администрирования, упростить пользователям работу с данными компании? Выход состоит во внедрении единого «каталога» предприятия, некоего глобального хранилища информации, которое, в отличие от, скажем, СУБД, будет обладать рядом ключевых особенностей:

  • единым подходом к хранению различных данных и высокой скоростью доступа к ним;
  • простыми и стандартизированными протоколами обмена – для интеграции с разнообразным ПО;
  • легко масштабируемым, расширяемым и отказоустойчивым хранилищем;
  • эффективными и малозатратными процедурами администрирования.

Как, в общем, понятно из названия, службы каталогов предназначены для структурирования и хранения определенного класса информации (как правило, служебной: сетевые объекты, ресурсы и т. п.) согласно указанным требованиям и для предоставления к ней доступа пользователям или программам. Их допустимо считать разновидностью СУБД, но предельно упрощенной, поскольку они не поддерживают (ввиду отсутствия необходимости) ряда развитых механизмов, например транзакций или языка SQL. При этом службы каталогов спроектированы таким образом, что обеспечивают приоритет операций чтения перед записью (еще одно существенное отличие от СУБД) – что и понятно, так как данные в каталогах достаточно статичны, они редко изменяются, но постоянно запрашиваются.

Современные службы каталогов ведут свое начало от серии стандартов Х.500, которые описывают принципы хранения данных и протокол DAP (Directory Access Protocol) доступа к ним. Но ввиду значительной сложности реализации и ограничений, накладываемых, в частности, на среду передачи данных, был предложен более «легковесный» (lightweight) и быстрый вариант протокола DAP – LDAP. Первоначально LDAP-службы являлись, по сути, прокси-серверами, обеспечивающими подключение клиентов к полновесным каталогам X.500 с помощью протокола LDAP, но со временем они сформировали самостоятельный класс решений. Поэтому в рамках данной статьи под термином LDAP мы будем понимать саму службу каталогов.

Немного теории

Итак, LDAP – это, по сути, «клей», с помощью которого можно «склеить» разрозненную служебную информацию и данные пользователей, будь то список сетевых принтеров или телефонный справочник компании, и организовать к ней доступ самым разным приложениям. При этом протокол LDAP универсален и прост, легко реализуем, стандартизирован и поддерживается во множестве программных продуктов, обеспечивает единообразный доступ к различной информации. За счет этого приложения могут интегрироваться в общий программный комплекс, а сотрудники компании – без лишнего труда использовать информационные ресурсы, повышая эффективность своей работы.

LDAP-сервер реализует клиент-серверную модель и хранит информацию в виде иерархического дерева – DIT (Directory Information Tree). Реальные данные состоят из записей – набора пар ключ-значение, объединенных уникальным именем – DN (Distinguished Name). Полное DN формируется путем конкатенации текущего имени и всех связанных с ним нижележащих RDN (Relative Distinguished Name).

Например, RDN изображенной на схеме записи «администратор» будет выглядеть как «uid=администратор», а полное DN – «uid=администратор,ou=Отдел IT,ou=Персонал,dc=domain,dc=org». Подобная иерархическая структура обеспечивает простой доступ к значениям, быстрый поиск по каталогу и единый подход к хранению всех данных внутри него.

Типы записей и значения, которые они могут принимать, описаны в схеме каталога. Существуют готовые к использованию схемы, но практически все современные реализации LDAP позволяют расширять их или даже создавать собственные.

В настоящий момент стандартом является LDAP v3, его подробное описание приведено в RFC 2251. Среди особенностей этой версии – возможность подключения v2-клиентов к v3-серверам, обеспечение безопасности за счет механизмов SASL, SSL/TLS, полное внутреннее Unicode-представление строк, перенаправление клиентских запросов на другой сервер, если данный не содержит необходимой информации.

Существует целый ряд реализаций служб каталогов, как проприетарных, так и свободно распространяемых, кросс-платформенных или же созданных под конкретный класс операционных систем. Проблема выбора наиболее подходящей может возникнуть в первую очередь в гетерогенных средах, которые встречаются все чаще. Поэтому стоит познакомиться хотя бы с самыми известными примерами.

OpenLDAP

Начнем с де-факто стандарта среди свободно распространяемых реализаций LDAP. OpenLDAP представляет собой «чистую», если можно так сказать, инкарнацию самого первого полноценного LDAP-сервера, разработанного в стенах Мичиганского университета в далеком 1995 г. Сегодня OpenLDAP является кросс-платформенным продуктом, полностью поддерживающим стандарт LDAP v3, – доступны версии для Microsoft Windows (2000 и выше), *BSD, GNU/Linux, *nix, Mac OS X. Функционально он состоит из трех частей: демона (службы) slapd; набора библиотек, реализующих протокол LDAP; вспомогательного клиентского ПО – ldapsearch, ldapdelete, ldappasswd и др.

Сервер многопотоковый, поддерживает схему репликации данных «один мастер, несколько подчиненных» или режим «мультимастер» и может обслуживать несколько каталогов одновременно. В качестве СУБД стандартно предлагаются BDB и HDB, впрочем, возможно использование и других, например *SQL.

Администрирование осуществляется посредством командной строки, с помощью веб-интерфейсов – phpLDAPadmin, LDAP Account Manager, GOsa и целого ряда им подобных. Распространяется продукт под собственной лицензией – OpenLDAP Public License.

Из особенностей следует отметить:

  • довольно высокую сложность первоначальной настройки сервера;
  • кросс-платформенность;
  • хорошую производительность, большое количество настроек;
  • возможность использования (совместно с Samba) для полноценной замены файловых серверов под управлением Windows.

389 Directory Server

LDAP – универсальные каталоги на службе компаний
Административная консоль 389 Directory Server написана на Java, за счет чего может работать на разных платформах

Служба каталогов, ранее известная под названием Fedora Directory Server, – это, по сути, ответвление оригинального проекта slapd, которое после череды смен владельцев (в их числе была и Netscape) в 2005 г. досталось Red Hat, при этом большая часть его кода опубликована под лицензией GNU GPL. В 2009 г. проект приобрел нынешнее имя, дабы не вызывать ассоциаций с Fedora. В настоящее время является основой проекта FreeIPA по созданию решения для централизованного управления информацией и политиками, осуществления аудита. Доступна и коммерческая версия – Red Hat Directory Server, обеспечиваемая платной технической поддержкой.

389 DS полностью поддерживает LDAP v3, а в качестве СУБД использует BDB. В список платформ, кроме Linux, входят Solaris, HP-UX и Windows. Сервер имеет систему подключаемых модулей, с помощью которых можно расширить его функциональность. Для администрирования используется веб-интерфейс или Fedora Management Console – административная консоль, написанная на Java.

Интересной особенностью 389 DS является возможность синхронизации учетных записей пользователей и групп с Active Directory 2003 и 2008 (как 32-, так и 64-битовых), а также с контроллерами доменов NT4.

В общем, весь проект можно охарактеризовать как «OpenLDAP + тестовые разработки компании Red Hat».

Apache Directory Project

Служба каталогов от Apache Software Foundation. Состоит из двух отдельных проектов: полностью написанного на Java Apache Directory Server (ApacheDS) и Apache Directory Studio – набора вспомогательного ПО (LDAP-, LDIF-браузеры, редакторы схем и др.).

Изначально за основу разработчики взяли код OpenLDAP, в который добавлялись необходимые, по их мнению, функции. Однако в дальнейшем было решено переписать все наново с использованием Java. Таким образом, в октябре 2002 г. появилась первая версия сервера под именем LDAPd, который год спустя был лицензирован под Apache License.

Одной из целей проекта декларируется, ни много ни мало, модернизация существующего протокола LDAP и самих принципов работы служб каталогов сообразно реалиям XXI века. Разработчики полагают, что добавление в реализацию LDAP таких механизмов, как триггеры, отложенные процедуры и представления (views), сделают ее более универсальной и пригодной для решения широкого класса задач.

Архитектура сервера позволяет подключать дополнительные модули, а также допускает непосредственное управление сервером из других Java-приложений, выполняющихся в пределах той же виртуальной машины (например, Apache Geronimo).

Apache DS полностью совместим со стандартом LDAP v3, в качестве СУБД используется JDBM. Безопасность среды обеспечивается механизмом SASL GSSAPI, т. е. Kerberos v5.

Выделим еще раз ключевые особенности проекта:

  • функциональное разделение на две независимые части;
  • модульная архитектура сервера;
  • широкая поддержка платформ за счет использования Java;
  • экспериментальные расширения, позволяющие добавлять интересные возможности.

Novell eDirectory

История данного продукта, по сути, начинается в 1993 г., когда в сетевой операционной системе NetWare 4 появилась служба каталогов NDS – Novell Directory Service, пришедшая на смену прежней службе аутентификации Bindery. А с версии NDS 8, выпущенной для NetWare 5 в 1998 г., продукт стал называться eDirectory.

LDAP – универсальные каталоги на службе компаний
В силу распространенности AD для него имеется много качественных инструментов администрирования, хотя и стандартные весьма неплохи

Сегодня eDirectory представляет собой кросс-платформенный продукт – заявлена поддержка ОС Windows (начиная с Server 2003 SP2 для версии 32 бит и Server 2008 для 64 бит), GNU/Linux, AIX, Solaris, а также NetWare, развитие которой, как известно, прекращено.

eDirectory полностью соответствует стандарту LDAP v3, безопасность обеспечивается протоколом Kerberos, причем не модифицированным, как, например, в случае Active Directory, благодаря чему службы каталогов можно интегрировать с общей инфраструктурой Kerberos (если таковая уже имеется на предприятии). Сервер позволяет обслуживать несколько каталогов одновременно.

Интересны особенности репликации данных между серверами каталогов. Во-первых, гарантируется их синхронизация независимо от типа ОС, на которой они исполняются. Во-вторых, репликация производится путем передачи лишь измененных данных, что значительно снижает нагрузку на сеть предприятия и является немаловажным фактором при использовании коммутируемых каналов. Кроме того, сеансы репликации можно шифровать как для каталога в целом, так и для отдельных его разделов.

Администрирование осуществляется посредством веб-интерфейса iManager, причем рекомендуемый браузер для этого – Firefox, или из командной строки с помощью утилиты eMBox Client. Поддерживается делегирование административных задач.

eDirectory можно использовать совершенно свободно, оплаты (из расчета $2 за рабочую станцию) требует лишь техническая поддержка, кстати, бессрочная.

Итак, повторим основные достоинства продукта:

  • кросс-платформенность;
  • бесплатность для промышленного применения (хотя eDirectory и является проприетарной разработкой);
  • высокая скорость работы, надежность;
  • усовершенствованный механизм синхронизации данных каталога.

Active Directory

В отличие от конкурентов, службу каталогов от Microsoft нельзя рассматривать исключительно как реализацию LDAP – это комплексное решение для централизованного управления инфраструктурой предприятия, построенной на платформе Windows. Внедрение Active Directory (AD) упрощает процессы развертывания, сопровождения, администрирования как серверов, так и сети в целом. В частности, групповые политики позволяют выполнить единообразную настройку пользовательской среды клиентских ПК и автоматизировать их обслуживание (хотя для некоторых процедур требуется дополнительное ПО, бесплатное или коммерческое).

Данные AD хранятся на одном или нескольких равнозначных контроллерах домена. Изменения, внесенные на одном, реплицируются на остальные, причем передаваемая информация шифруется и подписывается сертификатом безопасности, что гарантирует ее подлинность. Безопасность всей среды обеспечивается модифицированным протоколом Kerberos v5, аутентификацией по открытому ключу, смарт-картам, сертификатам X.509 v3, а также SSL.

AD является составной частью Windows Server 2000/2003/ 2008 и соответственно лицензируется, хотя сторонним разработчикам бесплатно предлагается упрощенная реализация службы каталогов AD LDS (ранее ADAM), которая может функционировать и на клиентских Windows. При этом в домен AD могут подключаться компьютеры под управлением Windows 9x (потребуется установка утилиты DSCLIENT) и даже *nix-систем (с использованием пакета Samba).

LDAP – универсальные каталоги на службе компаний
Даже веб-интерфейс Tivoli Directory Server подчеркивает серьезный корпоративный статус продукта

Администрирование каталога осуществляется с помощью стандартных оснасток для MMC, утилит командной строки (Dsadd, LDIFDE, Ntdsutil и др.), скриптов, а также сторонних приложений, например Active Administrator и Softerra Adaxes.

Итак, подытожим отличительные особенности Active Directory:

  • использование групповых политик и вспомогательных (часто бесплатных) инструментов, значительно упрощающее общее администрирование сети предприятия;
  • относительная легкость развертывания и сопровождения сетей даже со сложной и разветвленной топологией;
  • изначальная ориентация только на платформу Windows, что вызывает определенные проблемы с эксплуатацией в гетерогенных сетях.

IBM Tivoli Directory Server

Корпоративное решение на базе LDAP от Голубого Гиганта является частью пакета IBM Tivoli Identity & Access Management. Первоначально проект именовался IBM SecureWay Directory, но с версии 5.2 он был включен в состав семейства Tivoli.

ITDS совместим с LDAP v3, поддерживает все современные платформы: Windows 2003 и выше, GNU/Linux, *BSD, коммерческие клоны UNIX. В качестве СУБД используется IBM DB2 9, администрирование сервера осуществляется посредством функционального веб-интерфейса.

Подобно 389 DS, ITDS умеет выполнять синхронизацию данных с каталогами AD, причем двустороннюю. Безопасность обеспечивается рядом механизмов, среди которых сертификаты безопасности, SASL, Kerberos.

В отличие от, скажем, eDirectory, использование ITDS требует приобретения лицензии, стоимость которой рассчитывается на основании так называемых процессорных единиц (PVU, Processor Value Unit), причем разные типы процессоров, в зависимости от вычислительной мощи, количества ядер и прочих характеристик, имеют разные значения PVU.

Выводы

Что же дает применение LDAP-каталога на предприятии? Прежде всего – унификацию хранения данных и доступа к ним для самых разнообразных приложений, поддерживающих этот промышленный стандарт. В конечном итоге удается значительно упростить и удешевить задачи сетевого администрирования, что особенно заметно при построении распределенных корпоративных сетей. Конечным пользователям внедрение каталога приносит удобство работы с сетевыми сервисами и объектами локальной сети, в частности, каталог может представлять собой единую точку входа для всех внутренних служб предприятия, что упрощает как саму аутентификацию, так и процедуру разграничения полномочий. А наличие разных реализаций LDAP-серверов, коммерческих или свободно распространяемых, позволяет выбрать наиболее подходящую из них, точно отвечающую поставленным задачам.

+55
голосов

Напечатать Отправить другу

Читайте также

Хорошая обзорная статья

Спасибо за статью.
Необычно было узнать:
"eDirectory можно использовать совершенно свободно, оплаты (из расчета $2 за рабочую станцию) требует лишь техническая поддержка, кстати, бессрочная."

Можете ли привести цитату/ссылку на данную информацию от novell?

Ну что ж, раз автору не интересно ответить на мой вопрос, то я сам отвечу, цитатой с сайта производителя:
"Novell eDirectory 8.8, for all supported platforms, is available for free for evaluation in nonproduction environments. If you want to run Novell eDirectory 8.8 in a production environment, see How to Buy Novell eDirectory"

http://download.novell.com/Download?buildid=Um8b-a_q0-g~

То есть ни о каком применении в рабочей среде, речь не идет. К сожалению Novell eDirectory - платный продукт.

да, Иван, наша ошибка :(
спасибо, что обратили внимание.

Да, моя ошибка. Где-то по документации находил именно так, как написал, а оказалось не так. Спасибо.
Там и по тексту неточность: на рисунке должно быть не "dc=ournet" а "dc=domain", или же переделать по тексту строку «uid=администратор,ou=Отдел IT,ou=Персонал,dc=domain,dc=org» заменив domain на ournet. Мелочь, но - тоже ошибка.
Первый блин - комом...

 
 
IDC
Реклама

  •  Home  •  Рынок  •  ИТ-директор  •  CloudComputing  •  Hard  •  Soft  •  Сети  •  Безопасность  •  Наука  •  IoT