Zarafa smtp-auth via CRAM-MD5
Hallo zusammen,
nach tagelangen Kopfzerbrechen möchte ich mich nun an die Admin Kollegen wenden.
Mein Mailservers läuft auf Debian 7. Das Mailssystem ist, kann man sagen, Standard. Zarafa, Postfix auf Basis von MySQL und die diversen Filter.
Das System läuft auch jetzt schon Jahre stabil.
Nun benötige ich aber für smtp nicht nur die authentifizierungsmethode PLAIN-LOGIN sondern auch CRAM-MD5. Zur Authentifizierung für den Postfix kommt sasl (saslauthd) zum Einsatz.
Das funktioniert auch mit PLAIN-LOGIN, aber eben nicht mit CRAM-MD5.
Ich habe jetzt hier schon ein grundlegendes Verständnisproblem. Das liegt daran das sich das System bei Änderungen unlogisch verhält. Nach meinem Verständnis konfiguriere ich dies in der smtpd.conf. Allerdings funktioniert PLAIN-LOGIN auch ohne jegliche Einstellung in dieser Datei. Das kann ich mir ja noch erklären, in dem ich denke das sich Postfix dann mit den virtuellen maps begnügt, in denen die Abfrage der Datenbank konfiguriert ist. Aber warum macht dies dann Postfix nicht für CRAM-MD5? OK, weil es nicht konfiguriert ist. Aber warum funtioniert es mit PLAIN-LOGIN?
Ich würde es ja auch wieder wie unter der alten 6er Zarafa in der smtpd.conf konfigurieren. Aber auch das geht nicht weil die Datenbankabfrage so wie ich sie habe nicht mehr funktioniert bzw. kein Resultat bringt.
Datenbankabfrage:
sql_select: SELECT DISTINCT `objectid` FROM `objectproperty` WHERE objectid = (SELECT `objectid` FROM `objectproperty` WHERE `propname` = ‚loginname‘ AND `value` = ‚%u‘) AND `propname` = ‚password‘ AND `value` = CONCAT(SUBSTR(`value`, 1, 8), MD5(CONCAT(SUBSTR(`value`, 1, 8), ‚%p‘)))
Die Tabellen sind da... Das passt....
Aber es kommt dann der Fehler:
sql plugin create statement from userPassword xxxxxx xxxx
Jan 4 12:30:41 mx01 postfix/smtpd[6505]: sql plugin doing query SELECT DISTINCT `objectid` FROM `objectproperty` WHERE objectid = (SELECT `objectid` FROM `objectproperty` WHERE `propname` = ‚loginname‘ AND `value` = ‚xxxxxx‘) AND `propname` = ‚password‘ AND `value` = CONCAT(SUBSTR(`value`, 1, 8), MD5(CONCAT(SUBSTR(`value`, 1, 8), ‚userPassword‘)));
Jan 4 12:30:41 mx01 postfix/smtpd[6505]: sql plugin: no result found
Jan 4 12:30:41 mx01 postfix/smtpd[6505]: sql plugin create statement from cmusaslsecretCRAM-MD5 xxxxxx xxxx
Jan 4 12:30:41 mx01 postfix/smtpd[6505]: sql plugin doing query SELECT DISTINCT `objectid` FROM `objectproperty` WHERE objectid = (SELECT `objectid` FROM `objectproperty` WHERE `propname` = ‚loginname‘ AND `value` = ‚xxxxxx‘) AND `propname` = ‚password‘ AND `value` = CONCAT(SUBSTR(`value`, 1, 8), MD5(CONCAT(SUBSTR(`value`, 1, 8), ‚cmusaslsecretCRAM-MD5‘)));
Jan 4 12:30:41 mx01 postfix/smtpd[6505]: sql plugin: no result found
Jan 4 12:30:41 mx01 postfix/smtpd[6505]: commit transaction
Jan 4 12:30:41 mx01 postfix/smtpd[6505]: sql plugin Parse the username xxxxxx
Jan 4 12:30:41 mx01 postfix/smtpd[6505]: sql plugin try and connect to a host
Jan 4 12:30:41 mx01 postfix/smtpd[6505]: sql plugin trying to open db ‚xxxxx‘ on host ‚127.0.0.1‘
Er löst den Anmeldenamen noch auf, das sieht man. Aber mit dem Passwort kommt er nicht klar.
Hat jemand von euch noch eine Idee wie ich CRAM-MD5 integriere? Wie habt ihr das gelöst?
LG. Sven
nach tagelangen Kopfzerbrechen möchte ich mich nun an die Admin Kollegen wenden.
Mein Mailservers läuft auf Debian 7. Das Mailssystem ist, kann man sagen, Standard. Zarafa, Postfix auf Basis von MySQL und die diversen Filter.
Das System läuft auch jetzt schon Jahre stabil.
Nun benötige ich aber für smtp nicht nur die authentifizierungsmethode PLAIN-LOGIN sondern auch CRAM-MD5. Zur Authentifizierung für den Postfix kommt sasl (saslauthd) zum Einsatz.
Das funktioniert auch mit PLAIN-LOGIN, aber eben nicht mit CRAM-MD5.
Ich habe jetzt hier schon ein grundlegendes Verständnisproblem. Das liegt daran das sich das System bei Änderungen unlogisch verhält. Nach meinem Verständnis konfiguriere ich dies in der smtpd.conf. Allerdings funktioniert PLAIN-LOGIN auch ohne jegliche Einstellung in dieser Datei. Das kann ich mir ja noch erklären, in dem ich denke das sich Postfix dann mit den virtuellen maps begnügt, in denen die Abfrage der Datenbank konfiguriert ist. Aber warum macht dies dann Postfix nicht für CRAM-MD5? OK, weil es nicht konfiguriert ist. Aber warum funtioniert es mit PLAIN-LOGIN?
Ich würde es ja auch wieder wie unter der alten 6er Zarafa in der smtpd.conf konfigurieren. Aber auch das geht nicht weil die Datenbankabfrage so wie ich sie habe nicht mehr funktioniert bzw. kein Resultat bringt.
Datenbankabfrage:
sql_select: SELECT DISTINCT `objectid` FROM `objectproperty` WHERE objectid = (SELECT `objectid` FROM `objectproperty` WHERE `propname` = ‚loginname‘ AND `value` = ‚%u‘) AND `propname` = ‚password‘ AND `value` = CONCAT(SUBSTR(`value`, 1, 8), MD5(CONCAT(SUBSTR(`value`, 1, 8), ‚%p‘)))
Die Tabellen sind da... Das passt....
Aber es kommt dann der Fehler:
sql plugin create statement from userPassword xxxxxx xxxx
Jan 4 12:30:41 mx01 postfix/smtpd[6505]: sql plugin doing query SELECT DISTINCT `objectid` FROM `objectproperty` WHERE objectid = (SELECT `objectid` FROM `objectproperty` WHERE `propname` = ‚loginname‘ AND `value` = ‚xxxxxx‘) AND `propname` = ‚password‘ AND `value` = CONCAT(SUBSTR(`value`, 1, 8), MD5(CONCAT(SUBSTR(`value`, 1, 8), ‚userPassword‘)));
Jan 4 12:30:41 mx01 postfix/smtpd[6505]: sql plugin: no result found
Jan 4 12:30:41 mx01 postfix/smtpd[6505]: sql plugin create statement from cmusaslsecretCRAM-MD5 xxxxxx xxxx
Jan 4 12:30:41 mx01 postfix/smtpd[6505]: sql plugin doing query SELECT DISTINCT `objectid` FROM `objectproperty` WHERE objectid = (SELECT `objectid` FROM `objectproperty` WHERE `propname` = ‚loginname‘ AND `value` = ‚xxxxxx‘) AND `propname` = ‚password‘ AND `value` = CONCAT(SUBSTR(`value`, 1, 8), MD5(CONCAT(SUBSTR(`value`, 1, 8), ‚cmusaslsecretCRAM-MD5‘)));
Jan 4 12:30:41 mx01 postfix/smtpd[6505]: sql plugin: no result found
Jan 4 12:30:41 mx01 postfix/smtpd[6505]: commit transaction
Jan 4 12:30:41 mx01 postfix/smtpd[6505]: sql plugin Parse the username xxxxxx
Jan 4 12:30:41 mx01 postfix/smtpd[6505]: sql plugin try and connect to a host
Jan 4 12:30:41 mx01 postfix/smtpd[6505]: sql plugin trying to open db ‚xxxxx‘ on host ‚127.0.0.1‘
Er löst den Anmeldenamen noch auf, das sieht man. Aber mit dem Passwort kommt er nicht klar.
Hat jemand von euch noch eine Idee wie ich CRAM-MD5 integriere? Wie habt ihr das gelöst?
LG. Sven
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 325546
Url: https://administrator.de/forum/zarafa-smtp-auth-via-cram-md5-325546.html
Ausgedruckt am: 24.02.2025 um 01:02 Uhr
1 Kommentar