Последние сообщения

Страницы: 1 ... 3 4 [5] 6 7 ... 10
41
Общий раздел / OpenLDAP - Второй фактор
« Последний ответ от earyutin 01 Ноябрь 2022, 00:54:30 »
Всем привет, Коллеги!

Дошли наконец до задачи настройки централизованной авторизации.
Были развернуты freeradius для сетевых устройств и Open LDAP Proxy в связке с Active Directory для порталов.

Возник вопрос: возможно ли выполнять запуск внешних скриптов на Open LDAP, когда есть совпадение пары логина и пароля, до установления привязки?

На freeradius вроде как можно, но пока не вникал. https://networkradius.com/doc/3.0.10/raddb/mods-available/exec.html
Идея в том, чтобы OpenLDAP запускал php скрипт, после получения от AD сообщения о совпадение пары логина и пароля, который в свою очередь отправлял сообщение сотруднику и ждал бы ответ от него.
Предполагаемая схема во вложении.

Нашел обсуждения https://pro-ldap.ru/forum/index.php?topic=1039.msg2149#msg2149 и https://pro-ldap.ru/forum/index.php?topic=433.msg1169#msg1169. Подскажите, возможно ли использовать database shell для реализации моей задачи ?

С php я думаю разберусь. Мне бы понять, можно ли организовать запуск и ожидание выполнение скрипта в средствами OpenLDAP, случае положительного ответа от Active Directory.

Спасибо )!
42
Samba / Re: Samba4 и LDAP, кто к реализовал?
« Последний ответ от egor 17 Июль 2022, 11:29:59 »
Здравствуйте!
Возможно, сейчас что-то поменялось, но когда я последний раз работал с Samba4 (лет 5 назад), они не поддерживали сторонний ldap-сервер для хранения данных своей AD, и в планах такого не было. Только внутренний ldap-сервер. Соответственно, пристроить samba4 "сбоку" не получится.

Подключиться к внутреннему ldap-серверу можно, насколько я помню, там просто 389 порт, поддерживается Kerberos и Simple-Bind аутентификация. Помню, мы так массово меняли пароли пользователям.

Можно расширить схему AD samba4 для хранения данных других приложений. Мы хранили в ldap-сервере samba4 данные для работы isc-dhcp-server. Моя статья по этому поводу: https://pro-ldap.ru/books/samba4/ldap/schema.html

Просто же добавлять записи пользователей и рабочих станций LDAP-запросами идея, на мой взгляд, не очень: нужно очень хорошо разбираться в схеме данных Microsoft AD. Проще подключить какое-то бесплатное средство удалённого управления типа RSAT. Либо, если предпочитаете управлять с помощью скриптов,  использовать samba-tool.

Егор Левинца
43
Samba / Samba4 и LDAP, кто к реализовал?
« Последний ответ от andrek 17 Июль 2022, 03:11:07 »
в сети свой bind и openldap.
как сделать чтобы она (Samba4) было "сбоку"? То есть я по прежнему создаю компы (bind) и юзеров (openldap), но при этом эту инфу samba4 подтягивала.

из доки понятно что в samba4 dns может интегрироваться с внешним dns через forward.
а как получить доступ на внутренний ldap samba4? хотябы для создания пользовательского шаблона.
44
Общий раздел / Не работает поиск в OpenLDAP по binary атрибуту
« Последний ответ от Kom6aT 26 Январь 2022, 19:29:21 »
Добрый день.

У нас есть приложение, которое умеет авторизовывать пользователей по сертификату, который хранится в LDAP.

Я пытаюсь настроить такую авторизацию, используя OpenLDAP.
При попытке авторизации приложение отправляет searchrequest с фильтром userCertificate;binary, указывая в качестве значения собственно сертификат в его бинарном виде.
Но при этом OpenLDAP возвращает 0 results, хотя объект user, у которого этот сертификат записан в атрибут userCertificate, присутствует.
В логе OpenLDAP я вижу ошибку "unknown attributeType userCertificate;binary".

При этом если делать тоже самое, используя не OpenLDAP, а MS AD, то все работает норм - сертификат и пользователь успешно находятся.

Если пробовать сделать запрос используя ldapsearch, а не наше приложение, то результат аналогичный - ничего не находится и ошибка "unknown attributeType userCertificate;binary" в логе.

Если попробовать запрос searchrequest с фильтром userCertificate, то также ничего не находится, а в логе ошибка illegal value for attributeType userCertificate.

Я попробовал также просто создать отдельный binary атрибут:
dn: cn={1}user,cn=schema,cn=config
changetype: modify
add: olcAttributeTypes
olcAttributeTypes: ( 2.5.4.90 NAME 'bin' SYNTAX 1.3.6.1.4.1.1466.115.121.1.40 )

Записал в него простую последовательность символов и также проверил с помощью ldapsearch - результат аналогичный.

В связи с этим вопрос, может кто подскажет.
Как должен выглядеть работающий ldapsearch запрос, чтобы он нашёл этот объект?
Либо может быть проблема в описании атрибута в схеме?


45
Здравствуйте!

Поставил по мануалу сервер OpenLDAP, столкнулся с двумя проблемами:
1. не получается добавить двух сотрудников, которые пользуются одной почтой (ошибка уникальности)
Странно, поскольку без специальных ухищрений уникальность значений атрибутов в разных записях каталога не отслеживается (в пределах одной записи значения одного атрибута всегда уникальны). В OpenLDAP для настройки такого отслеживания используется наложение slapo-unique. Пришлите ссылку на мануал, по которому настраивали, можно будет подсказать что-то более конкретное.

2. не могу понять как добавить атрибут mozillaSecondEmail (Доп. адрес электронной почты в почтовой книге Thunderbird) для создаваемых сотрудников
Чтобы slapd знал о каком-то атрибуте или объектном классе, они должны быть зарегистрированы в его схеме данных. У Mozilla есть описание набора схемы данных для их адресной книги, его нужно подключить в настройках slapd. Если вы настраиваете slapd через файл конфигурации slapd.conf, то для подключения набора схемы применяется директива include, если используете динамическую конфигурацию, то сначала этот набор нужно переконвертировать, а потом добавить в каталог динамической конфигурации, посмотрите здесь.

После регистрации набора схемы, атрибут mozillaSecondEmail можно будет использовать, добавив в запись пользователя вспомогательный объектный класс mozillaAbPersonAlpha (из добавленного набора), либо добавив в запись пользователя универсальный вспомогательный объектный класс extensibleObject.
46
День добрый, коллеги.

Решил сделать корпоративную адресную книгу для Mozilla Thunderbird.
Поставил по мануалу сервер OpenLDAP, столкнулся с двумя проблемами:
1. не получается добавить двух сотрудников, которые пользуются одной почтой (ошибка уникальности)
2. не могу понять как добавить атрибут mozillaSecondEmail (Доп. адрес электронной почты в почтовой книге Thunderbird) для создаваемых сотрудников
Подскажите, что можно из этого решить и если не сложно ткните ссылкой.

Спасибо!
47
Здравствуйте! Уже сто лет не касался сертификатов в каталогах, но с ними всегда проблемы =( . Начиная от банальной кодировки сертификата в файле .cer (PEM/DER), не помню точно, в какой он должен быть при загрузке в каталог, но  файл легко переконвертировать туда-сюда с помощью команды openssl, что-то вроде:
openssl x509 -in cert.pem -out cert.der -outform DER
Реже бывает, что в файле находится не "чистый" сертификат, а обёрнутый в какой-нибудь контейнер. Тогда сертификат перед загрузкой в каталог нужно извлечь из этого контейнера.

Наконец, часто сертификаты, сгенерированные, например, CryptoPro, содержат поля, о которых не знает библиотека openssl (или другая), с которой скомпилирован OpenLDAP. Соответственно, такой сертификат не проходит валидацию на уровне криптобиблиотеки и не загружается =( .

Чтобы не заморачиваться с проверкой синтаксиса сертификатов, производители других каталогов подменяют синтаксис атрибута userCertificate на 1.3.6.1.4.1.1466.115.121.1.40 (Octet String) вместо 1.3.6.1.4.1.1466.115.121.1.8 (X.509 Certificate), обычно никаких проблем при этом не возникает. Во внутреннем каталоге вы можете сделать то же самое.

Егор

48
Добрый день.
У меня аналогичная проблема - не получается записать сертификат в userCertificate на OpenLDAP.

Записываю через ldapmodify.

Если делать так:

dn: cn=07781012064,ou=users,dc=iis,dc=loc
changetype: modify
add: userCertificate
userCertificate:< file:///root/3.cer

то получаю в ответ:

ldap_modify: Undefined attribute type (17)
        additional info: userCertificate: requires ;binary transfer

Если делать так:

dn: cn=07781012064,ou=users,dc=iis,dc=loc
changetype: modify
add: userCertificate
userCertificate;binary:< file:///root/3.cer

то получаю в ответ:

wrong attributeType at line 4, entry "cn=07781012064,ou=users,dc=iis,dc=loc"

Если делать так:

dn: cn=07781012064,ou=users,dc=iis,dc=loc
changetype: modify
add: userCertificate;binary
userCertificate;binary:< file:///root/3.cer

то получаю в ответ:

ldap_modify: Invalid syntax (21)
        additional info: userCertificate;binary: value #0 normalization failed


Подскажите, пожалуйста, в чём может быть причина? Что я делаю не так?
49
Общий раздел / Re: Вопросы про настройку БД meta
« Последний ответ от VlgSlv 05 Февраль 2021, 13:06:00 »
Спасибо огромное!
Ваш совет очень помог!
50
Общий раздел / Re: Вопросы про настройку БД meta
« Последний ответ от egor 04 Февраль 2021, 19:21:35 »
Здравствуйте!

Суть механизма meta в "склейке" двух и более разных каталогов (то есть каталогов с разными суффиксами) под одним общим корнем. То есть мы объединяем каталоги dc=first,dc=com и dc=second,dc=com под общим корнем dc=union,dc=com , тогда к содержимому первого каталога можно обратиться, например, как к dc=f,dc=union,dc=com , а к содержимому второго как к dc=s,dc=union,dc=com . Надеюсь, более-менее понятно объяснил. Метакаталог работает как прокси: получает запрос от клиента, смотрит из какого исходного каталога требуются данные и перенаправляет запрос туда, подставив нужный суффикс; получив ответ от источника данных, он выполняет обратное преобразование суффикса и отправляет полученные и преобразованные данные клиенту.

Вот хороший пример настройки (как раз про AD): http://sdn.tovy.ru/openldap-meta-backend-active-directory/. Или вот ещё: https://gist.github.com/pbruna/7229c3e99dd4bf57b73c.

Обратите внимание на директиву suffixmassage (olcDbRewrite: suffixmassage "dc=f,dc=union,dc=com" "dc=first,dc=com"), именно она отвечает за преобразование суффиксов в описанном выше процессе. Также обратите внимание, что в LDAP-URI в директиве uri (olcDbURI) должен быть указан локальный суффикс как он будет представлен в метакаталоге, а не реальный суффикс каталога. Внимательней посмотрите в примерах и поймёте, что я имею ввиду.

Кроме того, для AD в дополнение к idassert-bind требуется указать директиву idassert-authzFrom (olcDbIDAssertAuthzFrom) с тем же значением, что и в первом примере выше ("dn:*"). Без неё, насколько я помню, AD не возвращает ответа.

Это была попытка ответа на второй вопрос =) . С первым же всё просто: значение атрибута slapd преобразовал в кодировку base64, о чём свидетельствуют два двоеточия после имени атрибута. Это делается во избежание потери данных в сложном значении атрибута.

Егор
Страницы: 1 ... 3 4 [5] 6 7 ... 10
Эта страница

Содержание

Новости:
Форум проекта Pro-LDAP.ru
OpenLDAP 2.4 Руководство

Содержание

Введение в службы каталогов OpenLDAPБыстрое развёртывание и начало работыОбщая картина - варианты конфигурацииСборка и установка OpenLDAPНастройка slapd

 

Конфигурационный файл slapdЗапуск slapdКонтроль доступаОграниченияИнструментыМеханизмы манипуляции даннымиНаложенияСпецификация схемы

 

БезопасностьSASLTLSРаспределённая служба каталоговРепликацияОбслуживаниеМониторингПроизводительностьУстранение неполадок
Перевод официального руководства OpenLDAP 2.4 Admin Guide
Полное содержание здесь
LDAP для учёных-ракетчиков

Содержание

О книгеКонцепции LDAPОбъекты LDAPУстановка LDAPПримерыНастройкаРепликация и отсылкиLDIF и DSMLПротоколLDAP API

 

HOWTOНеполадкиПроизводительностьИнструменты LDAPБезопасностьЗаметкиРесурсы LDAPRFC и X.500ГлоссарийОбъекты
Перевод "LDAP for Rocket Scientists"
Полное содержание здесь
Ресурсы

Книги

Руководство OpenLDAP 2.4LDAP для учёных-ракетчиков

Другие

СтатьиТермины LDAPman-страницы OpenLDAP 2.4Список RFCКлиенты LDAPФайлы наборов схемы
Полезные ресурсы
Форум

 

Разделы форумаНепрочитанные сообщенияПоследние сообщения
Форум проекта
Главная

Pro-LDAP.ru

О проектеНовости проектаУчастникиСтаньте участником!Сообщите об ошибке!Об авторских правахСоглашения проекта
Присоединяйсь!