Wie würdet ihr einen modernen FreeBSD Mailserver konfigurieren?

Jeff

Well-Known Member
Hallo zusammen,
aktuelle Trump-Dekrete haben mich bewogen, Cloud-Services wieder nach Deutschland umzuziehen, wozu ich einen Server bei Hetzner gemietet habe auf dem ich, selbstverständlich, FreeBSD installiert habe. Nextcloud in einer Jail zu betreiben funktioniert schon mal super. Zweiter Teil ist jetzt, einen funktionierenden Mailserver einzurichten, der im Laufe der Zeit für 10-20 Leute Mails bearbeiten soll.
Es gibt ca. 5000 Tutorials wie man sowas macht.

Welche Empfehlung würde denn diese Community hier geben? Welche Komponenten würdet ihr wählen (Postfix, Sendmail, Citadel (Scherz), ...... ) ?

Vielen Dank für etwas Beratung.
 
Auf einer grünen Wiese würde ich folgende Produkte versuchen: Postfix mit Dovecot und Rspamd.

Eine Alternative wäre OpenSMTPD. Diesen habe ich im Moment installiert und kann wirklich nicht klagen. Sehr einfache Syntax. Einzig in Postfix muss ich persönlich noch fitter werden. Daher würde ich diesen einsetzen. Rspamd kenne ich nicht, scheint seine Arbeit aber sehr gut zu machen.

Gruss
 
Mal was nicht technisches:

Nur für dich oder auch für andere?
Find es immer wichtig auch zu betrachten was passiert wenn du mal nicht administrativ tätig werden kannst und der Server dann ausfällt.

Vielleicht findest du für sowas essentielles wie Mails einen deutschen Anbieter der dir das bietet was du benötigst.
 
postfix+dovecot
SPF - für 'kleine' übersichtliche Setups angemessen
https://www.freshports.org/mail/postfix-policyd-spf-python/
Greylist - vielleicht aus der Mode und kann problematisch sein
https://www.freshports.org/mail/milter-greylist/
DNSBL - finde ich effizient, ist aber auch Vertrauensfrage
http://www.dnsbl.manitu.net/?language=de
https://www.spamhaus.org/zen/
Fail2ban oder vergleichbares - mindert die Logfülle
http://www.freshports.org/security/py-fail2ban
Verschlüsselung - kannst auch TLS zu Partner-Domains erzwingen
https://bettercrypto.org/
DNS - erhöht deine Reputation wenn du SPF hast
Trage wenn möglich Secondary MX und SPF Record ein
Grundsätzliche Inspiration zu Postfix Restrictions
https://wiki.centos.org/HowTos/postfix_restrictions

Vor allem gilt es die postfix Konfiguration wirklich sauber der Reihe nach mit allen nötigen Filtern zu formulieren.
 
Zuletzt bearbeitet:
Ich mache das bei mir mit OpenSMTPd den ich eigentlich auch sehr empfehlen kann. Will man einen einfachen Mailserver aufbauen ist er sehr handlich und biete eine gute Konfiguration. Für komplexere Setups war es früher noch nicht geeignet, keine Ahnung ob er da mittlerweile mehr Funktionalität erhalten hat (ich würde mich aber wundern da es dem Ansatz etwas widerspricht).

Ich hatte mein Setup damals so aufgebaut (kann sein, dass das mittlerweile etwas überholt ist):
http://denkrobat.de/doku.php?id=mailserver_einrichten
 
Schau dir mal iRedmail bitte an. Das installiert recht sauber und ordentlich einen Mailer. Das Webfrontend ist als OpenSource brauchbar. Als Kaufware natürlich besser.

www.iredmail.org
 
Postfix (oder OpenSMTPD), Dovecot, OpenDKIM, SPF is mal die Basis.

Ich würde SpamAssassin gegen Spam nehmen, aber das liegt einfach daran, dass ich es gut kenne. Postgrey (Graylisting) hat gut geholfen, aber ehrlich gesagt ist der meiste Spam, den ich bekomme mittlerweile von echten Mailservern (inklusive korrektes SPF, DKIM, ...).

Fail2Ban schadet (wahrscheinlich) nicht, aber so einen Unterschied macht es auch nicht. Ist irgendwie ein Tauschen von Ressourcen und man könnte (ist aber auch ziemlich theoretisch) argumentieren, dass man Komplexität und damit einen Angriffsvektor erschafft. Es ist halt so, dass Spammer auch schon gut damit arbeiten können bzw. auch mal schnell sehen, dass sie nicht weiterkommen. Es gibt auch noch die Spammer, die einfach draufhauen und damit kann man das sicherlich etwas bremsen. Möchte da auch sshguard erwähnen, was ebenfalls viele Protokolle bzw. Logfiles und braucht weniger Ressourcen.

Das Wichtigste ist meines Erachtens Postfix gut und strikt zu konfigurieren und einfach zu wissen, was man tut. Da sollte man sich mal Zeit nehmen und dafür dann nicht ständig rumbasteln zu müssen, wenn man ein Problem bemerkt. Es ist meines Erachtens deutlich einfacher und besser das alles auf einmal im Zusammenhang zu lernen, weil SMTP jetzt nicht ist, wo man so viel wie bei manch anderen Dingen rumbastelt. Das ist dann nur TLS-Config updaten (altes Version, alte Ciphers, etc. raus) oder wenn was neueres kommt das dazu schalten (DKIM, DMARC, ...).

Auch wenn ich's toll finde, dass es so Fertig-Dinge gibt, die das Aufsetzen erleichtern würde ich dringend dazu raten die Dinge zu verstehen und das deshalb zunächst mal selbst aufzusetzen. Das erspart so viel Ärger. Ich bin ein starker Unterstützer von eigenen Mailservern, aber man muss sich mal damit beschäftigen, damit man keinen Stuss macht oder redet. Wenn Leute zum Beispiel Anti-Spam-Maßnahmen machen, unter denen andere Leute in unterschiedlichster Form leiden oder ähnliches ist das echt schlimm. Oder eben umgekehrt, wenn Spam geschleudert wird.

Postfix und Dovetcot (und Spamassassin) sind sehr groß. Damit kann man sich viel beschäftigen. Das macht auch Spaß, wenn man sich da Zeit nimmt, bevor das wirklich produktiv wird. Also einfach nehmen. Und offizielle Dokus lesen, möglichst nicht abseits Tutorials lesen. Da liest man potentiell out of date Sachen, oder Dinge die falsch sind bzw. kontraproduktiv.

Kurzum: Dovecot und ein guter SMTP-Server, so wie Spamassassin, so wie konfiguriertes DKIM und SPF und vielleicht sowas in der Art procmail und getmail/fetchmail/... sind finde ich ein sinnvoller Start. Würde zumindest diese Dinge von Anfang an machen, damit man keine Probleme bekommt.
 
Fail2Ban schadet (wahrscheinlich) nicht, aber so einen Unterschied macht es auch nicht. Ist irgendwie ein Tauschen von Ressourcen und man könnte (ist aber auch ziemlich theoretisch) argumentieren, dass man Komplexität und damit einen Angriffsvektor erschafft. Es ist halt so, dass Spammer auch schon gut damit arbeiten können bzw. auch mal schnell sehen, dass sie nicht weiterkommen. Es gibt auch noch die Spammer, die einfach draufhauen und damit kann man das sicherlich etwas bremsen. Möchte da auch sshguard erwähnen, was ebenfalls viele Protokolle bzw. Logfiles und braucht weniger Ressourcen.
Fail2Ban ist ein gutes Mittel um den Admin vom Server auszusperren und sich dann in Ruhe um das Gerät zu kümmern ;)
Das Wichtigste ist meines Erachtens Postfix gut und strikt zu konfigurieren und einfach zu wissen, was man tut. Da sollte man sich mal Zeit nehmen und dafür dann nicht ständig rumbasteln zu müssen, wenn man ein Problem bemerkt. Es ist meines Erachtens deutlich einfacher und besser das alles auf einmal im Zusammenhang zu lernen, weil SMTP jetzt nicht ist, wo man so viel wie bei manch anderen Dingen rumbastelt. Das ist dann nur TLS-Config updaten (altes Version, alte Ciphers, etc. raus) oder wenn was neueres kommt das dazu schalten (DKIM, DMARC, ...).
Full ACK
Auch wenn ich's toll finde, dass es so Fertig-Dinge gibt, die das Aufsetzen erleichtern würde ich dringend dazu raten die Dinge zu verstehen und das deshalb zunächst mal selbst aufzusetzen. Das erspart so viel Ärger. Ich bin ein starker Unterstützer von eigenen Mailservern, aber man muss sich mal damit beschäftigen, damit man keinen Stuss macht oder redet. Wenn Leute zum Beispiel Anti-Spam-Maßnahmen machen, unter denen andere Leute in unterschiedlichster Form leiden oder ähnliches ist das echt schlimm. Oder eben umgekehrt, wenn Spam geschleudert wird.
Die fertig Dinger sind z.B. iRedmail für Einsteiger sehr gut. Vor allem können die richtige Konfigurationen nach erfolgter Installation auf dem Testsystem durchlesen. Und wenn man sich die Spezifikationen und Manuals der Programme durchliest versteht man dann auch warum das eine oder andere so konfiguriert wurde. Hätte ich vor 15 Jahren die Möglichkeit gehabt würde ich mir dazu selbst nun raten. Angefangen habe ich damals mit VEXIM, dann später mit ISPman. Dann lange Jahre was mit DBmail, Postfix, Postgrey, Spamassasine und PostgreSQL mit LDAP Backend. Zeitweilig war ich sogar bei Apache James aktiv. Heute habe ich meine Mails mit meiner Domain bei Microsoft und schicke die Leute je nach Budget zu Regfish, Microsoft oder Hosteurope.
 
Ich nehme grundsätzlich OpenSMTPd statt Postfix. Bei Postfix krieg' ich jedes Mal Kopfkrämpfe.
 
Mich würde mal interessieren wie ihr die Mailserver verwaltet, Domains/User/Whitelists/etc?
Benutzt ihr sowas wie ViMbAdmin/postfix.admin?
 
Physische Personen kriegen eine vollwertige Mailbox (also einen eigenen Benutzer mit ziemlich restriktiven Verzeichnisrechten), für alles Weitere benutze ich ed und virtuelle Benutzer/Domains.
 
Fail2Ban ist ein gutes Mittel um den Admin vom Server auszusperren und sich dann in Ruhe um das Gerät zu kümmern ;)

Wie meinen?
Wenn es soweit ist, kannst Du Dir den Admin auhc anderweitig vom Hals halten und wenn Du es halt selbst installierst. Ich bevorzuge aber weiterhin OSSEC.

Physische Personen kriegen eine vollwertige Mailbox ...

Du meinst einen echten unix-user mit #adduser und Klimbim?
 
Wie meinen?
Wenn es soweit ist, kannst Du Dir den Admin auhc anderweitig vom Hals halten und wenn Du es halt selbst installierst. Ich bevorzuge aber weiterhin OSSEC.

Es gab zumindest früher gewisse Methoden um Fail2Ban zu überzeugen ganze IP-Ranges zu sperren. Ist zumindest heute noch bei recht schmerzfreien billigen Anbietern möglich.
 
Gute Frage. Mein erstes MX Setup liegt Jahre zurück und ich habe in der Zeit sehr gute Erfahrung mit cyrus gesammelt. Eine Anforderung damals war es, Systembenutzer von Mail-Benutzern zu trennen sowie VirtualDomains. Das ist ja heute alles kein Thema mehr... . Irgendwie bin ich dann wohl drauf hängengeblieben ;-) .
 
Ganz klare persönliche Empfehlung: Dovecot (natürlich 2.x) und postfix. Habe ich mehrfach im Einsatz und bin rundum zufrieden. Postfix würde ich ggfls. für etwas anderes "opfern" (opensmtpd finde ich sehr interessant), aber hier denke ich mir: Never change a running system. Insbesondere die LDAP-Anbindung war für mich nicht ganz ohne, weshalb ich nicht gerne wechseln will. Dovecot ist für mich nicht ersetzbar. Die Funktionen und Geschwindigkeit im Vergleich zu anderen IMAP-Servern (pop nutze ich nicht) ist schon überragend. Postfix unterstützt auth. über dovecot. Schicke Sache!
 
Weil's hier immer aufpoppt. Kann hier mal jemand Erfahrungen mit OpenSMTPD schildern? Ehrlich gesagt würde ich das auch gerne mal richtig antesten. Bisher hatte ich sendmail, exim und dann bin ich an postfix hängen geblieben. Ich habe mir OpenSMTPD schon insofern angesehen, als das ich grundsätzlich drüber weiß und es mal auf einem FreeBSD-Server (war ein kleines Experimentiersystem bei einem Billighoster. Ich glaube das war ein VIA board) laufen hab lassen, allerdings nur für so Statusmail-Dinge.

Nachdem Configs ja mitunter das Grauslichste an Mail-Servern sind (übrigens ein Grund warum ich keine copy paste Tutorials nutzen würde) fand ich OpenSMTPD ganz nett. Ich habe das also nie mit hereinkommenden E-Mails verwendet und kenne entsprechend nur so die Minimalkonfiguration, also wenn man das "kennen" nennen kann.

Es steht bei mir auch ein neuer Mailserver an (für ein kleines Projekt) und ist gerade etwas schwierig zu entscheiden was es wird. Überlege da gerade Postfix als Backup-MX zu machen und eben als primären Server mal OpenSMTPD zu nutzen. Gibt's da so ein paar Sachen die man vielleicht auch in der Denke als langjähriger Postfix-Nutzer beachten sollte? Also so Dinge, wo man sich vielleicht schnell mal dran stößt weil die gewisse Begriffe anders verwenden (also die DInge ala Slices vs Patitionen, Ports wie in Pakete, vs Ports wie in Architekturen, etc.) oder einfach Unterschiede in de Implementierung von Dingen?

Ich gehe ja bei OpenBSD-Projekten von guten Manuals und einfacher Config aus. OpenSSH, pf, OpenNTPD und Co. enttäuschen ja nicht, aber vielleicht will mal jemand irgendwas teilen, wo es mal kurzzeitige Verwunderung oder so gab - oder was vielleicht etwas umständlich war, aber dann doch recht gut funktioniert.
 
Zuletzt bearbeitet:
Weil's hier immer aufpoppt. Kann hier mal jemand Erfahrungen mit OpenSMTPD schildern?

Nach diversen Hirnverwindungen beim Versuch, Postfix sinnvoll zu konfigurieren, war OpenSMTPd eine wahre Wohltat. Tut genau das, was man ihm sagt, und auch nur genau das. Nebeneffekt: Die Konfigurationsdatei - eine einzige reicht, kein main/master-Gefummel - zeigt dir auf den ersten Blick, was gerade warum wie funktioniert. Nee, Verwunderung wirst du bei OpenSMTPd nicht erleben - höchstens, dass es auch so einfach geht.
 
Ja, die Config ist ja auch der Grund warum ich OpenSMTPD spannend finde. Ist auch der Grund warum ich weiter oben meinte, dass man sich mal am Anfang echt Zeit nehmen sollte Man Pages zu lesen. Allein schon weil's genug deprecated Optionen mit viel Geschichte drum rum gibt. Soll jetzt niemanden abschrecken, sonder grundsätzlich denken, dass wenn man noch keine Server konfiguriert hat am Besten gleich zu OpenSMTPD gehen sollte. Hab's nur wie gesagt noch nicht größer produktiv genutzt und will deshalb auch nicht einfach so Leuten sagen, sie sollen's einfach mal probieren.

Dieses "alt sein" von so Dingen wie Postfix hat ja neben dem ganzen Zeug, das sich da ansammelt auch den Vorteil, dass die Wahrscheinlichkeit, dass das Problem schon jemand hatte, vor dem man da gerade steht. Aber mittlerweile ist OpenSMTPD auch schon ein paar Jährchen alt und was man so liest haben das recht schnell Leute im großen Stil zu verwenden begonnen. Drum find ich's ja interessant.

Mailserverconfigs sind ja wohl auch der Grund warum dann auch viele etwas Angst bekommen. Einmal aufgesetzt laufen die dann recht gut und wartungsarm - zumindest aus meiner Erfahrung sind das wohl die langfristig am Besten funktionierenden Server, die so am Internet hängen. Nur muss man mal die Config bauen und das ist ja gleich mal eine offensichtliche Stärke von OpenSMTPD
 
Mailserverconfigs sind ja wohl auch der Grund warum dann auch viele etwas Angst bekommen.
Ich sehe das anders: viele Anfänger (leider oft auch Fortgeschrittene) machen den Fehler, Defaults in den Konfigurationsdateien zu deklarieren. Oft auch, weil irgendwelche Tutorials den gleichen Fehler machen. In eine Konfigurationsdatei gehört aber nur das rein, was von der Standardkonfiguration abweicht. Postfix hat das tolle Tool postconf, womit man sich sowohl die Defaults als auch die resultierende Konfiguration ansehen kann. Dovecot hat auch soetwas.

Ich kann daher das Argument mit der Konfiguration hinsichtlich Postfix nicht verstehen, auch gerade weil Postfix extrem gut dokumentiert ist.

Rob
 
Zurück
Oben