Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung |
dovecot [20/11/2019 - 15:00] – thommie3 | dovecot [05/03/2024 - 10:52] (aktuell) – Externe Bearbeitung 127.0.0.1 |
---|
| =====User anlegen ===== |
| |
| **Verfügbare Password Hashes testen** |
| |
| ''doveadm pw -l '' |
| |
| Dovecot selber kann Blowfish (BLF-CRYPT), allerdings nicht die glibc, die in Ubuntu Server 14 bis 18 verbaut war(siehe auch [[https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1349252|https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1349252]]). Das ist Ubuntu 20 mit GLIBC 2.31 gelöst. |
| |
| Beispiele zum Erzeugen eines Hashes: |
| |
| mit blowfish (blf-crypt) |
| |
| ''doveadm pw -s BLF-CRYPT -u thomas.rother@miteinander-esslingen.de -p XXXXXxxxxxx '' |
| |
| mit SHA512 |
| |
| ''doveadm pw -s SHA512-CRYPT -u thomas.rother@miteinander-esslingen.de -p XXXXXxxxxxx '' |
| |
| Vom Ergebnis-String alles ab $6$ bzw. $2y$ in die Datenbank schreiben |
| |
| **Login-Test** |
| |
| ''doveadm pw -t '{SHA512-CRYPT}$hashash' -p "xxxxxxxxxxx" (verified)'' |
| |
| ''doveadm pw -t '{BLF-CRYPT}$2y$hashash' -p "xxxxxxxxxxx" (verified)'' |
| |
| Oder bei Fehler |
| |
| ''Fatal: reverse password verification check failed: Password mismatch'' |
| |
| |
| Sobald BCRYPT mal tut: [[https://kaworu.ch/blog/2016/04/20/strong-crypt-scheme-with-dovecot-postfixadmin-and-roundcube/|https://kaworu.ch/blog/2016/04/20/strong-crypt-scheme-with-dovecot-postfixadmin-and-roundcube/]] |
| |
====== Grundkonfiguration ====== | ====== Grundkonfiguration ====== |
| |
| |
''# password query including userdb info in one request (prefetch) password_query = \ SELECT userid AS user, password, \ home AS userdb_home, uid AS userdb_uid, gid AS userdb_gid \ FROM users WHERE userid = '%n' AND domain = 'netzwissen.de' '' | ''# password query including userdb info in one request (prefetch) password_query = \ SELECT userid AS user, password, \ home AS userdb_home, uid AS userdb_uid, gid AS userdb_gid \ FROM users WHERE userid = '%n' AND domain = 'netzwissen.de' '' |
===== Neuen User anlegen und Passwort Hash erzeugen ===== | |
| |
Dovecot selber kannt auch Blowfish (BLF-CRYPT), allerdings nicht die glibc, die in Ubuntu Server 14 bis 18 verbaut ist. Siehe auch [[https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1349252|https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1349252]] | ===== Wieso Port 587 und 143 mit STARTTLS? ===== |
| |
**Verfügbare Hashes testen** | (Zitat Thomas Leister) |
| |
Liste der verfügbaren Hashes (abhängig von glibc) | //Postfix verwendet Port 587 für die Verbindung zu MUAs (Mail User Agents - “Mailprogramme”), weil Port 25 nur für den Transfer der E-Mails zwischen den Servern zuständig sein soll. Während auf Port 25 von jedem Sender E-Mails ohne Authentifizierung empfangen werden können, wird auf Port 587 eine vorherige Authentifizierung des Endnutzers erzwungen. Port 587 wird daher auch als “Submission”-Port bezeichnet und ist üblicherweise in Firewalls freigeschaltet (siehe auch: [[https://tools.ietf.org/html/rfc6409|RFC 6409 Submission]]). Port 25 hingegen wird beispielsweise in Unternehmensfirewalls und von manchen DSL-Routern blockiert, um das Spam-Problem einzudämmen. Aus einem solchen Netz können dann nur noch E-Mails zum zuständigen Mailserver gesendet werden - nicht mehr an jeden beliebigen Mailserver direkt. Da 587 als “universeller” Port (mit und ohne TLS-Verschlüsselung) definiert wurde, wird hier STARTTLS eingesetzt. Der ehem. “nur-TLS”-Port 465 ist nicht mehr als Standard festgelegt!// |
| |
''doveadm pw -l '' | //Für Dovecot verwende ich ebenfalls einen STARTTLS-Port. Dieser ist als Port 143 in [[https://tools.ietf.org/html/rfc3501|RFC 3501]] definiert. Prinzipiell ließe sich zwar als “TLS only” Port der weiterhin spezifizierte “imaps”-Port 993 verwenden, aber aus Gründen der Einheitlichkeit (und weil auch mit STARTTLS Verschlüsselung erzwungen werden kann) habe ich mich für 143 entschieden.// |
| |
Beispiele zum Erzeugen eines Hashes: | |
| |
blowfish (blf-crypt) | |
| |
''doveadm pw -s BLF-CRYPT -p secret '' | |
| |
SHA512 | |
| |
''doveadm pw -s SHA512-CRYPT -u thomas.rother@miteinander-esslingen.de -p XXXXXxxxxxx '' | //Kurz: Die Ports habe ich aus Abwägungen bezüglich der geltenden IANA-Standards und der Einheitlichkeit gewählt. Durch den Einsatz von STARTTLS entstehen (bei meiner Konfiguration) keine Nachteile.// |
| |
Vom Ergebnis-String alles ab $6$… in die DB schreiben | |
| |
**Login-Test** | |
| |
doveadm pw -t '{SHA512-CRYPT}$xxxxxxxxxxxxxxxxxxxx' -p "xxxxxxxxxxxxxxxxx" (verified) | |
| |
Sobald BCRYPT mal tut: [[https://kaworu.ch/blog/2016/04/20/strong-crypt-scheme-with-dovecot-postfixadmin-and-roundcube/|https://kaworu.ch/blog/2016/04/20/strong-crypt-scheme-with-dovecot-postfixadmin-and-roundcube/]] | |
| |