Cyrus SASL schneidet E-Mail Adresse als Loginnamen ab

Postfix, QMail, Sendmail, Dovecot, Cyrus, Courier, Anti-Spam
web-gear
Posts: 59
Joined: 2003-03-15 00:25

Cyrus SASL schneidet E-Mail Adresse als Loginnamen ab

Post by web-gear » 2003-09-22 17:38

Hi,

ich habe ein Problem mit Cyrus SASL: Es arbeitet einwandfrei (Postfix, Courier IMAP,
Cyrus SASL, alles mit MySQL Support), aber wenn ich mich mit einer E-Mail Adresseals loginnamen einloggen will, z.B. username@example.com, schneidet Cyrus SASL den namen so ab, das nur noch das Prefix, also alles vor dem "@", im Beispiel "username" übrig bleibt.

Ich brauche aber wg. Postfix Accounts mit E-Mail Adresse als Username für den Login (da alles über virtual mit MySQL läuft).

Logs (ich wollte mich in den Account mit "hs@ag.vu" als Username einloggen):

Code: Select all

Sep 22 16:28:31 linux postfix/smtpd[7929]: mysql auxprop plugin has been requested
Sep 22 16:28:31 linux postfix/smtpd[7929]: mysql plugin Parse the username hs
Sep 22 16:28:31 linux postfix/smtpd[7929]: mysql plugin try and connect to a host
Sep 22 16:28:31 linux postfix/smtpd[7929]: mysql plugin trying to connect to localhost
Sep 22 16:28:32 linux postfix/smtpd[7929]: mysql plugin create statement from userPassword hs mail.web-gear.com
Sep 22 16:28:32 linux postfix/smtpd[7929]: mysql plugin doing query select userPassword from mailbox where mb_address =
'hs' and mb_status_user = 1 AND mb_status_system = 1
Sep 22 16:28:32 linux postfix/smtpd[7929]: mysql plugin create statement from cmusaslsecretCRAM-MD5 hs mail.web-gear.com
Sep 22 16:28:32 linux postfix/smtpd[7929]: mysql plugin doing query select cmusaslsecretCRAM-MD5 from mailbox where
mb_address = 'hs' and mb_status_user = 1 AND mb_status_system = 1
Sep 22 16:28:32 linux postfix/smtpd[7929]: mysql plugin Parse the username hs
Sep 22 16:28:32 linux postfix/smtpd[7929]: mysql plugin try and connect to a host
Sep 22 16:28:32 linux postfix/smtpd[7929]: mysql plugin trying to connect to localhost
Sep 22 16:28:32 linux postfix/smtpd[7929]: warning: SASL authentication failure: no secret in database
Sep 22 16:28:32 linux postfix/smtpd[7929]: warning: pD9523E06.dip.t-dialin.net[217.82.62.6]: SASL CRAM-MD5 authentication
failed
Meine smtpd.conf:

Code: Select all

pwcheck_method: auxprop
auxprop_plugin: mysql
mech_list: LOGIN PLAIN DIGEST-MD5 CRAM-MD5
mysql_user: XXXXXX
mysql_passwd: XXXXXX
mysql_hostnames: localhost
mysql_database: XXXXXX
mysql_statement: select %p from mailbox where mb_address = '%u' and mb_status_user = 1 AND mb_status_system = 1
mysql_verbose: true


Ich habe auch

Code: Select all

mysql_statement: select %p from mailbox where mb_address = '%u@%r' and mb_status_user = 1 AND mb_status_system = 1
probiert aber das für nur den Namen meines Mailservers hinzu.

Was soll ich jetzt machen? Kann ich das bei Cyrus nicht irgendwie abschalten bzw. aktivieren, das auch E.Mail Adressen unterstützt werden??

Vielen Dank!!!


Grüße,

Hermann Stainer

majortermi
Userprojekt
Userprojekt
Posts: 930
Joined: 2002-06-17 16:09

Re: Cyrus SASL schneidet E-Mail Adresse als Loginnamen ab

Post by majortermi » 2003-09-22 20:03

Ich denke, das was du willst, geht so nicht. Für einen Webmailer könntest du z.B. noch ein Mapping über eine Datenbank realisieren, bei direkten IMAP-Zugriffen, wohl nicht. Entweder du legst alle Benutzer-Accounts in eine Domain (und erlaubst dann nur Weiterleitungen auf diese), oder noch besser, du vergibst generische Benutzernamen (also z.B. "m0001", "m0002", usw.).

Wenn du unbedingt Domain und Localpart im Benutzernamen haben willst, könntest du auch Benutzernamen in der Form "localpart_at_domain" vergeben, das sollte auch noch eine recht einfach Lösung sein.
Erst nachlesen, dann nachdenken, dann nachfragen... :)
Warum man sich an diese Reihenfolge halten sollte...

web-gear
Posts: 59
Joined: 2003-03-15 00:25

Re: Cyrus SASL schneidet E-Mail Adresse als Loginnamen ab

Post by web-gear » 2003-09-22 21:11

MajorTermi wrote:Ich denke, das was du willst, geht so nicht. Für einen Webmailer könntest du z.B. noch ein Mapping über eine Datenbank realisieren, bei direkten IMAP-Zugriffen, wohl nicht. Entweder du legst alle Benutzer-Accounts in eine Domain (und erlaubst dann nur Weiterleitungen auf diese), oder noch besser, du vergibst generische Benutzernamen (also z.B. "m0001", "m0002", usw.).

Wenn du unbedingt Domain und Localpart im Benutzernamen haben willst, könntest du auch Benutzernamen in der Form "localpart_at_domain" vergeben, das sollte auch noch eine recht einfach Lösung sein.
Hi,

erstmal danke für Deine Hilfe.

Das mit den generischen Benutzernamen hatte ich ursprünglich auch, weil ich Dir nur zustimmen kann, dass das die beste Lösung wäre.

Allerdings lässte das wie gesagt Postfix meines Wissens nicht zu, da dort - möchte man per virtual multiple Domains realisieren - der Benutzername die Mail-Adresse sein muss, da man die Mail-Adresse für eine Mailbox nirgens gesondert einstellen kann, zumindest wäre mir das neu.

Deswegen das Dilemma :-(
Was geht, ist unterschiedliche Benutzername fürs Mail verschicken und Empfangen, aber wie viele Mail Clients unterstützen das und ganz abgesehen davon kann ich das den Leuten, für die der Mailserver mal gedacht sit, nicht zumuten.

Es muss eine Form des Benutzernamens sowohl für SASL Auth als auch für Postfix klappen. Welche Form das ist, ist mir eigentlich ziemlich egal.
Generisch im Stile "m123" wäre schön, muss aber net sein.

BTW: Laut SASL Auth Docs könte das mit dem "%r" eigentlich irgendwie klappen, aber bei mir ist dass nicht der Fall. Wieso greift es auch im Usernamen ein, das verstehe ich sowieso nicht.

MfG
Hermann