PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Postfix & dovecot, SMTP Auth mit Kerberos



JAF
26.05.09, 22:05
hallo,

hat das jemand schon einmal versucht?
ich moechte es gerne mit einer testumgebung (debian 5.0 / winxp client & thunderbird) versuchen.

der client fordert das korrekte ticket an, gibt es an seinen cache und (vermutlich) dann auch an postfix/dovecot.

jedoch meldet dovecot im debug modus, "wrong principal", aber ich kann einfach keinen fehler finden. auszug aus logdatei:


May 24 18:55:47 testsvr postfix/smtpd[6714]: connect from winxp.testdomain.local[10.0.0.2]
May 24 18:55:47 testsvr dovecot: auth(default): new auth connection: pid=6714
May 24 18:55:47 testsvr dovecot: auth(default): client in: AUTH#0117#011GSSAPI#011service=smtp#011nologin#011 resp=YIICTAYJKoZIhvcSAQICAQBuggI7MIICN6ADAgEFoQMCA Q6iBwMFACAAAACjggFbYYIBVzCCAVOgAwIBBaESGxBURVNURE9 NQUlOLkxPQ0FMohowGKADAgEBoREwDxsEc210cBsHdGVzdHN2c qOCARowggEWoAMCARehAwIBA6KCAQgEggEENJArggOeumR+YTl sQGBjaSOlNNKu9NmQd6kGwSdreeP92I+g7nhujcBmoedZ5FdBP dA8oMzjp8OIuyOsOgXtEmnaJUxnTGXQ9IvooLHzNVsX59lfK5r 7PIC6feAaee/CVLwllzLKEKLSuCCgkr0smuqF0SGh7qwHwuLIq6eE3RP+ubyAD BM9TicAzxGQOkgNxu/3xWkTU1idFJL+mK/0PspBM+YQkmFune58uRPQ0w6+GulnQpYCxfGLt6Sq1Cj6yGa51 K7jpGYDZKlA3/3UbEcGHVpc0A17s6TxPziZrF0Xv7LM7LyhzdRTbaxFbEbCtNlM yjxRf4nQstxPKOV7EoTm5bSkgcIwgb+gAwIBF6KBtwSBtJxIqe liEJdVH1KobMbdKOCncl1Rk7kB7q8aUXVq2XmyX0W5GQXzo8KE ZNeJjU69lEB08hWopmsP7LTeq/aQrz2GGf2BrR/tBcIkmvoRkogPsiSKa9gOUNbzhKlwAZj7Z0kWPJT7LwVVD/+6qgCgLruUC9qQd6hx1ZqZUHgSoVOeq7vrNKJaG5bMn2k5u8z2 ZV9Pi9sGG6Yo8snJ/VjTmJibgCTcpSxlvvRXASvEt5G3xGSxYg==
May 24 18:55:47 testsvr dovecot: auth(default): gssapi(?): Obtaining credentials for smtp@testsvr.testdomain.local
May 24 18:55:47 testsvr dovecot: auth(default): gssapi(?): While processing incoming data: Unspecified GSS failure. Minor code may provide more information
May 24 18:55:47 testsvr dovecot: auth(default): gssapi(?): While processing incoming data: Wrong principal in request
May 24 18:55:48 testsvr postfix/smtpd[6714]: warning: winxp.testdomain.local[10.0.0.2]: SASL GSSAPI authentication failed:
May 24 18:55:48 testsvr dovecot: auth(default): client out: FAIL#0117
May 24 18:55:48 testsvr postfix/smtpd[6714]: NOQUEUE: reject: RCPT from winxp.testdomain.local[10.0.0.2]: 554 5.7.1 <1@2.at>: Relay access denied; from=<testuser@testdomain.local> to=<1@2.at> proto=ESMTP helo=<[10.0.0.2]>


was mir nur etwas eigenartig vorkommt:


"Obtaining credentials for smtp@testsvr.testdomain.local"

sollte das eigentlich nicht "smtp/testsvr.testdomain.local" heissen?

das keytab file fuer dovecot enthaelt natuerlich auch "smtp/testsvr.testdomain.local" und "smtp/testsvr".

hat jemand ideen?

hessijens
27.05.09, 09:06
Ich kann nicht sehr viel dazu beitragen, da ich statt dovecot den cyrus Server verwende, aber laut Fehlermeldungen tippe ich mal, das Devocat die keytab nicht findet/öffen kann oder das Devocat den falschen Prinzipal (eben nicht "smtp@testsvr.testdomain.local") benutzt.


"Obtaining credentials for smtp@testsvr.testdomain.local"

Das bedeutet, dass Dovecot die Kerberos Anfrage erhalten hat und nun sich selbst authentisieren muss. Auf dem Client solltest Du mittels klist nun einen Eintrag für "smtp@testsvr.testdomain.local" haben.


Unspecified GSS failure. Minor code may provide more information

Ist die Fehlermeldung (bekannt durch cyrus). Devocat kann sich aufgrund zu weniger Information nicht gegenüber dem Client authentisieren. Daher meine o.a. Vermutung. Bei mir lag es an den Rechten der keytab, es könnte aber auch an der devocat Konfiguration liegen (Ist "smtp@testsvr.testdomain.local" korrekt konfiguriert?).

JAF
27.05.09, 10:10
mit klist (am windows) sehe ich das ticket:


smtp/testsvr.testdomain.local@TESTDOMAIN.LOCAL
und nicht

smtp@testsvr.testdomain.local

die keytab, die ich verwende wurde nur fur dovecot erzeugt und liegt in /etc/dovecot/keytab. habe ich im config-file von dovecot angegeben, wo es das file findet. wenn ich das file verschiebe bekomme ich die fehlermeldung "file not found", also verwendet dovecot das scheinbar auch. ich habe es auch schon mit den zugriffsrechten 777 versucht.

im config file von dovecot kann ich aber nicht angeben - soweit ich gesehen habe -, welche Realm er verwenden soll. ich kann nur den hostnamen angeben für kerberos. habe diesen wert mit testsvr und testsvr.testdomain.local versucht, macht jedoch keinen unterscheid.

hessijens
27.05.09, 13:51
Ich glaube, es liegt am Service Principal. "smtp@testsvr.testdomain.local" ist der Service User, smtp/testsvr.testdomain.local@TESTDOMAIN.LOCAL das Service Principal,dass habe ich das hier zwar in der Eile durcheinandergeworfen, ist aber soweit schon richtig.

Nur smtp ist der Service von/für Postfix. Normalerweise habe ich zumindest für cyrus-imap auch die Service Principals pop/testsvr.testdomain.local@TESTDOMAIN.LOCAL bzw. imap/testsvr.testdomain.local@TESTDOMAIN.LOCAL bzw.
sieve/testsvr.testdomain.local@TESTDOMAIN.LOCAL

fehlen die oder braucht dovecot diese nicht? Hier fehlen mir leider die genauen Kentnisse.

JAF
27.05.09, 21:24
nun, ich möchte es im moment einmal nur fuer SMTP einrichten (IMAP & POP3 folgen später).

also brauche ich zur zeit imap/pop3 noch nicht. sieve ebenfalls.

von meiner seite aus kann ich im moment keinen fehler mehr finden. ist etwas eigenartig. noch irgendeine idee?

aber vielleicht allgemein mit IMAP/POP3 erstmal versuchen, oder?
mal sehen ob es da auch ähnlich macht oder funktioniert?

JAF
12.06.09, 08:42
hallo,

zur info:
IMAP & POP3 war/ist das selbe problem. (thunderbird & windows als client)

jedoch funktioniert es mit linux & evolution. also ist es vermutlich ein problem mit thunderbird (und/oder windows)

hessijens
12.06.09, 09:42
Ist die Variable network.negotiate-auth.trusted-uris (aboout:config) in der erweiterten Konfiguration von Thunderbird auf Dein REALM eingestellt?

JAF
12.06.09, 12:32
nicht die REALM, sondern der hostname gehoert dort hinein.

ist eingetragen. da kann jedoch nicht das problem liegen, da thunderbird das ticket anfordert -> sehe ich mit klist.