Problems with LDAP Authentification

Hello,

i use ejabberd-2.0.1. I works good for me, as long as i use {auth_method, internal}.
But i realy like to use Active Directory for authentication.

When i try this, my config for LDAP looks like this:
{auth_method, ldap}.
{ldap_servers, ["11.12.13.2"]}.
{ldap_base, "dc=LPG,dc=gagelkaak,dc=de"}.
{ldap_port, 389}.
{ldap_uids, [{"sAMAccountName"}]}.
{ldap_rootdn, "cn=Administrator,ou=Users,dc=LPG,dc=gagelkaak,dc=de"}.
{ldap_password, "dudeldei"}.
{ldap_filter, "(memberOf=*)"}.

Unfortunately i does not work. I changed the log level to 5 (debug), but my logfile keeps having 0 Byte.
So i have no idea where the problem is.
If i start ejabberd with /opt/ejabberd/bin/start, the script hangs and does not go back to the command prompt.
Also - if i use tcpdump to look at the port 389 on my server there is simply no traffic - no requests, no answers.

So now im stuck and dont know where to look for a solution.

Has anybody some tips or advice for me?
Do i need special ldap-libs?

regards
LRH190

similar problem

I've got a similar problem:

ejd 2.0.2_2 -> stunnel form localhost:389 to ldap-server:636 -> ldap-server (is a NDS)

anonymous search works that way with an ldapsearch, but bind does not in ejd. Also, non-anonymous bind doesn't work.

The ldap-part crashes with a timeout at server startup (I guess, that'S, where the bind ishappening), the server otherwise, and as far as I can see 'till now, is running fine.

=ERROR REPORT==== 2008-10-02 13:06:32 ===
** State machine 'eldap_#Ref<0.0.0.8723>' terminating
** Last event in was timeout
** When State == connecting
**      Data  == {eldap,3,
                        ["localhost"],
                        null,
                        ["389"],
                        null,[],[],0,undefined,
                        {dict,0,16,16,8,80,48,
                              {[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],
                               []},
                              {{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],
                                []}}},
                        {[],[]}}
** Reason for termination =
** {function_clause,[{inet_tcp,getserv,[["389"]]},
                     {gen_tcp,connect1,4},
                     {gen_tcp,connect,4},
                     {eldap,connect_bind,1},
                     {eldap,connecting,2},
                     {gen_fsm,handle_msg,7},
                     {proc_lib,init_p,5}]}

The stunnel logfile doesn't show any entry concerning ejd, so I guess, stunnel wasn't even contacted.

I configured it along the documentation, which is written for 2.0.1. May that be the cause? Has anything changed from .1 to .2_2, concerning the configuration features?

Also, I had the mechanism working in 2.0.0-trunk (got it sometime before March 20th 2008, don't know what REV).

Any new or changed config items?

ckone

Config of ldap doesn't change in ejabberd 2.0.x

ckone wrote:

I configured it along the documentation, which is written for 2.0.1. May that be the cause? Has anything changed from .1 to .2_2, concerning the configuration features?

The configuration of ldap should be valid for all 2.0.x versions.

ckone wrote:

** Reason for termination =
** {function_clause,[{inet_tcp,getserv,[["389"]]},

Umm, looking at the error message, could it be that you configured this incorrectly?

{ldap_port, "389"}.

The correct option is this:

{ldap_port, 389}.

port config was wrong, now it works fine

Geeesus! Could it be? Me tripping over myselfe? Ok, I should have rtfm, it's the only value NOT written within q-marks.
Tankx for the hint, badlop. :-)

Followup question:

I guess the format of the config-items is due to Erlang constrictions, i.e. :
- the ldap server is set in brackets and quotation marks
- the port is put in there completely without
- the ldap_rootdn has to be set in quotation marks only
- ...

Is there any way of "harmonizing" this? (Feature request?)

EDIT:

Different problem, common solution

https://support.process-one.net/browse/EJAB-51
(see comment "Badlop - 24/Aug/07 01:50 AM")

Syndicate content