LDAP-Fehler bei Mailrelay

Moderator: Securepoint

Gesperrt
MDegen
Beiträge: 30
Registriert: Mi 18.04.2007, 10:47

LDAP-Fehler bei Mailrelay

Beitrag von MDegen »

Hallo,

wir haben aktuell ein Problem mit der Validierung von Mailadressen per LDAP.
folgende Meldung erscheint im Log:
SYSERR(root): ldap_init/ldap_bind failed to xxx.xxx.xxx.xxx in map ldapmra: Invalid credentials
SYSERR(root): ldap_init/ldap_bind failed to xxx.xxx.xxx.xxx in map ldapmh: Invalid credentials
(die IP ist die unseres SBS 2003)
Das ganze funktionierte bis zum Build 8679. Das Update auf die 8744 haben wir übersprungen, da dies hier als Bug aufgeüfhrt ist. Aber mit dem 8749 und gerade dem Update auf 8784 geht es nicht mehr.

Was können wir da tun?

mfg
M. Degen

Benutzeravatar
Erik
Securepoint
Beiträge: 1480
Registriert: Fr 07.11.2008, 11:50

Beitrag von Erik »

"invalid credentials" deutet auf einen fehlgeschlagenen Login am AD hin.
Kontrollieren Sie die eingetragenen Zugangsdaten unter "Authentifizierung" -> LDAP.
Hinweis:
Es wird nicht nach dem Login (sAMAccountName), sondern nach dem angezeigten Namen (cn) gesucht. Und das auch nur unter "Users" (cn=,cn=Users,dc=meinedomain,dc=local)

chrisweibel
Beiträge: 36
Registriert: Mi 05.03.2008, 00:20
Wohnort: Fürstenfeldbruck
Kontaktdaten:

Beitrag von chrisweibel »

Es geht nicht nur auf nen Anzeige Namen sondern auch auf den Namen der in Users Angezeigt wird
Die Wissenschaft hat keine moralische Dimension. Sie ist wie ein Messer. Wenn man sie einem Chirurgen und einem Mörder gibt, gebraucht es jeder auf seine Weise.

Norbert
Beiträge: 30
Registriert: Mo 28.11.2011, 12:11
Wohnort: Fürstenfeldbruck
Kontaktdaten:

Beitrag von Norbert »

Danke, hat mir geholfen. Ich hatte die gleiche Fehlermeldung. :-)

khani
Beiträge: 32
Registriert: Do 04.06.2009, 15:09

Beitrag von khani »

Ich richte gerade zum ersten Mal eine neue UTM V.11.2.3

LDAP-Anbindung habe ich laut Beschreibung eingerichtet. Ich bekomme aber unter Live Log folgende Meldung:

r3GA1MGd007859: SYSERR(root): ldap_init/ldap_bind failed to xxx.xxx.xxx.xxx in map ldapmra: Invalid credentials
r3GA1MGd007859: SYSERR(root): ldap_init/ldap_bind failed to xxx.xxx.xxx.xxx in map ldapmh: Invalid credentials

unter unter Mailq:

(ldap_init/ldap_bind failed to xxx.xxx.xxx.xxx in map ldapmh:)

und die Mails werden trotzdem rausgeschickt.

Unter LDAP Konfiguration, wenn ich z.B. cn=,cn=Users,dc=meinedomain,dc=local eintrage, veschwindet alles, was bleibt ist nur cn=?!

Was mach ich nun falsch?

Mfg
Khani

Benutzeravatar
Erik
Securepoint
Beiträge: 1480
Registriert: Fr 07.11.2008, 11:50

Beitrag von Erik »

In das Feld "Benutzername" kommt einfach nur "".
In v11.2.3 gibt es bei der Eingabe des "Base"-Feldes noch ein kleines Problem mit dem Komma. Nachdem Sie also den korrekten Benutzernamen eingetragen haben, klicken Sie auf Extras -> CLI und führen dort aus:

Code: Alles auswählen

extc global set variable GLOB_LDAP_BASE value "dc=securepoint\\,dc=local"
Den Namen der Domain passen sie selbstverfreilich an. Wichtig ist, das Komma mit einem Backslash davor zu escapen.
Zuletzt müssen Sie dann nur noch den Sendmail-Dienst neu starten.

khani
Beiträge: 32
Registriert: Do 04.06.2009, 15:09

Beitrag von khani »

Danke für die schnelle Antwort.

Nach dem Ausführen des Befehls ist der Eintrag im BASE-Feld richtig: "dc=meindomain\\,dc=local",
Wie startet man den Sendmail-Dienst neu? daher starte ich UTM neu und
im Base-Feld steht wieder nur DC=meindomain.

Gleiche Meldungen und die Email werden weiterhin rausgeschickt.

MfG
Khani

Benutzeravatar
Erik
Securepoint
Beiträge: 1480
Registriert: Fr 07.11.2008, 11:50

Beitrag von Erik »

Was steht in der Variable "GLOB_LDAP_BASE", wenn sie in der CLI ausführen "extc global get"? Haben Sie nach dem Ausführen des CLI-Befehls nochmal die "Externe Authentifizierung" gespeichert?
Was ist die Ausgabe von

Code: Alles auswählen

# spcli extc template get template /etc/mail/sendmail.mc | grep -i confLDAP_DEFAULT_SPEC
um den Befehl auszuführen müssen Sie sich als "root" auf der Konsole anmelden.

khani
Beiträge: 32
Registriert: Do 04.06.2009, 15:09

Beitrag von khani »

"extc global get" zeigt mir richtig "dc=meindomain\\,dc=local". Nach dem Sepeichern ist dann der Eintrag wieder weg und steht wieder nur "dc=meindomain".

Die Ausgabe von dem Befehl "extc template get template /etc/mail/sendmail.mc | grep -i confLDAP_DEFAULT_SPEC"
zeigt: unknown parameter ´|´.

khani
Beiträge: 32
Registriert: Do 04.06.2009, 15:09

Beitrag von khani »

"extc global get" zeigt alles richtig: "dc=meindomain\\,dc=local"

Benutzeravatar
Erik
Securepoint
Beiträge: 1480
Registriert: Fr 07.11.2008, 11:50

Beitrag von Erik »

khani hat geschrieben:"extc global get" zeigt mir richtig "dc=meindomain\\,dc=local". Nach dem Sepeichern ist dann der Eintrag wieder weg und steht wieder nur "dc=meindomain".
Genau. Deswegen passen Sie erst alle Einstellungen ind er GUI an, speichern diese und führen zum Schluss den "extc global set..."-Befehl aus.
khani hat geschrieben: Die Ausgabe von dem Befehl "extc template get template /etc/mail/sendmail.mc | grep -i confLDAP_DEFAULT_SPEC"
zeigt: unknown parameter ´|´.
Ich schrob, dass Sie diesen Befehl als "root"-Benutzer ausführen müssen...

Wenn Sie sowieso einmal auf der root-Konsole sind, würde mich auch mal der Output von

Code: Alles auswählen

# cat /etc/mail/sendmail.mc | grep -i confLDAP_DEFAULT_SPEC

interessieren.

khani
Beiträge: 32
Registriert: Do 04.06.2009, 15:09

Beitrag von khani »

ich melde mich am Browser mit root an und dann rufe ich CLI auf. Ist es richtig?

Benutzeravatar
Erik
Securepoint
Beiträge: 1480
Registriert: Fr 07.11.2008, 11:50

Beitrag von Erik »

Nein Sie melden sich auf der Konsole (= über SSH, z.b. mit "putty") mit dem root-Benutzer an.

khani
Beiträge: 32
Registriert: Do 04.06.2009, 15:09

Beitrag von khani »

Der Befehl: spcli extc template get template /etc/mail/sendmail.mc | grep -i confLDAP_DEFAULT_SPEC

zeigtt das :

define(`confLDAP_DEFAULT_SPEC', `-h {{print regex(@GLOB_LDAP_URI,"s@ldap?://@@")}} -b DC={{print regex(@GLOB_LDAP_DOMAIN,"s@\\\\.@,DC=@g")}} -d cn={{print @GLOB_LDAP_USER}},cn=Users,dc={{print regex(@GLOB_LDAP_DOMAIN,"s@\\\\.@,dc=@g")}} -R -M simple -P /etc/mail/ad_password')


und "cat /etc/mail/sendmail.mc | grep -i confLDAP_DEFAULT_SPEC" zeigt garnicht.

Benutzeravatar
Erik
Securepoint
Beiträge: 1480
Registriert: Fr 07.11.2008, 11:50

Beitrag von Erik »

Das ist interessant. Sind Sie sicher, dass die LDAP-Validierung aktiviert ist? Welchen Wert hat das Feld "E-Mail-Adresse überprüfen" unter "Anwendungen" -> "Mailrelay" -> "SMTP-Routen"?
Welchen Wert gibt die CLI aus, wenn Sie diesen Befehl ausführen?

Code: Alles auswählen

extc value get variable ENABLE_LDAP

khani
Beiträge: 32
Registriert: Do 04.06.2009, 15:09

Beitrag von khani »

Entschuldigen: LDAP-VAlidierung war nicht aktiv. Das wirde angezeigt:

define(`confLDAP_DEFAULT_SPEC', `-h xxx.xxx.xxx.xxx -b DC=MEINDOMAIN -d cn=USERNAME,cn=Users,dc=MEINDOMAIN -R -M simple -P /etc/mail/ad_password')

und

smtpd ENABLE_LDAP1

Benutzeravatar
Erik
Securepoint
Beiträge: 1480
Registriert: Fr 07.11.2008, 11:50

Beitrag von Erik »

Da fehlt doch der Teil mit "DC=local" hinter "DC=MEINEDOMAIN"? Oder hat er nur copy/paste nicht überlebt.
Jetzt lassen Sie die "Externe Authentifizierung" im Webinterface mal in Ruhe, führen den CLI-Befehl aus:

Code: Alles auswählen

extc global set variable GLOB_LDAP_BASE value "dc=securepoint\\,dc=local"
(ersetzen Sie natürlich die Domain) und starten dann unter Anwendungen -> Anwendungsstatus den Dienst "Mailrelay" neu.

khani
Beiträge: 32
Registriert: Do 04.06.2009, 15:09

Beitrag von khani »

define(`confLDAP_DEFAULT_SPEC', `-h xxx.xxx.xxx.xxx -b DC=MEINDOMAIN,DC=local -d cn=USERNAME,cn=Users,dc=MEINDOMAIN,dc=local -R -M simple -P /etc/mail/ad_password')

Die Meldungen werden weiterhin angezeigt, die Mails werden zugestellt.

Neue Meldung wird bei Mailq angezeigt:

Mrelay: Warning: first argument in [IPC] mailer must be TCP or FILE

Gesperrt