[postfix-users] Postfix SASL + Dovecot
Ich arbeite mich in meiner Freizeit durch das "Book of Postfix" und hab bereits viel neues dazulernen dürfen. Nun möchte ich das Wissen im kleinen Rahmen auch praktisch anwenden. Wie ich bereits vor Kurzem in der Mailingliste erwähnte, sollen unsere Firmenraids "Event Notifications" in Form einer eMail zu mir schicken.
Schnell wurde mir durch die Recherche im Buch bewusst, das auch für so ein relativ simples Vorhaben einige Dinge berücksichtigt werden müssen. Ich will natürlich ein offenes Relay vermeiden und da die RAIDs über unsere ADSL Verbindung nach außen kommunizieren und diese keine statische IP hat, möchte ich gerne SMTP-AUTH in meine MTA Konfiguration einbauen.
Das Buch erwähnt in 2. Kapiteln die Konfiguration mittels der Cyrus Bibliotheken, ich möchte es aber gerne mit Dovecot realisieren, da Dovecot auch im nächsten oder übernächsten Schritt als IMAP Server bei mir Verwendung finden soll und momentan wohl von vielen gegenüber anderen Lösungen präferiert wird.
Nun scheint der Konfigurationsansatz aber ein etwas anderer gegenüber Cyrus zu sein. Was mir noch nicht ganz klar geworden ist anhand der Dokumentationen die ich im Netz gefunden habe ist:
- muss Dovecot selbst auch installiert sein um SMTP-Auth mit Postfix darüber zu realisieren? (Bei Cyrus ist das ja nicht der Fall bei Dovecot hingegen ist es mir nicht ganz klar) - Wenn ich als smtpd_sasl_type = dovecot deklariere wo muss ich dann die Konfigurationsdatei anlegen in der ich u.a den Authentifizierungsmechanismus?
Wie so oft, danke für eure Zeit.
Grüße
Dennis
Am 08.12.2011 01:07 schrieb little.guitar@gmx.net:
- muss Dovecot selbst auch installiert sein um SMTP-Auth mit Postfix
darüber zu realisieren?
Ja, aber das heisst nicht, dass er auch als Ziel für mailboxen eingerichtet werden muss. Aber das ist nicht so kompliziert, so dass ich das empfehlen würde einfach gleich mit zu erledigen.
(Bei Cyrus ist das ja nicht der Fall bei Dovecot hingegen ist es mir nicht ganz klar)
- Wenn ich als smtpd_sasl_type
http://www.postfix.org/postconf.5.html#smtpd_sasl_type = dovecot deklariere wo muss ich dann die Konfigurationsdatei anlegen in der ich u.a den Authentifizierungsmechanismus?
Das konfiguriert man dann sowohl in dovecot als auch postfix.
Wie gut ist Dein Englisch? Hier wäre eine Anleitung: http://workaround.org/ispmail/squeeze
Ansonsten:
In der Konfig von Postfix konfigurierst Du alles, was mit der Kommunikation zwischen remote MTA/MUA, also dem Einliefernden zu tun hat. Ob TLS erzwungen wird, welche Verfahren Du zulässt, die ssl-keys etc. Ausserdem löst postfix die Empfängermailadresse auf eine mailbox auf, die als parameter dem dovecot delivery-agent übergeben wird.
In der Konfig von dovecot konfigurierst du, wie dovecot die user authentifizieren soll, welche pfade die mailboxen im dateisystem haben, etc.
Grüße, Florian
Am 08.12.2011 01:07, schrieb little.guitar@gmx.net:
Ich arbeite mich in meiner Freizeit durch das "Book of Postfix" und hab bereits viel neues dazulernen dürfen. Nun möchte ich das Wissen im kleinen Rahmen auch praktisch anwenden. Wie ich bereits vor Kurzem in der Mailingliste erwähnte, sollen unsere Firmenraids "Event Notifications" in Form einer eMail zu mir schicken.
Schnell wurde mir durch die Recherche im Buch bewusst, das auch für so ein relativ simples Vorhaben einige Dinge berücksichtigt werden müssen. Ich will natürlich ein offenes Relay vermeiden und da die RAIDs über unsere ADSL Verbindung nach außen kommunizieren und diese keine statische IP hat, möchte ich gerne SMTP-AUTH in meine MTA Konfiguration einbauen.
Das Buch erwähnt in 2. Kapiteln die Konfiguration mittels der Cyrus Bibliotheken, ich möchte es aber gerne mit Dovecot realisieren, da Dovecot auch im nächsten oder übernächsten Schritt als IMAP Server bei mir Verwendung finden soll und momentan wohl von vielen gegenüber anderen Lösungen präferiert wird.
Nun scheint der Konfigurationsansatz aber ein etwas anderer gegenüber Cyrus zu sein. Was mir noch nicht ganz klar geworden ist anhand der Dokumentationen die ich im Netz gefunden habe ist:
- muss Dovecot selbst auch installiert sein um SMTP-Auth mit Postfix
darüber zu realisieren? (Bei Cyrus ist das ja nicht der Fall bei Dovecot hingegen ist es mir nicht ganz klar)
- Wenn ich als smtpd_sasl_type
http://www.postfix.org/postconf.5.html#smtpd_sasl_type = dovecot deklariere wo muss ich dann die Konfigurationsdatei anlegen in der ich u.a den Authentifizierungsmechanismus?
Wie so oft, danke für eure Zeit.
Grüße
Dennis
-- Empfehlen Sie GMX DSL Ihren Freunden und Bekannten und wir belohnen Sie mit bis zu 50,- Euro! https://freundschaftswerbung.gmx.de
postfix-users mailing list postfix-users@de.postfix.org http://de.postfix.org/cgi-bin/mailman/listinfo/postfix-users
Hallo Dennis, es ehrt dich sehr dass du das mit dovecot machen willst, sasl mit dove erfordert die inst von dove. Wenn du aber nur dieses Monitoring Problem auth und smtp relay loesen willst reicht ein saslauthd mit pam
um postfix und dovecot zu erlernen wuerde ich einen testserver empfehlen, evtl auf einer virtual machine
* little.guitar@gmx.net little.guitar@gmx.net:
Was mir noch nicht ganz klar geworden ist anhand der Dokumentationen die ich im Netz gefunden habe ist:
- muss Dovecot selbst auch installiert sein um SMTP-Auth mit Postfix
darüber zu realisieren?
Ja, Du mußt dovecot installieren und es so konfigurieren, dass es einen auth socket bereitstellt, der für den user postfix les- und schreibbar ist.
Dann mußt Du Postfix sagen, es soll "smtpd_sasl_type = dovecot" nutzen und ihm über "smtpd_sasl_path = /pfad/zu/socket" mitteilen, wo es den 'auth socket' von dovecot findet.
Am besten ist es, Du packst den socket nach /var/spool/postfix/private/dovecot-auth und verweist mit smtpd_sasl_path = private/dovecot-auth darauf. Das klappt immer, auch wenn Postfix chrooted läuft.
(Bei Cyrus ist das ja nicht der Fall bei Dovecot hingegen ist es mir nicht ganz klar)
- Wenn ich als smtpd_sasl_type = dovecot deklariere wo muss ich dann die
Konfigurationsdatei anlegen in der ich u.a den Authentifizierungsmechanismus?
Das regelst Du in der Dovecot Konfiguration. grep da mal nach "plain".
p@rick
Danke zunächst mal an alle für das schnelle Feedback. Mit dem von Florian verlinkten Guide muss ich mich mal etwas näher auseinandersetzen. In jedem Fall sehr umfangreich geschrieben und "Roundcube" als Webmail Interface gefällt mir auch sehr gut, zumal ich bis dato nur Squirrelmail kannte, das vergleichsweise altbacken ausschaut.
Eine andere Frage, bezüglich der verschiedenen Authentifizierungsmechanismen:
Geh ich recht in der Annahme, das es bei der Vielzahl an Möglichkeiten die gebräuchlichste Methode ist, PLAIN LOGIN zu verwenden und die Übertragung dann mittels TLS zu verschlüsseln oder gibt es andere Mechanismen, die ähnliche Sicherheit bieten ohne die Kompatibilität zu den gängigen MUAs zu gefährden?
Wäre beispielsweise CRAM-MD5, DIGEST-MD5 eine Alternative oder erfüllt es aktuelle Sicherheitsanforderungen nicht ausreichend?
Grüße
Dennis
-------- Original-Nachricht -------- Datum: Thu, 8 Dec 2011 09:18:55 +0100 Von: Patrick Ben Koetter p@state-of-mind.de An: postfix-users@de.postfix.org Betreff: Re: [postfix-users] Postfix SASL + Dovecot
* little.guitar@gmx.net <little.guitar@gmx.net>:
Was mir noch nicht ganz klar geworden ist anhand der Dokumentationen
die
ich im Netz gefunden habe ist:
- muss Dovecot selbst auch installiert sein um SMTP-Auth mit Postfix
darüber zu realisieren?
Ja, Du mußt dovecot installieren und es so konfigurieren, dass es einen auth socket bereitstellt, der für den user postfix les- und schreibbar ist.
Dann mußt Du Postfix sagen, es soll "smtpd_sasl_type = dovecot" nutzen und ihm über "smtpd_sasl_path = /pfad/zu/socket" mitteilen, wo es den 'auth socket' von dovecot findet.
Am besten ist es, Du packst den socket nach /var/spool/postfix/private/dovecot-auth und verweist mit smtpd_sasl_path = private/dovecot-auth darauf. Das klappt immer, auch wenn Postfix chrooted läuft.
(Bei Cyrus ist das ja nicht der Fall bei Dovecot hingegen ist es mir
nicht
ganz klar)
- Wenn ich als smtpd_sasl_type = dovecot deklariere wo muss ich dann
die
Konfigurationsdatei anlegen in der ich u.a den Authentifizierungsmechanismus?
Das regelst Du in der Dovecot Konfiguration. grep da mal nach "plain".
p@rick
-- state of mind () Digitale Kommunikation
Franziskanerstraße 15 Telefon +49 89 3090 4664 81669 München Telefax +49 89 3090 4666
Amtsgericht München Partnerschaftsregister PR 563
postfix-users mailing list postfix-users@de.postfix.org http://de.postfix.org/cgi-bin/mailman/listinfo/postfix-users
Am 08.12.2011 14:54 schrieb Dennis Steinkamp:
Wäre beispielsweise CRAM-MD5, DIGEST-MD5 eine Alternative oder erfüllt es aktuelle Sicherheitsanforderungen nicht ausreichend?
Die Nachteile dieser Verfahren sind, dass die Passwörter der Benutzer dann im Klartext in der Datenbank auf dem Server liegen müssen.
Hintergrund:
Bei den PLAIN-Verfahren wird das Klartext passwort des Nutzers vom Server gegen den Hash in der Datenbank geprüft. Der Server wendet also den Hash-Algorithmus auf das ihm vom Client im Klartext gelieferte Passwort an.
Bei den Challenge-Response-Verfahren wird ein Hash über das Klartext passwort und ein Randomwert gebildet. Der Randomwert als Challenge an den Client geschickt und er aufgefordert mit dem ihm vorliegenden Passwort und dem Challenge eine Response zu berechnen. Stimmt das mit dem lokal berechneten überein ist der Client authentifiziert. Damit das Challenge jedesmal anders aussieht muss man das random immer neu erzeugt und mit dem klartext passwort verknüpft werden.
Grüße, Florian
* Dennis Steinkamp little.guitar@gmx.net:
Danke zunächst mal an alle für das schnelle Feedback. Mit dem von Florian verlinkten Guide muss ich mich mal etwas näher auseinandersetzen. In jedem Fall sehr umfangreich geschrieben und "Roundcube" als Webmail Interface gefällt mir auch sehr gut, zumal ich bis dato nur Squirrelmail kannte, das vergleichsweise altbacken ausschaut.
Eine andere Frage, bezüglich der verschiedenen Authentifizierungsmechanismen:
Geh ich recht in der Annahme, das es bei der Vielzahl an Möglichkeiten die gebräuchlichste Methode ist, PLAIN LOGIN zu verwenden und die Übertragung
ja
dann mittels TLS zu verschlüsseln oder gibt es andere Mechanismen, die
ja, genau
ähnliche Sicherheit bieten ohne die Kompatibilität zu den gängigen MUAs zu gefährden?
nein
Wäre beispielsweise CRAM-MD5, DIGEST-MD5 eine Alternative oder erfüllt es aktuelle Sicherheitsanforderungen nicht ausreichend?
IMO nicht. DIGEST-MD5 ist deprecated. CRAM-MD5 verlangt das pass als plaintext auf dem Server.
p@rick
On 12/08/2011 03:05 PM Patrick Ben Koetter wrote:
IMO nicht. DIGEST-MD5 ist deprecated. CRAM-MD5 verlangt das pass als plaintext auf dem Server.
Nein. Wenn das Passwort als CRAM-MD5 Hash in Dovecots 'passdb' hinterlegt ist, ist alles fein. Damit funktionieren dann die 'auth_mechanisms = cram-md5 login plain'.
Gruß Pascal
Am 08.12.2011 15:29 schrieb Pascal Volk:
On 12/08/2011 03:05 PM Patrick Ben Koetter wrote:
IMO nicht. DIGEST-MD5 ist deprecated. CRAM-MD5 verlangt das pass als plaintext auf dem Server.
Nein. Wenn das Passwort als CRAM-MD5 Hash in Dovecots 'passdb' hinterlegt ist, ist alles fein. Damit funktionieren dann die 'auth_mechanisms = cram-md5 login plain'.
dann wäre aber doch eine simple replay attacke möglich. Hast Du da Quellen wo man das nachlesen kann, denn das wiederspricht meinem Vetrständnis des Verfahrens.
Grüße, Florian
On 12/08/2011 03:46 PM Florian Streibelt wrote:
Am 08.12.2011 15:29 schrieb Pascal Volk:
Nein. Wenn das Passwort als CRAM-MD5 Hash in Dovecots 'passdb' hinterlegt ist, ist alles fein. Damit funktionieren dann die 'auth_mechanisms = cram-md5 login plain'.
dann wäre aber doch eine simple replay attacke möglich. Hast Du da Quellen wo man das nachlesen kann, denn das wiederspricht meinem Vetrständnis des Verfahrens.
Nein, ich kenne keine Doku zu dem Thema. Aber am Besten erfragst Du das auf der Dovecot Mailingliste oder in FreeNode/#dovecot. Timo kann Dir das mit Sicherheit erklären, oder passende Links liefern. Schließlich hat er es programmiert.
Gruß Pascal
Vielen Dank nochmal an alle für die pfeilschnellen, kompetenten Antworten. Ich werde mich mal nach etwas mehr Fachlektüre zu Dovecot umschauen.
Fürs erste realisiere ich mein Vorhaben eventuell wirklich mit saslauthd und pam bis ich mich etwas mehr mit der Materie auskenne.
Viele Grüße
Dennis
-------- Original-Nachricht --------
Datum: Thu, 08 Dec 2011 14:54:13 +0100 Von: "Dennis Steinkamp" little.guitar@gmx.net An: postfix-users@de.postfix.org, postfix-users@de.postfix.org Betreff: Re: [postfix-users] Postfix SASL + Dovecot
Danke zunächst mal an alle für das schnelle Feedback. Mit dem von Florian verlinkten Guide muss ich mich mal etwas näher auseinandersetzen. In jedem Fall sehr umfangreich geschrieben und "Roundcube" als Webmail Interface gefällt mir auch sehr gut, zumal ich bis dato nur Squirrelmail kannte, das vergleichsweise altbacken ausschaut.
Eine andere Frage, bezüglich der verschiedenen Authentifizierungsmechanismen:
Geh ich recht in der Annahme, das es bei der Vielzahl an Möglichkeiten die gebräuchlichste Methode ist, PLAIN LOGIN zu verwenden und die Übertragung dann mittels TLS zu verschlüsseln oder gibt es andere Mechanismen, die ähnliche Sicherheit bieten ohne die Kompatibilität zu den gängigen MUAs zu gefährden?
Wäre beispielsweise CRAM-MD5, DIGEST-MD5 eine Alternative oder erfüllt es aktuelle Sicherheitsanforderungen nicht ausreichend?
Grüße
Dennis
-------- Original-Nachricht -------- Datum: Thu, 8 Dec 2011 09:18:55 +0100 Von: Patrick Ben Koetter p@state-of-mind.de An: postfix-users@de.postfix.org Betreff: Re: [postfix-users] Postfix SASL + Dovecot
* little.guitar@gmx.net <little.guitar@gmx.net>:
Was mir noch nicht ganz klar geworden ist anhand der Dokumentationen
die
ich im Netz gefunden habe ist:
- muss Dovecot selbst auch installiert sein um SMTP-Auth mit Postfix
darüber zu realisieren?
Ja, Du mußt dovecot installieren und es so konfigurieren, dass es einen auth socket bereitstellt, der für den user postfix les- und schreibbar ist.
Dann mußt Du Postfix sagen, es soll "smtpd_sasl_type = dovecot" nutzen und ihm über "smtpd_sasl_path = /pfad/zu/socket" mitteilen, wo es den 'auth socket' von dovecot findet.
Am besten ist es, Du packst den socket nach /var/spool/postfix/private/dovecot-auth und verweist mit smtpd_sasl_path = private/dovecot-auth darauf. Das klappt immer, auch wenn Postfix
chrooted
läuft.
(Bei Cyrus ist das ja nicht der Fall bei Dovecot hingegen ist es mir
nicht
ganz klar)
- Wenn ich als smtpd_sasl_type = dovecot deklariere wo muss ich dann
die
Konfigurationsdatei anlegen in der ich u.a den Authentifizierungsmechanismus?
Das regelst Du in der Dovecot Konfiguration. grep da mal nach "plain".
p@rick
-- state of mind () Digitale Kommunikation
Franziskanerstraße 15 Telefon +49 89 3090 4664 81669 München Telefax +49 89 3090 4666
Amtsgericht München Partnerschaftsregister PR 563
postfix-users mailing list postfix-users@de.postfix.org http://de.postfix.org/cgi-bin/mailman/listinfo/postfix-users
-- Empfehlen Sie GMX DSL Ihren Freunden und Bekannten und wir belohnen Sie mit bis zu 50,- Euro! https://freundschaftswerbung.gmx.de
Am 08.12.2011 00:07, schrieb little.guitar@gmx.net:
- muss Dovecot selbst auch installiert sein um SMTP-Auth mit Postfix
darüber zu realisieren? (Bei Cyrus ist das ja nicht der Fall bei Dovecot hingegen ist es mir nicht ganz klar)
- Wenn ich als smtpd_sasl_type [1] = dovecot deklariere wo muss ich
dann die Konfigurationsdatei anlegen in der ich u.a den Authentifizierungsmechanismus?
Dovecot 2 kann auch einen auth-socket über tcp bereitstellen. Dafür musst du kein dovecot zusätzlich lokal auf deinem postfix installieren:
service auth { inet_listener { port = 12345 } }
Postfix kann dann für dovecot sasl diesen inet socket ansprechen:
smtpd_sasl_path = inet:dovecot.foobar.com:12345
Diese Frage hatte ich schon eimal auf der dovecot liste gestellt: http://dovecot.org/list/dovecot/2011-November/061843.html
Grüße, Tobias
* Tobias Hachmer lists@kokelnet.de:
Am 08.12.2011 00:07, schrieb little.guitar@gmx.net:
- muss Dovecot selbst auch installiert sein um SMTP-Auth mit Postfix
darüber zu realisieren? (Bei Cyrus ist das ja nicht der Fall bei Dovecot hingegen ist es mir nicht ganz klar)
- Wenn ich als smtpd_sasl_type [1] = dovecot deklariere wo muss ich
dann die Konfigurationsdatei anlegen in der ich u.a den Authentifizierungsmechanismus?
Dovecot 2 kann auch einen auth-socket über tcp bereitstellen. Dafür musst du kein dovecot zusätzlich lokal auf deinem postfix installieren:
service auth { inet_listener { port = 12345 } }
Postfix kann dann für dovecot sasl diesen inet socket ansprechen:
smtpd_sasl_path = inet:dovecot.foobar.com:12345
Diese Frage hatte ich schon eimal auf der dovecot liste gestellt: http://dovecot.org/list/dovecot/2011-November/061843.html
Und in Postfix 2.9 ist das dann auch im SASL_README drin und wird dann auch auf der US-Postfix Mailing List offiziell supported.
p@rick
participants (7)
-
Dennis Steinkamp
-
Florian Streibelt
-
little.guitar@gmx.net
-
Pascal Volk
-
Patrick Ben Koetter
-
Robert Schetterer
-
Tobias Hachmer