Рейтинг
+2.26

LDAP

4 читателя, 76 топиков

Принудительный LDIF line wrapping отменяется!

  • LDAP
Не прошло и пяти лет, как в ldapsearch наконец добавили опцию, позволяющую выводить LDIF без переносов строк. Напомню, что переносы эти ставились в соответствии со стандартом MIME, который сам по себе вообще весьма сомнительное отношение имеет к LDIF, но тем не менее. Особо хотелось бы отметить, что в реализациях ldapsearch родом из проекта iPlanet (детища консорциума Sun Microsystems и Netscape) подобная опция была с самого начала, а в OpenLDAP'овском клиенте её не добавляли исключительно по принципиальным соображениям строгого следования букве и духу стандартов, даже если это ограничивает свободу выбора или попросту противоречит здравому смыслу. Но в 2.4.24 они всё-таки сдались, так что скомпилировав его вы получите чудесный новенький ldapsearch, умеющий знаете что?
Вот:
ldapsearch -LLLZZZ -b 'dc=company,dc=com' -s one -o ldif-wrap=no

LDAP-конференция

  • LDAP
Собственно ldap@conference.jabber.ru
Защищена капчей, ботов нет
Буду рад ответить на все ваши вопросы
Ещё больше буду рад услышать ваши пожелания и предложения :)

Беспарольная авторизация на сервере OpenLDAP с использованием SASL

  • LDAP
Возникла как-то у вашего покорного слуги насущная потребность ходить на LDAP-сервер секьюрно (то есть по шифрованному соединению, а не со 100% гарантией безопасности, как можно было бы подумать), но без ввода пароля. Идея хорошая, но почему-то традиционно слова «секьюрно» и «без пароля» ассоциируются с такими громоздкими понятиями, как Kerberos, GSSAPI, SSO, Настройка всего этого — занятие не только трудоёмкое, но и не всегда оправданное: один человек это настроит, другой же, который рано или поздно придёт работать на его место, довольно быстро сойдёт с ума, а это нехорошо, потому что с людьми нужно быть… гуманнее как минимум :)

Читать дальше →

Вышла GOsa 2.7

  • LDAP
GOsa — это централизованная панель управления ИТ-инфраструктурой, если в инфраструктуре той «становым хребтом», обеспечивающих собственно интеграцию разрозненных программных компонент, является множество объектов, описанных в каталоге(ах) LDAP.

Читать дальше →

Типичные примеры использования entryDN в LDAP-фильтрах

  • LDAP
Очень часто нужно найти все объекты, начиная с некоей baseDN, но сам baseDN вам не нужен. Для этого отфильтруйте соотв. объект, добавив:
(!(entryDN=dc=example,dc=com))
Аналогично, если вам нужно найти объекты, за исключением тех, что находятся в определённом поддереве, добавьте фильтр вида
(!(entryDN:dnSubtreeMatch:=dc=example,dc=com))
— кстати, именно такой пример упомянут в man 8 slapcat.

Если же вам нужно получить при поиске только объекты из определённых поддеревьев, либо, напротив, исключить из поиска все такие объекты, используйте фильтр из RFC 5020:
(entryDN:componentFilterMatch:=or:{
          item:{ component "3", rule rdnMatch, value "o=Roga" },
          item:{ component "3", rule rdnMatch, value "o=Kopyta" } })

— в результаты поиска будут включены только те объекты, у которых третьим компонентов DN (компонент называется rDN) является либо «o=Roga», либо «o=Kopyta».
Подробнее: если это разрешено списками контроля доступа, то применив данный фильтр. вы найдёте контакты из «ou=contacts,o=Kopyta,l=Stargorod,c=ru» и учётные записи бухгалтеров из «cn=buh,cn=Groups,o=Roga,l=Odessa,c=ua», но, к счастью, не увидите аудиторов из «cn=Auditors,cn=Groups,o=F.A.S.,l=Moscow,c=ru».

Архитекторы LDAP: Курт Зейленга

  • LDAP
Курт Зейленга — Исполнительный директор OpenLDAP-фонда и консультант Проекта OpenLDAP, он основал обе организации летом 1998-го года и занимал должность Главного архитектора Проекта OpenLDAP с момента его основания вплоть до 2007-го года.
В настоящее время Курт на условиях полной занятости работает Инженером-разработчиком в компании Isode Limited, занимающейся проектированием интернет-технологий и стандартов с акцентом в области каталогов, обмена сообщениями и безопасности. Интересы Курта затрагивают не только разработку каталогов, но и «менее очевидные» вещи — такие как интернет-службы обеспечения безопасности, в особенности используемые для защиты протоколов прикладного уровня [модели OSI].
Курт — активный участник Internet Engineering Task Force (IETF). Он состоит в Директорате LDAP, Директорате по Безопасности, и Директорате Прикладной области. Авторство многих документов Internet-Drafts (черновых вариантов интернет-стандартов) непосрественно принадлежит Зейленге, многие [другие] он редактировал. Некоторое количество черновых вариантов стандартов, написанных им, в итоге приобрели статус стандартов RFC*. Курт участвует в рабочих группах LDAP Revision (LDAPbis), Simple Authentication and Security Layer (SASL), также vCard и CardDav.

Также Зейленга занят в работе Фонда Стандартов XMPP и является автором нескольких спецификаций Протокола Расширений XMPP (XEP). Трудовая деятельность Курта в Isode Limited (и не только) тесно связана с этой областью.

* несмотря на присутствие слова few в англоязычном оригинале, количество это весьма внушительно

Англоязычный оригинал на сайте OpenLDAP Project

ZImbra: нетривиальная маршрутизация почты - часть 2

  • LDAP
Первая часть тут

Положим, поставила перед вами нелёгкая судьбина следующую задачу: добавить в Zimbr'у alias, он же псевдоним. Но псевдоним тот не простой, а виртуальный, указывающий не на пользователя в локальном домене, обслуживаемом Zimbra, а на некий «внешний» почтовый адрес.
Как законопослушный гражданин, вы наверняка первым делом загрузите интерфейс администрирования Zimbra и в меню Создать выберете «Псевдоним». После совершения указанной манипуляции пред ваши очи предстанет такое вот окно:

Читать дальше →

ZImbra: нетривиальная маршрутизация почты - часть 1

  • LDAP
Zimbra — замечательный Collaboration Suite, но с точки зрения тонкой настройки собственно почтового сервиса MTA (в качестве которого, как мы все знаем, используется Postfix) её веб-интерфейс сильно хромает, а местами так и просто обескураживает.
Например, есть у меня Zimbra на внутреннем почтовике, она полностью закрыта от внешнего доступа и всю исходящую корреспонденцию шлёт внешнему серверу-шлюзу, от него же и принимает оную. Плюс настроен Split-Domain (как именно — см. Split Domain: Configuring Zimbra as the Secondary System), потому что пока на внешнем шлюзе есть нехилый кусок нашего корпоративного домена. Ну да это не суть важно, а важно то, что в моём случае Zimbra по дефолту не может отправлять любую почту, кроме адресованной локальным получателям, куда-либо, кроме того самого внешнего шлюза.
И всё было бы хорошо, если бы в дополнение к собственному домену Zimbra, назовём его domain.com, не появился ещё один внутренний домен с именем lists.domain.com, хостящийся буквально по соседству (VLAN/подсетка совпадают, так что не требуется дополнительная маршрутизация). И вот тут дефолтная конфигурация уже перестала меня устраивать: ведь в этот «соседний» домен тоже нужно каким-то образом отправлять почту, но если оставить всё как есть, то получится абсурдная ситуация: сначала Zimbra будет отправлять сообщение в lists.domain.com через интернет-шлюз на почтовый шлюз, а затем последний уже отправит это письмо обратно через интернет-шлюз… почти туда же, откуда оно и ушло. Таким образом, мы получили бы маршрутизацию почты в lists.domain.com аля «путешествие Афанасия Никитина за три моря» и массу потенциального геморроя.

Читать дальше →

[PHP] Поиск по LDAP в браузере

  • LDAP
Еще один скрипт поиска по LDAP с любого компьютера в сети. Скрипт написан на PHP. Не стал прикручивать в выдаче результата красивое оформление, если потребуется, его можно взять из доработанной версии этого же скрипта, который я выкладывал вчера.
А этот скрипт в браузере выглядит примерно так:
Читать дальше →

Поиск по LDAP в браузере с использованием jQuery

  • LDAP
Потребовался мне быстрый поиск по LDAP с любого компьютера в распределенной сети c возможностью выбора нескольких адресатов для отсылки письма. В итоге написал скрипт с использованием jQuery, который позволяет делать выборки из базы без перезагрузки страницы, манипулировать почтовыми адресами для отсылки. Выборку делает php программа, которая возвращает выборку данных в основной html документ. В итоге в браузере выглядит примерно так:
ldap search
Читать дальше →

Индексы not equal и pres

  • LDAP
Индекс pres нужно использовать только для очень редко встречающихся, но часто «искомых» атрибутов
Индекса not equal не существует в природе, но _некоторые_ (сдаётся, мне что двузначные, то есть флаговые например ) атрибуты могут создавать индекс not equal на основании индекса equal. В общем для zimbraIsSystemResource, который таки флаг, я индекс eq добавил, а там хоть трава не сохни.
Вообще полезно бывает в 25-й раз одну и ту же страницу документации читать: склероз побуждает к неожиданным открытиям, в особенности если раньше читал то же самое, но по другому поводу

Ах да, ещё лучше бы держать логи низкоуровневой БД и собственно данные на разных дисках.
Цитирую OL Admin Guide:
Use fast subsystems. Put each database and logs on separate disks configurable via DB_CONFIG:
# Data Directory
set_data_dir /data/db

# Transaction Log settings
set_lg_dir /logs

Эх, где бы эти раздельные диски ещё найти в наш век тотального RAID'а с LVM'ом…

P.P.S. А вообще по моим наблюдениям ту же MySQL нередко используют почти read-only.

Как правильно "скормить" Openfire аккаунты Zimbra

  • LDAP
Интеграция Openfire и Zimbr'ы сводится к стандартной настройке Openfire+LDAP, но есть один момент, характерный именно для Zimbra: это используемый LDAP-фильтр.

Он должен отсеивать ненужное по следующим критериям:
— Берутся только учётки Zimbra, соответственно objectClass=zimbraAccount;
— Учётная запись должны быть активной, соответственно zimbraAccountStatus=active;
— Нужно проверить, не системный ли ресурс данный аккаунт (всякие там спамы, хамы): для этого есть атрибут zimbraIsSystemResource и проверка !(zimbraIsSystemResource=TRUE);
— Нужно определить, кто может пользоваться Jabber'ом, а кто вовсе тестовый Вася Пупкин и ему не положено. Для этого придуман zimbraFeatureIMEnabled и проверка zimbraFeatureIMEnabled=TRUE

Читать дальше →

Ценная статья об интеграции OpenSSO и EJBCA

  • LDAP
Несмотря на то, что Oracle прикрыла разработку Sun'овского единого сервиса аутентификации для веб-приложений — OpenSSO, тем не менее он, как мы все знаем, относительно неплохо поживает под новым именем OpenAM как проект, поддерживаемый компанией ForgeRock. На самом деле сайт у них довольно мутный и никакой активности я там не наблюдаю, кроме выкладывания эпизодического неких «снэпшотов» OpenAM'а, в которых, возможно, меняется в месяц по строчке кода.
Тем не менее, OpenSSO был, есть и будет лучшим, если не единственным пригодным к энтерпрайз-эксплуатации веб-login'ом, так что никуда от него не деться. В связи с этим хотелось бы поделиться ссылкой на превосходную во всех отношениях статью, посвящённую интеграции OpenSSO и также весьма удачного во всех отношениях софта для построения Центров Сертификации под неблагозвучным для русского уха названием EJBCA. Также в статье рассмотрена и LDAP-специфика данного солюшна, что не может не радовать.
В двух словах о чём статья: статья о том, как сделать клиентам единый вход на веб-приложения так, чтобы хватало одного чудесного сертификата, установленного в браузере клиента.
На картинке это выглядит так: