Добрый день.
Нужна помощь, был настроен и запущен ejabberd сервер внутри одной из сетей. при использовании обычной авторизации все отлично работает.
После появилась задача интеграции с AD в windows 2003. Пришлось немного повозиться, в итоге получилось, наладить связь, т.е ejabberd запускается, коннектится к LDAP под админом, и работает.
При попытке подключения к существующей на сервере учетной записи, в логах
I(<0.278.0>:eldap:967) : LDAP connection on ctwin1.ru:389
=INFO REPORT==== 2011-04-05 22:22:17 ===
I(<0.37.0>:ejabberd_app:72) : ejabberd 2.1.5 is started in the node ejabberd@debian
=INFO REPORT==== 2011-04-05 22:22:39 ===
I(<0.456.0>:ejabberd_listener:232) : (#Port<0.1960>) Accepted connection {{192,168,1,12},54661} -> {{192,168,1,37},5222}
=INFO REPORT==== 2011-04-05 22:22:40 ===
I(<0.460.0>:ejabberd_c2s:598) : ({socket_state,tls,{tlssock,#Port<0.1960>,#Port<0.1982>},<0.459.0>}) Failed authentication for chupikaid@ctwin1.ru
когда указывается запись несуществующая, или меняется имя пользователя, в настройках подключения к Ldap, в логах либо выводит что пользователя не существует, либо ошибки при подключении к Ldap другими словами связь есть, но работает некорректно.
приведу части конфигураций в которые вносились изменения т.к файлы с комментами очень большие.
%% Hostname
{hosts, ["localhost", "ctwin1.ru"]}.
{auth_method, ldap}.
%%
%% List of LDAP servers:
{ldap_servers, ["ctwin1.ru"]}.
%%
%% Encryption of connection to LDAP servers (LDAPS):
%%{ldap_encrypt, none}.
%%{ldap_encrypt, tls}.
%%
%% Port connect to LDAP server:
%%{ldap_port, 389}.
%%{ldap_port, 636}.
%%
%% LDAP manager:
{ldap_rootdn, "CN=admin,OU=malinina,dc=ctwin1,dc=ru"}.
%%
%% Password to LDAP manager:
{ldap_password, "password"}.
%%
%% Search base of LDAP directory:
{ldap_base, "ou=malinina,ou=users,dc=ctwin01,dc=ctwin1,dc=ru"}.
%%
%% LDAP attribute that holds user ID:
{ldap_uids, [{"sAMAccountName"}]}.
{access, register, [{allow, all}]}.
%% Search base of LDAP directory: - в этом параметре указывался как просто сервер, так и с OU и без, разницы нету.
В чем может быть проблема авторизации ?
%% LDAP attribute that holds user ID: - также заменялся на различные варианты {ldap_uids, [{"uid","%u"}]}, ldap_uids, [{"userPrincipalName", "%u@mydomain.local"}]}