Postfix / SMTP-AUTH

Dieses Thema im Forum "Webserver (Software): Linux, Unix, etc." wurde erstellt von netzmeister, 31. März 2004.

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. netzmeister

    netzmeister New Member

    Registriert seit:
    12. Januar 2002
    Beiträge:
    56
    Hi!

    Ich habe auf einer Debian Woody-Maschine Postfix 2.0.18, Cyrus-SASL 2.1.18 und den Postfix-TLS-Patch installiert.

    Gedacht ist die Anbindung an eine MySQL-Datenbank, deren Schema ich leider nicht mehr beeinflussen kann, so dass dort nur gecryptete Passworte gespeichert werden.

    Mein Problem ist nun SMTP-AUTH, dass ich einfach nicht ans Laufen bekomme. Alles andere funktioniert problemlos.

    Wenn ich in /usr/local/lib/sasl2/smtpd.conf als pwcheck den auxprop in Verbindung mit dem sql-Plugin nehme, funktioniert das nur, wenn ich im SQL-Query auf ein testweise hinzugefügtes Klartextfeld verweise, andernfalls gibts "auth failed". Dieser Weg scheidet also aus.

    Mein zweiter Versuch war über saslauthd und pam_mysql. Dort habe ich aber dann das Problem, dass in der Query der Hostpart der Anmeldedaten ignoriert wird ("user" statt "user@domain.tld"). Ansonsten würde dieser Weg aber klappen, auch mit gecrypteten PW.

    Laut diverser Google-Recherchen bin ich da wohl nicht der einzig Betroffene.

    Gibts irgendeine Abhilfe für dieses Problem? Fakt ist jedenfalls, dass es auf jeden Fall mit den gecrypteten PW funktionieren muss.

    Wäre toll, wenn jemand was dazu einfallen würde!

    Vielen Dank.

    Gruss,
    Alexander
     
  2. Doomshammer

    Doomshammer Eingetragener Provider

    Registriert seit:
    26. Februar 2004
    Beiträge:
    5
    Firmenname:
    neessen.net - Webhos...
    Anbieterprofil:
    Klick
    Der Eintrag in der /etc/pam.d/smtp sollte in etwa so aussehen:
    auth sufficient pam_mysql.so user=postfix passwd=geheim host=localhost db=maildb table=users usercolumn=user passwdcolumn=plainpass crypt=1 <-- auf 1 oder 0 setzen
    account required pam_mysql.so user=postfix passwd=geheim host=localhost db=mail table=users usercolumn=user passwdcolumn=plainpass crypt=1

    In der authmysqlrc kannst Du den SELECT-CLAUSE setzen:
    MYSQL_SELECT_CLAUSE SELECT user, cryptpass, plainpass, uid, gid, home, maildir, "", name FROM users WHERE user = "$(local_part)" OR address = "$(local_part)@$(domain)"
     
  3. netzmeister

    netzmeister New Member

    Registriert seit:
    12. Januar 2002
    Beiträge:
    56
    Meine PAM-Einträge sind schon korrekt, damit würde es ja auch funktionieren, aber ... Beispiel:

    ich melde mich am SMTP-Server mit User "user@domain.tld" und Passwort "password" an. Bei der Authentifizierung über PAM sieht die Query an MySQL dann allerdings so aus: "select <passwdcolumn> from <table> where <usercolumn> = 'user'

    Das @domain.tld wird bei der Abfrage unterschlagen.

    Und die authmysqlrc hat ja nur was mit dem IMAP-Server zu tun; das ist ja eine andere Baustelle, die bei mir funktioniert.

    Trotzdme Danke.

    Gruss,
    Alexander
     
Status des Themas:
Es sind keine weiteren Antworten möglich.

Diese Seite empfehlen