This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

7.201: Automatic user creation via LDAP doesn't seem to work

I finally got LDAP authentication against CommuniGate Pro working, using the following:

User attribute: Custom
Custom attribute: mail

Bind User DN: postmaster@domain
Bind User Password: password

Base DN: top

Notes:[LIST=1]
  • Communigate Pro creates a "mail" attribute on the fly, by concatenating the uid (account) and cn (domain) with an "@" - this allows a CGP user to authenticate as user@domain.
  • The Base DN is required for Astaro, or else it simply doesn't pass the bind user to the server. Why it requires an entry instead of assuming root is beyond me, but that's it.
[/LIST]Okay, now for the hard part:

If I set the option to automatically create a user account when an unknown user successfully authenticates via a backend system, my LDAP-authenticated users don't get created (this does work as expected under eDirectory).

Here's the transaction log from the CommuniGate Pro server during a login attempt for an unknown (to the Astaro) user:


23:29:49.490 5 LDAP [0.0.0.0]:636 
23:29:49.490 4 LDAP-000240([192.168.100.201]) TLS handshake: sending 'server_hello'
23:29:49.490 5 LDAP-000240([192.168.100.201]) TLS out 22: (74) 02 00 00 46 03 01 48 19 B0 2D 30 30 30 30 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 66 65 41 41 20 00 00 1D 62 48 65 B0 2D 67 48 87 AD F4 7B B2 8C ED 93 A4 2E 29 D9 F9 17 C1 3C D3 F9 B8 E9 CA 50 00 0A 00
23:29:49.490 4 LDAP-000240([192.168.100.201]) TLS handshake: sending the certificate
23:29:49.490 5 LDAP-000240([192.168.100.201]) TLS out 22: (1013) 0B 00 03 F1 00 03 EE 00 03 EB 30 82 03 E7 30 82 02 CF 02 04 22 25 27 04 30 0D 06 09 2A 86 48 86 F7 0D 01 01 04 05 00 30 81 B7 31 0B 30 09 06 03 55 04 06 13 02 55 53 31 11 30 0F 06 03 55 04 08 13 08 4E 65 77 20 59 6F 72 6B 31 12 30 10
23:29:49.490 4 LDAP-000240([192.168.100.201]) TLS handshake: sending 'hello_done'
23:29:49.490 5 LDAP-000240([192.168.100.201]) TLS out 22: (4) 0E 00 00 00
23:29:49.540 5 LDAP-000240([192.168.100.201]) TLS inp 22: (262) 10 00 01 02 01 00 42 B8 AF FA 81 3A 55 F6 F2 BB F8 A7 55 44 8F CC 3E 3D 66 B3 74 60 E2 1E 0D 2A 94 8A BA B3 55 38 26 21 2E B0 31 3F D4 D9 F2 CE 5B D2 99 57 25 EA 7E A4 5A 4F E2 57 8D 97 5F 02 E7 A8 EC 6B 22 C2 40 15 FF 58 BB 2E 38 0E
23:29:49.660 4 LDAP-000240([192.168.100.201]) TLS client key exchange processed
23:29:49.660 4 LDAP-000240([192.168.100.201]) security initiated
23:29:49.660 5 LDAP-000240([192.168.100.201]) TLS inp 20: (1) 01
23:29:49.660 4 LDAP-000240([192.168.100.201]) TLS 'change cipher' processed
23:29:49.660 4 LDAP-000240([192.168.100.201]) TLS 'change cipher' sending
23:29:49.660 5 LDAP-000240([192.168.100.201]) TLS out 20: (1) 01
23:29:49.670 5 LDAP-000240([192.168.100.201]) TLS inp 22: (40) 67 8B 63 BE ED A5 C6 F5 28 BF DB 7F 44 06 0B E6 7A BC D4 D0 51 16 83 3E 0C F0 71 44 7C A9 65 04 D8 49 8D 0B C7 3A 3E 70
23:29:49.670 4 LDAP-000240([192.168.100.201]) TLS 'finish handshake' processed
23:29:49.670 4 LDAP-000240([192.168.100.201]) TLS handshake: sending 'finished'
23:29:49.670 5 LDAP-000240([192.168.100.201]) TLS out 22: (40) EF 44 9C 04 83 DE 00 EF 7E B7 5B A0 B0 F2 7E AA E9 91 82 7D A7 C3 26 1D 04 8B 59 72 C7 57 7B 0A 87 9F 45 95 57 27 F0 71
23:29:49.670 4 LDAP-000240([192.168.100.201]) TLS(DES3_SHA) connection accepted for 'domain', session 7522
23:29:49.770 5 LDAP-000240([192.168.100.201]) TLS inp 23: (72) 0B B1 4C 13 17 A9 12 12 62 2D 9F 6E 27 A1 3B 45 CE 8F B6 84 D4 CA 63 C2 4E 3A A1 15 EB 26 3F F1 6E 6A 71 6D 6B 63 74 74 0A 04 D9 B4 B8 BA 54 89 E5 E2 80 74 9F 7E 01 F3 A3 03 97 65 52 5A 55 A5 CE 26 26 C3 FA 50 54 F8
23:29:49.770 5 LDAP-000240([192.168.100.201]) inp: SEQ(48) 02 01 02 60 2B 02 01 03 04 1A 70 6F 73 74 6D 61 73 74 65 72 40 32 72 6F 73 65 6E 74 68 61 6C 73 2E 63 6F 6D 80 0A 72 61 63 68 65 6C 31 32 32 33
23:29:49.770 4 LDAP-000240([192.168.100.201]) BINDing as 'postmaster@domain'
23:29:49.770 2 LDAP-000240([192.168.100.201]) 'postmaster@domain' connected from [192.168.100.201]:35650
23:29:49.770 4 LDAP-000240([192.168.100.201]) Logged in as . authType=0
23:29:49.770 5 LDAP-000240([192.168.100.201]) s-out: 30 0C 02 01 02 61 07 0A 01 00 04 00 04 00
23:29:49.770 5 LDAP-000240([192.168.100.201]) TLS out 23: (40) 1E 96 76 13 18 11 1A 64 C7 4E 4E 84 81 A2 43 E1 A7 CB CD 78 27 7E 5B BA D0 54 20 B5 5A 77 F3 71 7C A2 42 13 B2 6D 9F 6E
23:29:49.820 5 LDAP-000240([192.168.100.201]) TLS inp 23: (104) DE 62 09 27 91 65 9E 00 18 82 43 2A 91 6C 1D C4 43 5F BC 7A 16 F5 71 8A 12 1F 69 EC B5 A1 8D 8F 99 FC BD 66 33 67 0E 18 CB 57 AA E1 48 42 68 B0 A2 29 92 18 8D 5E 08 8F 33 85 0A F6 83 A0 8A 3F 04 59 79 B9 61 1B C9 74 43 DC C0 19 83 73
23:29:49.820 5 LDAP-000240([192.168.100.201]) inp: SEQ(78) 02 01 03 63 49 04 03 74 6F 70 0A 01 02 0A 01 00 02 01 00 02 01 00 01 01 00 A0 31 87 0B 6F 62 6A 65 63 74 43 6C 61 73 73 A3 22 04 04 6D 61 69 6C 04 1A 63 72 61 69 67 73 6C 69 73 74 40 32 72 6F 73 65 6E 74 68 61 6C 73 2E 6E 65 74 30 00
23:29:49.820 4 LDAP-000240([192.168.100.201]) searching(sub) ''
23:29:49.820 4 LDAP-000240([192.168.100.201]) searching where (&(objectClass=*)(uid=newuser))
23:29:49.820 4 LDAP-000240([192.168.100.201]) searching for ALL
23:29:49.840 4 LDAP-000240([192.168.100.201]) 'uid=newuser,cn=newdomain' retrieved
23:29:49.840 5 LDAP-000240([192.168.100.201]) s-out: 30 82 01 02 02 01 03 64 81 FC 04 21 75 69 64 3D 63 72 61 69 67 73 6C 69 73 74 2C 63 6E 3D 32 72 6F 73 65 6E 74 68 61 6C 73 2E 6E 65 74 30 81 D6 30 55 04 0B 6F 62 6A 65 63 74 63 6C 61 73 73 31 46 04 03 74 6F 70 04 06 70 65 72 73 6F 6E 04 14 6F 72
23:29:49.840 5 LDAP-000240([192.168.100.201]) TLS out 23: (288) 1A D8 49 6C D4 DF C9 51 9E 10 64 E3 F7 32 F4 11 8F 64 90 06 A7 DE 90 62 CA B6 1C B1 C9 AE 2A CA 79 09 19 97 EC 9D 68 8D 71 8D CB 30 AF 3E 60 A5 2A 4A C9 E3 83 02 BA C2 7D 73 B3 55 37 5F C3 BA A8 E4 51 45 21 10 85 2F C3 26 69 EA FD BC
23:29:49.840 2 LDAP-000240([192.168.100.201]) search finished
23:29:49.840 5 LDAP-000240([192.168.100.201]) s-out: 30 0C 02 01 03 65 07 0A 01 00 04 00 04 00
23:29:49.840 5 LDAP-000240([192.168.100.201]) TLS out 23: (40) 7A 34 3F 3D 3A A1 21 8A 6D 0C 04 92 BA D2 D9 F1 77 08 9C 1D A4 D9 A4 50 0B FB 09 70 E9 41 21 0B 44 B4 E0 63 2D 04 F1 33
23:29:49.930 5 LDAP-000240([192.168.100.201]) TLS inp 23: (80) 2C 17 17 65 F0 F6 9D 44 8D 22 77 7A 32 D4 95 97 FE 3E 90 60 BF 56 26 2E FD CC FD 1C 89 D1 87 71 15 AD 3E D8 B0 6D 4E 48 BF 1C 98 F9 15 D7 50 37 EA 4C 41 17 8E 1A 20 9C 9C CF EB 3E 39 BE 65 92 BB D4 FD 7D 1B CF 5D B9 04 A0 40 5F 59 11 B1
23:29:49.930 5 LDAP-000240([192.168.100.201]) inp: SEQ(52) 02 01 04 60 2F 02 01 03 04 21 75 69 64 3D 63 72 61 69 67 73 6C 69 73 74 2C 63 6E 3D 32 72 6F 73 65 6E 74 68 61 6C 73 2E 6E 65 74 80 07 61 72 69 61 64 6E 65
23:29:49.930 2 LDAP-000240([192.168.100.201]) 'postmaster@domain' disconnected ([192.168.100.201]:35650)
23:29:49.930 4 LDAP-000240([192.168.100.201]) BINDing as 'uid=newuser,cn=newdomain'
23:29:49.930 4 LDAP-000240([192.168.100.201]) Logged in as uid=newuser,cn=newdomain. authType=0
23:29:49.930 5 LDAP-000240([192.168.100.201]) s-out: 30 0C 02 01 04 61 07 0A 01 00 04 00 04 00
23:29:49.930 5 LDAP-000240([192.168.100.201]) TLS out 23: (40) 58 B6 9C 83 D3 45 C7 74 F8 B3 BD 74 7E AA 83 37 30 02 24 56 7F 26 00 C2 74 AC BD CA 32 AB C8 86 85 3C DF 40 EC 5F 65 69
23:29:49.960 5 LDAP-000240([192.168.100.201]) TLS inp 21: (24) 89 15 CA 9E 3C B8 F9 B9 ED F0 7A D8 86 2F 7B BF 9C ED F6 98 91 9D 7E 24
23:29:49.960 4 LDAP-000240([192.168.100.201]) TLS closing alert received
23:29:49.960 3 LDAP-000240([192.168.100.201]) request reading failed. Error Code=TLS connection is being closed by peer
23:29:49.960 4 LDAP-000240([192.168.100.201]) TLS connection is closing
23:29:49.960 5 LDAP-000240([192.168.100.201]) TLS out 21: (24) DD 30 84 09 D9 67 DE 5A 47 48 A9 C0 D9 24 A7 CA 30 EF 63 63 2D 21 EB 4E
23:29:49.960 2 TLS-007522 session closed by LDAP-000240, refCount=1
23:29:49.960 4 LDAP-000240([192.168.100.201]) closing connection
23:29:49.960 4 LDAP-000240([192.168.100.201]) releasing stream
CGP did find the user and authenticated him. However, Astaro says:

2008:06:27-23:29:49 (none) aua[2086]: id="3005" severity="warn" sys="System" sub="auth" name="Authentication failed" srcip="0.0.0.0" user="newuser@newdomain" caller="portal" reason="DENIED"
Now, if I create the user in the Astaro first, and configure him as remote with backend sync (i.e., no password stored locally in the Astaro), I can log in with no problem:

2008:06:27-23:32:33 (none) aua[2609]: id="3004" severity="info" sys="System" sub="auth" name="Authentication successful" srcip="0.0.0.0" user="newuser@newdomain" caller="portal" engine="ldap"
Any ideas?

TIA


This thread was automatically locked due to age.
  • example for correct notation of the BIND-USER DN:

    user: administrator
    group: users
    domain: test.local


    Bind User DN: cn=administrator, cn=users, dc=test, dc=local

    Cheers
  • Thanks for your reply. Note that my BIND is working:

    23:29:49.770 4 LDAP-000240([192.168.100.201]) BINDing as 'postmaster@domain'
    23:29:49.770 2 LDAP-000240([192.168.100.201]) 'postmaster@domain' connected from [192.168.100.201]:35650
    23:29:49.770 4 LDAP-000240([192.168.100.201]) Logged in as . authType=0
    I understand that postmaster@domain is not typical LDAP syntax, but that is the proper way to BIND for Communigate Pro. Attempting to BIND as uid=postmaster,cn=domain does not work, even though when browsing the directory that is the correct object for the postmaster account (the cn for postmaster is actually my name, and I have tried cn="Lewis G Rosenthal", cn=domain - to no avail). No, the  BIND is not really the issue, here, and the postmaster account does have the ability to authenticate users. For soem reason, they're just not getting created in the ASG. As I mentioned before, creating them in the ASG as remote objects, and then allowing them to be authenticated against the CGP server works, so the password is definitely getting back and forth between the two boxes.

    Most perplexing. I've tried several different BINDs, and yet I still cannot get this working. I think it may be time to open a ticket with Astaro.

    Thanks again.