Ich hab noch gaaanz alte Systeme (+10 Jahre) am Start und wollte nicht auf dovecot umstellen.
Falls jemand danach suchen sollte, die "alte" Kombination von Programmen ist weiter nutzbar, wenn angepasst (Debian 9+). Hintergrund: froxlor speichert in seiner DB die Passwörter nach konfiguration als password und password_enc ab, letzteres ist verschlüsselt. Der hash lässt erkennen, womit gearbeitet wurde - ein einfacher String ist ein Uralt-crypt-Passwort, aktuell sollte sowas wie $5$ am Anfang stehen, was auf SHA-256 verweisst.
Werden die Klartextpasswörter gelöscht, ist die alte Konfiguration nicht mehr verwendbar. Wäre aber mal sinnvoll, die rauszuwerfen. Folgendes ist anzupassen:
Damit wird courier angewiesen, für pop und imap verschlüsslte PW auszulesen. Die SHA-256 lib ist bei Debian inclusive. crypt fliegt raus. Fertig ist der Mailabruf.
Tricky ist die Anpassung von postfix. Die dort benutzte Bibliothek für sasl hat Einschränkungen und ist der letztlich der Grund für Probleme. Lässt sich beheben mit folgender /etc/postfix/sasl/smtpd.conf:
In der Datei stand vorher pwcheck_method: auxprop mit sql plugin drin. Das Problem ist: auxprop kann nur Klartext. Aber dafür erlaubt auxprop die Verwendung von cram-md5 und digest-md5 zum hashen auf Clientseite, früher war daher die mech_list um diese beiden ergänzt. Bedeutet: der Client verbindet sich unverschlüsselt und ohne TLS, aber hasht noch auf dem Clientsystem das Passwort mit md5 und übermittelt dann nur den hash über den unverschlüsselten Kanal. Bei TLS kann man sich das sparen - erst wird der Kanal abgesichert, dann kann das PW unverschlüsselt geschickt werden und wird auf Serverseite gehasht und dann verglichen - das erledigt der authdaemond. auxprop kann das nicht.
Die Mechlist wird dem Client übermittelt. Ganz alte Accounts haben evtl. noch Clienthashes und kein SSL eingeschaltet, die müssen dann umstellen auf STARTTLS mit Klartext - gilt aber nur für den Mailversand. Klartext bedeutet wie gesagt nur, das der Thunderbird/Outlook/etc. das Passwort ungehasht schickt, der authdaemond hasht das und vergleicht dann diesen hash mit dem in der froxlor Datenbank - da steht aber nix mehr im Klartext drin.
Passwort-Wechsel ist für die User über Roundcube wie gewohnt möglich. In der DB könnt ihr sehen wie der Hash sich ändert.
Question
hoschi
Ich hab noch gaaanz alte Systeme (+10 Jahre) am Start und wollte nicht auf dovecot umstellen.
Falls jemand danach suchen sollte, die "alte" Kombination von Programmen ist weiter nutzbar, wenn angepasst (Debian 9+). Hintergrund: froxlor speichert in seiner DB die Passwörter nach konfiguration als password und password_enc ab, letzteres ist verschlüsselt. Der hash lässt erkennen, womit gearbeitet wurde - ein einfacher String ist ein Uralt-crypt-Passwort, aktuell sollte sowas wie $5$ am Anfang stehen, was auf SHA-256 verweisst.
Werden die Klartextpasswörter gelöscht, ist die alte Konfiguration nicht mehr verwendbar. Wäre aber mal sinnvoll, die rauszuwerfen. Folgendes ist anzupassen:
/etc/courier/authmysqlrc:
MYSQL_USER_TABLE mail_users MYSQL_CRYPT_PWFIELD password_enc #MYSQL_CRYPT_PWFIELD crypt
Damit wird courier angewiesen, für pop und imap verschlüsslte PW auszulesen. Die SHA-256 lib ist bei Debian inclusive. crypt fliegt raus. Fertig ist der Mailabruf.
Tricky ist die Anpassung von postfix. Die dort benutzte Bibliothek für sasl hat Einschränkungen und ist der letztlich der Grund für Probleme. Lässt sich beheben mit folgender /etc/postfix/sasl/smtpd.conf:
pwcheck_method: authdaemond authdaemond_path: /run/courier/authdaemon/socket mech_list: plain login
In der Datei stand vorher pwcheck_method: auxprop mit sql plugin drin. Das Problem ist: auxprop kann nur Klartext. Aber dafür erlaubt auxprop die Verwendung von cram-md5 und digest-md5 zum hashen auf Clientseite, früher war daher die mech_list um diese beiden ergänzt. Bedeutet: der Client verbindet sich unverschlüsselt und ohne TLS, aber hasht noch auf dem Clientsystem das Passwort mit md5 und übermittelt dann nur den hash über den unverschlüsselten Kanal. Bei TLS kann man sich das sparen - erst wird der Kanal abgesichert, dann kann das PW unverschlüsselt geschickt werden und wird auf Serverseite gehasht und dann verglichen - das erledigt der authdaemond. auxprop kann das nicht.
Die Mechlist wird dem Client übermittelt. Ganz alte Accounts haben evtl. noch Clienthashes und kein SSL eingeschaltet, die müssen dann umstellen auf STARTTLS mit Klartext - gilt aber nur für den Mailversand. Klartext bedeutet wie gesagt nur, das der Thunderbird/Outlook/etc. das Passwort ungehasht schickt, der authdaemond hasht das und vergleicht dann diesen hash mit dem in der froxlor Datenbank - da steht aber nix mehr im Klartext drin.
Passwort-Wechsel ist für die User über Roundcube wie gewohnt möglich. In der DB könnt ihr sehen wie der Hash sich ändert.
0 answers to this question
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now