Авторизация в LDAP AD. версия 1.1.4 на Linux
Возникла проблема, люди хотят общаться из другого поддомена AD с людьми в головном домене!!!
Если просто добавить пользователя в группу(ejabberd) из другого домена, по которой у меня идёт ограничение доменных пользователей, ТО ни чего не получается!!!
Можно ли в конфигурационном файле прописать чтоб сервер искал пользователелей сразу на нескольких схемах LDAP?
Например в строчках ldap_servers и ldap_base. Если да, то какой синтаксис(через запятую или как нить ещё?)
{auth_method, ldap}.
{ldap_servers, ["192.168.*.*"]}. % List of LDAP servers
{ldap_uidattr, "sAMAccountName"}. % LDAP attribute that holds user ID
{ldap_base, "DC=mydomain,DC=ru"}
Если не возможно это сделать, то как лучше организовать? Сделать виртуальный хост? Будут ли в таком случае пользователи разных вирт. хостов видеть друг друга.
Заранее спасибо. Направьте, пожалуйста, в нужное русло для решения этой проблемы.
у меня
у меня получилось только для виртуальных хостов, синтаксис (для одного хоста) следующий:
{host_config, "mx2.mydomain.ru", [{auth_method, ldap},
{access, configure, [{allow, admin}]},
{ldap_servers, ["192.168.231.253"]}, % List of LDAP servers
{ldap_uidattr, "sAMAccountName"}, % LDAP attribute that holds user ID
%{ldap_group, "CN=Domain Users,CN=Users,DC=mydomain,DC=ru"},
{ldap_base, "DC=mydomain,DC=ru"}, % Search base of LDAP directory
{ldap_rootdn, "CN=ejabberd,CN=Users,dc=mydomain,dc=ru"}, % LDAP manager
{ldap_password, "password"}]}. % Password to LDAP manager
но тут нюанс - видеть то они друг друга видят (хотя с поиском я не заморачивался и сделал shared contacts), но вот дополнительную информацию из учетной записи юзера (e-mail, № телефона) тянет только хост, указанный в конфиге первым.
поскольку мне до-зарезу хотелось сделать именно такую феньку, типа единой справочной базы, то в итоге плюнул, и сделал на двух отдельных серваках (поскольку таковые были под рукой) - тада заработало всё как хотелось... на одном серваке, кстати, два джаббер сервера сходу уговорить не удалось, ну и не стал, по вышеуказанной причине...
Спасибо за
Спасибо за ответ.
Получается, что в принципе можно сделать 2-а виртуальных хоста, но инфу по пользователю видно не будет(мне это и не надо) главное, чтобы пользователь из одного домена, смог найти и добавить себе пользователя из другого домена!
Только вот какой синтаксис при 2-х и более вирт. хостах? Как его прописать? когда один виртуал. хост уже работает.
Кстати, а каким образом вы завязали 2-а сервера, чтобы они инфой обменивались между собой?
Сделал пока два
Сделал пока два виртуальных хоста. Можно зайти пользователем как из одной схемы LDAP так и из другой на один сервер (имена тока разные естественно), НО пользователь из одной схемы не может найти и не видит пользователей из другой схемы LDAP!!! Как это можно реализовать??? Необходимо сделать как бы общее хранилище всех пользователей всего леса AD.
Как сделать shared contacts ??? Где это настраивается, помогите пожалуйста.
Или как, если на разных серверах, завязать 2-е схемы LDAP, чтобы из одной можно было искать контакты в другой?
В какой сторону копать?
...LDAP
Сделал пока два виртуальных хоста. Можно зайти пользователем как из одной схемы LDAP так и из другой на один сервер (имена тока разные естественно), НО пользователь из одной схемы не может найти и не видит пользователей из другой схемы LDAP!!! Как это можно реализовать??? Необходимо сделать как бы общее хранилище всех пользователей всего леса AD.
Когда-то делал такое в рамках эксперимента, вроде все работало... хотя не могу поручиться насчет поиска... давно было
Как сделать shared contacts ??? Где это настраивается, помогите пожалуйста.
Для этого есть отдельный модуль, пока неофициальный
http://www.ejabberd.im/mod_shared_roster_ldap
Есть там нюанс - у всех учетных записей параметр sAMAccountName должен быть в lowercase, я под это дело (перевод в lower) написал скрипт на VB
Уже более года работает. Юзеров больше сотни
PS: есть одно НО - shared roster работает для каждого домена отдельно. Т.е. юзер домена будет видеть в ростере только своих содоменников, остальных только через поиск и взаимную авторизацию
LDAP авторизация возможно по несколь
Для этого есть отдельный модуль, пока неофициальный
http://www.ejabberd.im/mod_shared_roster_ldap
Есть там нюанс - у всех учетных записей параметр sAMAccountName должен быть в lowercase, я под это дело (перевод в lower) написал скрипт на VB
Уже более года работает. Юзеров больше сотни
PS: есть одно НО - shared roster работает для каждого домена отдельно. Т.е. юзер домена будет видеть в ростере только своих содоменников, остальных только через поиск и взаимную авторизацию
В версии 1.1.4 он входит в стандартную поставку. Но видно либо я не правильно настраиваю, либо он отличается от предыдущего.
Выглядит у меня настройка так
{mod_shared_roster_ldap,
[{ldap_groupattr,"department"},
{ldap_groupdesc,"department"},
{ldap_rfilter, "(&(memberOf=*)(|(userAccountControl=66050)(userAccountControl=66048)))"},
{ldap_memberattr,"sAMAccountName"},
{ldap_userdesc,"cn"}]},
Работает он следующим образом:
Пользователь из домена А может по поиску найти и добавить пользователей из домена А,
так же пользователь из домена Б может найти и добавить пользователей из домена Б,
НО пользователь из домена А НЕ может найти пользователей из домена Б, но может добавить из него по ПОЛНОМУ JID и общаться с ним!!!
Конечно в принципе пользователи из разных доменов смогут общатся друг с другом, но когда в лесе около 1000 пользователей, заставить их вводить полный JID просто не реально!!! В данном случае поиск просто спасение.
Может у меня mod_shared_roster_ldap не правильно настроен? Помогите разобраться пожалуйста.
LDAP авторизация возможно по несколь
Посмотрел, у меня вообще не работает mod_shared_roster_ldap !!!
Пишет в логах такую ошибку:
=ERROR REPORT==== 2007-12-27 15:28:57 ===
E(<0.36.0>:gen_mod:47): {undef,
[{mod_shared_roster_ldap,
start,
["mosk.jabber.mydomain.ru",
[{ldap_groupattr,"department"},
{ldap_groupdesc,"department"},
{ldap_rfilter,
"(&(memberOf=CN=JabberUsers,CN=Users,DC=mydomain,DC=ru)(|(userAccountControl=66050)(userAccountControl=66048)))"},
{ldap_memberattr,"sAMAccountName"},
{ldap_userdesc,"cn"}]]},
{gen_mod,start_module,3},
{lists,foreach,2},
{ejabberd_app,start,2},
{application_master,start_it_old,4}]}
Чего ему не хватает, не понятно. Пришла мысль - параметр department должен быть обязательно у пользователя? Он не у всех пользователей заполнен. Может из-за этого?
LDAP авторизация возможно по несколь
Нет, по умолчанию в версии 1.1.4 mod_shared_roster_ldap модуля НЕТ!!! Я его собрал. Здорово, конечно, получается. Всех пользователей по полному имени показывает и сортирует их по группам сам, НО МНЕ НЕ ЭТО НАДО!!! НЕОБХОДИМО ПО ПОИСКУ НАХОДИТЬ ЛЮДЕЙ ИЗ РАЗНЫХ СХЕМ LDAP!!! По умолчанию ищет только в той схеме, которой принадлежит пользователь!!! КАК реализовать поиск, чтобы искал контакт по нескольким доменам СРАЗУ???!!! Такое вообще возможно реализовать???
HELP!!!
Пользователей не возможно будет приучить вводить полный JID!!!
Для JAJC поиск - Vcard & Search.
...LDAP
КАК реализовать поиск, чтобы искал контакт по нескольким доменам СРАЗУ???!!! Такое вообще возможно реализовать???
Неа... такого нет
Разве что переписать mod_vcard_ldap чтоб он искал сразу в нескольких схемах
Но на мой взгляд проще для этого сваять скрипт который будет раз в день вытягивать эккаунты из всех лдап-схем и заливать их в MySQL/PostgreSQL т.п. и поиск делать через mod_vcard_odbc
Сам не пробовал, может поможет, а может и вообще не заработает :)
А вообще интересно есть какой нибудь XEP насчет глобального JUD, не привязанного к конкретному хосту...
Просто я сам рискую в скором времени столкнуться с аналогичной ситуацией
LDAP авторизация возможно по несколь
ОЧЕНЬ жаль, неужели невозможно???!!! В этом топике анонимус вроде писал, что решил проблему через "shared contacts". Что это такое и с чем его едят? Или он не эту проблему имел ввиду?
Если действительно невозможно, может запостить где нибудь эту проблему, чтоб разработчики обратили на неё внимание. Сам я в программировании не силён, к сожалению.