LDAP-AD Verbindung schläft fehl

Message
Author
User avatar
kevin91
Posts: 12
Joined: 15. Apr 2013 9:52

LDAP-AD Verbindung schläft fehl

#1 Post by kevin91 »

Hallo liebe Forengemeinde,

ich hoffe sehr ihr könnt mir helfen.
Ich bin derzeitig an einem LDAP-Backend-Server dran und habe es mittlerweile über verschiedene Tutorials geschafft, mir meinen Server zusammen zu schustern.
Soweit klappt das einzelne also.

Ich habe zum Testen 2 OS in einem VMWare Workstation installiert,
einmal Linux mit dem LDAP-Server/Client und das andere mal Win2008-Server mit meinem Test-AD.

Problem was ich nun habe ist allerdings, dass ich einen LDAP-Server mit AD-Anbindung brauche, der also bei Anfragen im AD nachschaut, ob nachgefragter Nutzer vorhanden ist und die Rechte hat, um zu Connecten. Und genau hier scheitert es.

Erstmal die grobe Client-Configuration von mir, vom LDAP-Server/Client.
ldap.conf

Code: Select all

    #
    # LDAP Defaults
    #

    # See ldap.conf(5) for details
    # This file should be world readable but not world writable.

    #BASE   dc=example,dc=com
    #URI    ldap://ldap.example.com ldap://ldap-master.example.com:666

    BASE    dc=xx,dc=xxx
    URI     ldap://AD_LDAP.xx.xxx

    rootbinddc cn=Administrator,dc=xx,dc=xxx

    TLS_CACERTDIR /etc/openldap/cacerts
    TLS_REQCERT allow

    ssl start_tls
    tls_checkpeer yes
    tls_cacertfile /etc/openldap/cacerts/cacert.pem

    timelimit       10
    bind_timelimit  10

    #SIZELIMIT      12
    #TIMELIMIT      15
    #DEREF          never
So, für die Client-Configuration brauche ich nun laut einiger Foren nichts mehr,
deswegen hab ich ab da versucht, per Abfrage, Daten aus meinem AD auszulesen,
indem ich folgenden Befehl verwendete:

Code: Select all

ldapsearch -h AD_LDAP.xx.xxx:3899 -X "u:cn=Administrator,ou=xx,dc=xx,dc=xxx" -W
Worauf dann folgender Fehler auftritt, andem ich gerade verzweifel:

Code: Select all

Enter LDAP Password:
    SASL/GSSAPI authentication started
    ldap_sasl_interactive_bind_s: Local error (-2)
            additional info: SASL(-1): generic failure: GSSAPI Error: Unspecified GSS failure.  Minor code may provide more information (Credentials cache file '/tmp/krb5cc_0' not found)
Wenn ich ohne Authentifizierung versuche zu connecten, also so:

Code: Select all

ldapsearch -h AD_LDAP.xx.xxx:3899 -x
kommt immerhin schonmal die richtige Fehlermeldung, nämlich dass er für eine
Verbindung einen passenden Bind braucht, also User:

Code: Select all

# extended LDIF
    #
    # LDAPv3
    # base <dc=xx,dc=xxx> &#40;default&#41; with scope subtree
    # filter&#58; &#40;objectclass=*&#41;
    # requesting&#58; ALL
    #

    # search result
    search&#58; 2
    result&#58; 1 Operations error
    text&#58; 000004DC&#58; LdapErr&#58; DSID-0C0906E8, comment&#58; In order to perform this ope
     ration a successful bind must be completed on the connection., data 0, v1db1

    # numResponses&#58; 1
Mein AD ist folgendermaßen aufgebaut:

-Domäne
---OU
-----OU2
-----OU3
-----OU4


Und in jeder OU liegt jeweils ein ansprechbarer Nutzer der kein Passwort benötigt zum Login.

Auf meinem AD sind installiert:
-Active Directory Lightweight Directory Services (mit den Ports 3899 und 6366)
-Active Directory-Domänendienste
-Active Directory-Zertifikatdienste
-DNS-Server
-Netzwerkrichtlinien- und Zugriffsdienste

Kann mir wer anhand der Daten die ich angegeben haben sagen, was genau ich falsch mache bzw. welche Infos noch fehlen für eine genaue Fehleranalyse und entsprechendem Lösungsvorschlag?

Vielen Dank im voraus, hoffe ihr könnt mir helfen! :(
AD-LDAP-KERBEROS-SERVER-COMBINATED-ARCHIVEMENT -> CHECK

User avatar
Janka
Posts: 3585
Joined: 11. Feb 2006 19:10

#2 Post by Janka »

Wie ist SASL bei dir denn überhaupt konfiguriert? Die Fehlermeldung sagt ja aus, dass er wohl was von Kerberos erwartet und das nicht da ist bzw. nichts liefert.

Janka
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.

User avatar
kevin91
Posts: 12
Joined: 15. Apr 2013 9:52

#3 Post by kevin91 »

ahh.. Kerberos.. okay danke, dass stand in den wenigstens Tutorial drinnen,
deswegen dachte ich wäre das nur so ein "can-have" und net "must-have".

Jetzt gerade den Kerberos-Server aufgespielt und die
krb5.conf an meine Einträge angepasst, jetzt bekomme ich aber
von meinem Kerberos Client eine neue Fehlermeldung und zwar

Code: Select all

kadmin&#58; Missing parameters in krb5.conf required for kadmin client while initializing kadmin interface
dabei hab ich in der default krb5.conf lediglich alle "example.com" in meine domäne umgeändert und den "kerberos.example.dom" auf meinem kerberos server verwiesen.

ist da noch was falsch?
AD-LDAP-KERBEROS-SERVER-COMBINATED-ARCHIVEMENT -> CHECK

User avatar
Janka
Posts: 3585
Joined: 11. Feb 2006 19:10

#4 Post by Janka »

Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.

User avatar
kevin91
Posts: 12
Joined: 15. Apr 2013 9:52

#5 Post by kevin91 »

Hab mittlerweile den Fehler bei Kerberos rausgefunden..
hatte den falschen User benutzt, da meine Clients nur mit einem
von Kerberos erstellen User joinen können.

Komme nun also auf das "kadmin"-Interface vom Server und kann dort entsprechend Befehle ausführen. Fehlt mir nur noch meine Verbindung zum AD.

Zur Übersicht:

Server 1 : LDAP - Linux CentOS6
Server 2 : AD - Windows
Server 3 : Kerberos freeradius - Linux CentOS6

Wie kriege ich das jetzt hin, mit meinem LDAP-Server die AD-Datenbank abzufragen?
Muss ich über den Kerberos Server dafür gehen oder wie macht man das?
Und welche Einstellungen genau von welcher Datei helfen dir, meine Fragen zu beantworten... xD

pls :shock:
AD-LDAP-KERBEROS-SERVER-COMBINATED-ARCHIVEMENT -> CHECK

User avatar
kevin91
Posts: 12
Joined: 15. Apr 2013 9:52

#6 Post by kevin91 »

Kennst sich denn keiner genauer mit dieser Systemzusammenstellung aus?

Ich muss es halt irgendwie hinkriegen,
dass die Anfragen über den LDAP-Server, bzw. vom Kerberos-Server auf den LDAP-Server weitergeleitet werden (Bei WLan-Anfragen), und diese dann
eine Verbindung zum AD, bzw. einem SQL Server aufbaut.

Kann mir jemand erklären, wie genau ich das Einstellen muss, damit die Kommunikation zwischen denen klappt?

Weil bisher scheitere ich schon bei der ldapsearch-Anfrage an den AD!
AD-LDAP-KERBEROS-SERVER-COMBINATED-ARCHIVEMENT -> CHECK

User avatar
Janka
Posts: 3585
Joined: 11. Feb 2006 19:10

#7 Post by Janka »

Die Aufrufzeile und die Fehlermeldungen von ldapsearch wären toll.

Janka
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.

User avatar
kevin91
Posts: 12
Joined: 15. Apr 2013 9:52

#8 Post by kevin91 »

Ok, dass hier ist die Aufrufzeile und die Antwort von meinem LDAP-Server.

Code: Select all

&#91;root@pmlin58-132 /&#93;# ldapsearch -X "DN&#58;CN=Admin A,OU=SysAdmin,OU=PM,DC=PM,DC=dom" -h pmwin58-135 -v -W
ldap_initialize&#40; ldap&#58;//pmwin58-135 &#41;
Enter LDAP Password&#58;
SASL/GSSAPI authentication started
ldap_sasl_interactive_bind_s&#58; Local error &#40;-2&#41;
        additional info&#58; SASL&#40;-1&#41;&#58; generic failure&#58; GSSAPI Error&#58; Unspecified GSS failure.  Minor code may provide more information &#40;Cannot contact any KDC for realm 'PM.DOM'&#41;
Problem ist nur, dass auf meinem AD eigentlich alles benötigte laufen sollte.
Bin echt ein Unknown auf diesem Themengebiet und würd gern wissen, was ich falsch mache.

Will erstmal wenns geht Fehler für Fehler beheben, damit ich das auch lernen kann.
AD-LDAP-KERBEROS-SERVER-COMBINATED-ARCHIVEMENT -> CHECK

User avatar
Janka
Posts: 3585
Joined: 11. Feb 2006 19:10

#9 Post by Janka »

Kerberos meckert "Cannot contact any KDC for realm". Das liegt vermutlich daran, dass auf dem Host des Realms kein Kerberosdaemon läuft bzw. Port 88/udp durch eine Firewall gesperrt ist.

Janka
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.

User avatar
kevin91
Posts: 12
Joined: 15. Apr 2013 9:52

#10 Post by kevin91 »

Hallo, danke schonmal vorab für deine ganzen Antworten und bemühungen.
Musste dank einem Windows-Update leider den kompletten PC neu machen,
heißt alles weg.

LDAP-Server und Windows-AD wieder aufgebaut,
allerdings steck ich jetzt hier weiter fest

Code: Select all

 openldap&#93;# ldapsearch -X "dn&#58;cn=Admin A,dc=pm,dc=dom" -v
ldap_initialize&#40; <DEFAULT> &#41;
SASL/EXTERNAL authentication started
ldap_sasl_interactive_bind_s&#58; Unknown authentication method &#40;-6&#41;
        additional info&#58; SASL&#40;-4&#41;&#58; no mechanism available&#58;
Kannst du mir da helfen, es scheint, als ob mein AD keine ldap-Anfrage kennt.
AD-LDAP-KERBEROS-SERVER-COMBINATED-ARCHIVEMENT -> CHECK

User avatar
Janka
Posts: 3585
Joined: 11. Feb 2006 19:10

#11 Post by Janka »

Nein, das stinkt eher danach, dass in der SASL-Konfiguration kein Authentifizierungs-Backend ausgewählt ist.

Janka
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.

User avatar
kevin91
Posts: 12
Joined: 15. Apr 2013 9:52

#12 Post by kevin91 »

Und was genau muss ich dann da machen für die bestmöglichste, bzw.
effizienteste / schnellste Lösung?

Wie gesagt, bin kompletter Neuling auf dem Gebiet und bräuchte dringend genauere Instruktionen, weil einfach durchs I-net surfen bringt nicht gerade gute Details wenn man
damit nix anfangen kann.
AD-LDAP-KERBEROS-SERVER-COMBINATED-ARCHIVEMENT -> CHECK

User avatar
Janka
Posts: 3585
Joined: 11. Feb 2006 19:10

#13 Post by Janka »

Tut mir leid, aber ich kenne die Lösung für dein Problem auch nicht. (Ich erfasse ja nichtmal das Problem komplett. Ist aber auch nicht mein Problem, also ist das nicht so schlimm.) Ich mache es wie jeder der so etwas tun muss es tun würde: Er sucht sich ein HOWTO und hangelt sich dann von Fehlermeldung zu Fehlermeldung durch.

Janka
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.

User avatar
hastifranki
Posts: 259
Joined: 06. May 2006 19:58

Re: LDAP-AD Verbindung schläft fehl

#14 Post by hastifranki »

kevin91 wrote: Wenn ich ohne Authentifizierung versuche zu connecten, also so:

Code: Select all

ldapsearch -h AD_LDAP.xx.xxx&#58;3899 -x
kommt immerhin schonmal die richtige Fehlermeldung, nämlich dass er für eine
Verbindung einen passenden Bind braucht, also User:

Code: Select all

# extended LDIF
    #
    # LDAPv3
    # base <dc=xx,dc=xxx> &#40;default&#41; with scope subtree
    # filter&#58; &#40;objectclass=*&#41;
    # requesting&#58; ALL
    #

    # search result
    search&#58; 2
    result&#58; 1 Operations error
    text&#58; 000004DC&#58; LdapErr&#58; DSID-0C0906E8, comment&#58; In order to perform this ope
     ration a successful bind must be completed on the connection., data 0, v1db1

    # numResponses&#58; 1
Ich würde bei dieser Fehlermeldung

-D binddn

verwenden.

http://jurjenbokma.com/ApprenticesNotes ... query.html

Sind für SASL alle Libraries installiert?

Ich kenne mich aber mit openldap nicht wirklich aus.

Viele Grüße
Frank

User avatar
kevin91
Posts: 12
Joined: 15. Apr 2013 9:52

#15 Post by kevin91 »

Hamma Antwort.. danke ^^

endlich konnt ich mal eine vernünftige Anfrage zum AD starten,
wo ich auch durchgekommen bin, juhu !!

Musste zwar was in deinem Link umhersuchen und natürlich auf mein
System anpassen, aber bin froh wenigstens das erstmal geschafft zu haben.

Nächster Schritt bei mir wäre dann, dass wenn mein Kerberos-Server
eine Authentifizierungsanfrage bekommt, er das an den LDAP-Server weiterleitet mit
einer entsprechenden Frage und der Server wiederum meinen AD befragt.

Gibt es bei Kerberos sowas wie eine Weiterleitung wen von Typ User-Anfrage?
AD-LDAP-KERBEROS-SERVER-COMBINATED-ARCHIVEMENT -> CHECK

Post Reply