общая адресная книга (ldap)

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

Модераторы: SLEDopit, Модераторы разделов

pelmen
Сообщения: 1268
ОС: debian

общая адресная книга

Сообщение pelmen »

Решил заморочиться и настроить общую адресную книгу. После поисков в интернете понял, что это реализуется через LDAP, и, якобы, существует проблема - не все клиентские программы корректно работают с ними (вроде как кто-то только читает, но не добавляет, хотя могу ошибаться, может данные устаревшие). Начал устанавливать , не нашел файла slapd.conf, вместо него есть директория

Код: Выделить всё

ls -d /etc/ldap/slapd.d/
drwxr-x--- 3 openldap openldap 4096 2010-08-19 13:04 /etc/ldap/slapd.d/
начал искать этот конфиг: полез в init-скрипт, увидел, что там есть переменная SLAPD_CONF="/etc/ldap/slapd.d/, то есть вместо конфига стоит директория. Идем дальше:

Код: Выделить всё

ls -lR /etc/ldap/slapd.d/
/etc/ldap/slapd.d/:
total 16
drwxr-x--- 3 openldap openldap 4096 2010-08-19 13:04 .
drwxr-xr-x 5 root     root     4096 2010-08-19 13:04 ..
drwxr-x--- 3 openldap openldap 4096 2010-08-19 13:04 cn=config
-rw-r----- 1 openldap openldap  407 2010-08-19 13:04 cn=config.ldif

/etc/ldap/slapd.d/cn=config:
total 32
drwxr-x--- 3 openldap openldap 4096 2010-08-19 13:04 .
drwxr-x--- 3 openldap openldap 4096 2010-08-19 13:04 ..
-rw-r----- 1 openldap openldap  365 2010-08-19 13:04 cn=module{0}.ldif
drwxr-x--- 2 openldap openldap 4096 2010-08-19 13:04 cn=schema
-rw-r----- 1 openldap openldap  307 2010-08-19 13:04 cn=schema.ldif
-rw-r----- 1 openldap openldap  406 2010-08-19 13:04 olcDatabase={0}config.ldif
-rw-r----- 1 openldap openldap  390 2010-08-19 13:04 olcDatabase={-1}frontend.ldif
-rw-r----- 1 openldap openldap  895 2010-08-19 13:04 olcDatabase={1}hdb.ldif

/etc/ldap/slapd.d/cn=config/cn=schema:
total 48
drwxr-x--- 2 openldap openldap  4096 2010-08-19 13:04 .
drwxr-x--- 3 openldap openldap  4096 2010-08-19 13:04 ..
-rw-r----- 1 openldap openldap 15456 2010-08-19 13:04 cn={0}core.ldif
-rw-r----- 1 openldap openldap 11290 2010-08-19 13:04 cn={1}cosine.ldif
-rw-r----- 1 openldap openldap  6420 2010-08-19 13:04 cn={2}nis.ldif
-rw-r----- 1 openldap openldap  2784 2010-08-19 13:04 cn={3}inetorgperson.ldif
Какой тут конфиг-то? Как вообще быть-то? Где тут настраивать общую адресную книгу ? :))))
Спасибо сказали:
Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8259
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu

Re: общая адресная книга

Сообщение serzh-z »

pelmen писал(а):
19.08.2010 15:46
Какой тут конфиг-то?
В новых версиях OpenLDAP поддерживается "конфиг в самом LDAP", т.е. в /etc/ldap/slapd.d лежит база LDAP в формате LDIF. Доступ к ней выполняется средствами утилит (файлы LDIF можно и руками править, но это некошерно) OpenLDAP.
pelmen писал(а):
19.08.2010 15:46
Как вообще быть-то? Где тут настраивать общую адресную книгу ? smile.gif)))
Добро пожаловать в мир LDAP. Начать можно отсюда: http://www.openldap.org/doc/admin24/ или вообще отсюда: http://www.openldap.org/

P.S.: и да, LDAP - это не адресная книга, на базе LDAP *можно* создать адресную книгу используя соответствующие схемы.
Спасибо сказали:
pelmen
Сообщения: 1268
ОС: debian

Re: общая адресная книга

Сообщение pelmen »

serzh-z, я правильно понимаю, что ldap - это что-то типа базы данных (все пишут "каталог", но это как-то интуитивно не понятно, что за каталог)? Как mysql, только с определенно выстроенными таблицами, вроде иерархического хранения данных?
Спасибо сказали:
Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8259
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu

Re: общая адресная книга

Сообщение serzh-z »

pelmen писал(а):
19.08.2010 16:27
Как mysql, только с определенно выстроенными таблицами, вроде иерархического хранения данных?
LDAP - это протокол и язык запросов, а не структура хранения. Он не навязывает формат используемого хранилища, он лишь определяет язык запросов (навроде SQL) к элементам каталога.
Спасибо сказали:
Аватара пользователя
Ленивая Бестолочь
Бывший модератор
Сообщения: 2760
ОС: Debian; gentoo

Re: общая адресная книга

Сообщение Ленивая Бестолочь »

pelmen писал(а):
19.08.2010 15:46
вроде как кто-то только читает, но не добавляет

почти все так делают

pelmen писал(а):
19.08.2010 15:46
вместо конфига стоит директория

если вам так сложно для начала и у вас дебиан (странно, кстати), то можно в /etc/default/slapd
написать:
SLAPD_CONF=/etc/ldap/slapd.conf
и делать "по старинке"

а вообще по идее проще сделать конфиг и конвертнуть его в директорию. а потом уже запускать лдап и править.
Солнце садилось в море, а люди с неоконченным высшим образованием выбегали оттуда, думая, что море закипит.
Спасибо сказали:
Аватара пользователя
ieleja
Сообщения: 307
ОС: Debian 9, macOS, Windows

Re: общая адресная книга

Сообщение ieleja »

Evolution умеет писать, но может это и хорошо, что публичная адресная книга 'read only'?

а то будет один большой мусорник ... общее - это то, что надо всем, а не все вводят А. Иванова 777 возможными способами ...
ad infinitum
Спасибо сказали:
Аватара пользователя
Ленивая Бестолочь
Бывший модератор
Сообщения: 2760
ОС: Debian; gentoo

Re: общая адресная книга

Сообщение Ленивая Бестолочь »

ieleja писал(а):
20.08.2010 02:39
Evolution умеет писать, но может это и хорошо, что публичная адресная книга 'read only'?

нужно просто настроить acl-и в ldap-е так, чтобы ответственные за адресную книгу сотрудники (не вы же её собрались заполнять? ;-) ) могли писать, а все остальные - только читать.
кстати ldap обычно сохраняет время и логин последнего изменения на случай разбора полётов.
Солнце садилось в море, а люди с неоконченным высшим образованием выбегали оттуда, думая, что море закипит.
Спасибо сказали:
paltusssss
Сообщения: 147

Re: общая адресная книга

Сообщение paltusssss »

А я вообще читал, что LDAP это протокол, по которому клиенты подключаются к Актив Директори на виндовых серваках по 384 порту. Разве он используется на линукс серверах и для каких целей?
Спасибо сказали:
Аватара пользователя
Ленивая Бестолочь
Бывший модератор
Сообщения: 2760
ОС: Debian; gentoo

Re: общая адресная книга

Сообщение Ленивая Бестолочь »

paltusssss писал(а):
27.08.2010 12:06
Разве он используется на линукс серверах и для каких целей?

да, используется.
для тех же целей, для которых он используется в active directory.
Солнце садилось в море, а люди с неоконченным высшим образованием выбегали оттуда, думая, что море закипит.
Спасибо сказали:
Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8259
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu

Re: общая адресная книга

Сообщение serzh-z »

paltusssss писал(а):
27.08.2010 12:06
А я вообще читал, что LDAP это протокол, по которому клиенты подключаются к Актив Директори на виндовых серваках по 384 порту.
ActiveDirectory - это одна из реализаций (проприетарная) службы каталогов на базе LDAP.
Спасибо сказали:
paltusssss
Сообщения: 147

Re: общая адресная книга

Сообщение paltusssss »

serzh-z писал(а):
27.08.2010 15:14
ActiveDirectory - это одна из реализаций (проприетарная) службы каталогов на базе LDAP.


в том то и вопрос. ActiveDirectory реализована для вин сервера, то что ей делать на линуксе?
Спасибо сказали:
Аватара пользователя
arkhnchul
Сообщения: 2284
Статус: Толчковый инженер
ОС: Debian, Fedora

Re: общая адресная книга

Сообщение arkhnchul »

странный вопрос. Самого по себе ада в никсах нет, есть своя реализация службы каталогов с LDAP.
Losing is fun!
Спасибо сказали:
Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8259
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu

Re: общая адресная книга

Сообщение serzh-z »

paltusssss писал(а):
27.08.2010 21:20
в том то и вопрос. ActiveDirectory реализована для вин сервера, то что ей делать на линуксе?
ActiveDirectory? Ничего. Но мы говорим о LDAP.
Спасибо сказали:
arhka
Сообщения: 2
ОС: Ubuntu

Re: общая адресная книга

Сообщение arhka »

чет как-то тема заглохла...
pelmen

у тебя все получилось?...я делал по этому мануалу OpenLDAP Server

вроде как сервер запустился и работает...поставил LDAP Browser\Editor v2.8.2 и правлю..в инете практически вся инфа на русском языке старая...это раньше все модификации делались через файл ldap.conf или slapd.conf...теперь все в динамическом конфиге... (не шарю линуксе вообще...методом научного тыка дотыкался)

умные люди отзовитесь по поводу LDAPa на убунту
Будь смел и обретешь огромную силу (Гете) С уважением, arh@ngel...
Спасибо сказали:
IMB
Сообщения: 2567
ОС: Debian

Re: общая адресная книга

Сообщение IMB »

arhka писал(а):
08.11.2010 12:25
умные люди отзовитесь по поводу LDAPa на убунту

А что Вы хотите услышать? У меня пользователи используют общую адресную книгу из Thunderbird, сервер OpenLDAP стоит на Debian Stable.
Спасибо сказали:
arhka
Сообщения: 2
ОС: Ubuntu

Re: общая адресная книга

Сообщение arhka »

IMB писал(а):
08.11.2010 13:30
А что Вы хотите услышать? У меня пользователи используют общую адресную книгу из Thunderbird, сервер OpenLDAP стоит на Debian Stable.


У Вас какая реализация лдапа: статический (ldap.conf;slapd.conf) или динамический (cn=config) конфиг?
Будь смел и обретешь огромную силу (Гете) С уважением, arh@ngel...
Спасибо сказали:
IMB
Сообщения: 2567
ОС: Debian

Re: общая адресная книга

Сообщение IMB »

Хм, интересное деление, думаю, что статический.
Спасибо сказали:
Аватара пользователя
Ленивая Бестолочь
Бывший модератор
Сообщения: 2760
ОС: Debian; gentoo

Re: общая адресная книга

Сообщение Ленивая Бестолочь »

у нас местами cn=config.
что интересует?
Солнце садилось в море, а люди с неоконченным высшим образованием выбегали оттуда, думая, что море закипит.
Спасибо сказали:
Аватара пользователя
Deo
Сообщения: 365
ОС: openSuse 12.3

Re: общая адресная книга

Сообщение Deo »

подниму тему))
Как лучше хранить дни рождения?
Вроде как есть RFC2739 http://tools.ietf.org/html/rfc2739 и RFC6350 http://tools.ietf.org/html/rfc6350 (последний с пометкой Errata Exist)
но нигде не нашел соответствующих схем.

Понял, что на практике используют схемы от мозиллы или evolution. С какой меньше граблей?

моё любимое облачко
Фхтагн! Мозг! Ням-ням! ~ Ктулху про Ленина
Спасибо сказали:
Аватара пользователя
Ленивая Бестолочь
Бывший модератор
Сообщения: 2760
ОС: Debian; gentoo

Re: общая адресная книга

Сообщение Ленивая Бестолочь »

смотря какими клиентами будете пользоваться. тот же TB в принципе берёт mail, cn, sn, st, o, ou, title, street и phone из стандартных схем. нам хватает.
правда вот TB вроде бы не умеет редактировать ldap, что есть плохо, т.к. поддерживать в актуальном состоянии адресную книгу хотелось бы поручить кому-нибудь кого не жалко.

ну и тот же др у нас в собственной схеме лежит, например, т.к. не используется в адресной книге и не планируется, а нужен для всяких кадровых дел.
Солнце садилось в море, а люди с неоконченным высшим образованием выбегали оттуда, думая, что море закипит.
Спасибо сказали:
Аватара пользователя
Deo
Сообщения: 365
ОС: openSuse 12.3

Re: общая адресная книга

Сообщение Deo »

то есть получается, что один и тот же юзер пишется в несколько dn с разными классами?
примерно вот так:
cn=user,ou=people
cn=user,ou=account

а связь какая между ними - в кастом схеме прописан dn на основной аккаунт с классом inetOrgPerson?
моё любимое облачко
Фхтагн! Мозг! Ням-ням! ~ Ктулху про Ленина
Спасибо сказали:
Аватара пользователя
Ленивая Бестолочь
Бывший модератор
Сообщения: 2760
ОС: Debian; gentoo

Re: общая адресная книга

Сообщение Ленивая Бестолочь »

Deo писал(а):
16.08.2012 19:08
то есть получается, что один и тот же юзер пишется в несколько dn с разными классами?
примерно вот так:
cn=user,ou=people
cn=user,ou=account

это зачем?
нет, у вас есть юзер, вы можете ему добавлять какие хотите обджектклассы, до тех, пока они не конфликтуют друг с другом.
Солнце садилось в море, а люди с неоконченным высшим образованием выбегали оттуда, думая, что море закипит.
Спасибо сказали:
Аватара пользователя
Deo
Сообщения: 365
ОС: openSuse 12.3

Re: общая адресная книга

Сообщение Deo »

кажется въезжаю.
сущность одна, просто доступ к ее свойствам рулится на уровне пользователей через ACL?
Для того, чтобы аттрибуты, которые видны специалистам "всяких кадровых дел", были недоступны пользователям адресной книги, например.

PS
В ТБ можно настроить маппинг Edit->Preferences->Advanced->Config Editor
и поиск по ключу ldap_2.servers.default.attrmap
Как я понял, тут каждый свой огород городит, четкого стандарта нету :)
моё любимое облачко
Фхтагн! Мозг! Ням-ням! ~ Ктулху про Ленина
Спасибо сказали:
Аватара пользователя
Ленивая Бестолочь
Бывший модератор
Сообщения: 2760
ОС: Debian; gentoo

Re: общая адресная книга

Сообщение Ленивая Бестолочь »

Deo писал(а):
16.08.2012 22:29
сущность одна, просто доступ к ее свойствам рулится на уровне пользователей через ACL?

ну, все варианты, которые встречал я сводились к этому.
посмотрите, по дефолту, например, тот же userPassword никому не виден. да и многие другие вещи.
а аттрибуты адресной книги, мы, например сделали доступными анонимусам. чтобы меньше настраивать на клиентах.
Deo писал(а):
16.08.2012 22:29
В ТБ можно настроить маппинг Edit->Preferences->Advanced->Config Editor
и поиск по ключу ldap_2.servers.default.attrmap
Как я понял, тут каждый свой огород городит, четкого стандарта нету :)

это да. просто в нашем случае мы старались сделать, чтобы тредовалась минимальная настройка TB. с их автонастройкой это как раз очень удобно.
Солнце садилось в море, а люди с неоконченным высшим образованием выбегали оттуда, думая, что море закипит.
Спасибо сказали:
Аватара пользователя
Deo
Сообщения: 365
ОС: openSuse 12.3

Re: общая адресная книга

Сообщение Deo »

Очень тупой вопрос.
Есть ли диапазон OID, который может использоваться без регистрации в IANA?
моё любимое облачко
Фхтагн! Мозг! Ням-ням! ~ Ктулху про Ленина
Спасибо сказали:
Аватара пользователя
Ленивая Бестолочь
Бывший модератор
Сообщения: 2760
ОС: Debian; gentoo

Re: общая адресная книга

Сообщение Ленивая Бестолочь »

по правильному вот так можно:
The above is all about createing UUIDs, not OIDs. But, if one creates a UUID then you can encode that as an OID very simply. An OID that begins with "2.25." is an OID encoded UUID. The value after "2.25." is the streight decimal encoding of the UUID as an integer. It MUST be a direct decimal encoding of the single integer, all 128 bits. It must not be broken up into parts. E.g., the UUID "f81d4fae-7dec-11d0-a765-00a0c91e6bf6" becomes the OID "2.25.329800735698586629295641978511506172918".

http://www.oid-info.com/get/2.25

лично я нагло "расширил" mailrouter.schema, благо ни с кем пересекаться (надеюсь) не собираемся.
Солнце садилось в море, а люди с неоконченным высшим образованием выбегали оттуда, думая, что море закипит.
Спасибо сказали:
Аватара пользователя
Deo
Сообщения: 365
ОС: openSuse 12.3

Re: общая адресная книга

Сообщение Deo »

Поделюсь скромным опытом курощения thunderbird:

С недавних пор есть плагин LDAP Contact photo, который вытягивает аттрибут thumbnailPhoto при просмотре контакта.
После переименоваия .xpi в .zip и замены перед установкой в content/common.js

Код: Выделить всё

                    if (attributes[i].toLowerCase() == "thumbnailphoto") {

на

Код: Выделить всё

                    if (attributes[i].toLowerCase() == "jpegphoto") {


все контакты обрели человеческое лицо.
моё любимое облачко
Фхтагн! Мозг! Ням-ням! ~ Ктулху про Ленина
Спасибо сказали:
Аватара пользователя
Ленивая Бестолочь
Бывший модератор
Сообщения: 2760
ОС: Debian; gentoo

Re: общая адресная книга

Сообщение Ленивая Бестолочь »

Deo, это интересно, а может проще было бы в лдапе сделать алиас для аттрибута, чтобы он и на jpegPhoto откликался?
Солнце садилось в море, а люди с неоконченным высшим образованием выбегали оттуда, думая, что море закипит.
Спасибо сказали:
Аватара пользователя
Deo
Сообщения: 365
ОС: openSuse 12.3

Re: общая адресная книга

Сообщение Deo »

а про оверлеи я только недавно узнал )

и, как программисту, было интересно посмотреть плагин изнутри.
В процессе понял, что для расширения птицы собственным плагином надо быть либо ее разработчиком, либо чтоб очень сильно прижало, либо быть психом. Документация как бы есть, но читается зело тяжело.
моё любимое облачко
Фхтагн! Мозг! Ням-ням! ~ Ктулху про Ленина
Спасибо сказали:
Аватара пользователя
Deo
Сообщения: 365
ОС: openSuse 12.3

Re: общая адресная книга

Сообщение Deo »

Раз пошла такая пьянка. А можно ли сделать, чтобы аттрибут dislpayName отдавался как "givenName sn" ?

моё любимое облачко
Фхтагн! Мозг! Ням-ням! ~ Ктулху про Ленина
Спасибо сказали: