Mail Services Setup
Am Dienstag 30.05.2017 habe ich im Metalab in der Selbsthilfegruppe Radical Server Unit Vienna über mein Mail-Setup gesprochen. Der Eintrag ist die nachgereichte Info dazu.
Ich lasse die angesprochenen Services auf OpenBSD und FreeBSD laufen, fast alles läuft aber auch unter anderen Systemen wie Linux.
Hardware
Die Network Services (Firewall, Load Balancer und dann auch SMTP/IMAP Services) laufen unter OpenBSD auf mehreren Netgate SG-4860 die von ADI gebaut werden - bestellt bei Voleatech (DE):
Ich habe lange überlegt ob ich nicht das orginale Setup mit pfSense verwenden soll, bin mit meiner Entscheidung aber sehr zufrieden.
Die restlichen Services laufen auf FreeBSD unter normalen Intel Xeon Servern von Delta-Computer mit allen Goodies von FreeBSD…
Mail Komponenten
Chess Griffin hat vor einigen Jahren eine schöne Blog-Serie geschrieben die das Standard Setup um Clam und Spam erweitert. Lesenswert.
OpenBSD Base:
- smtpd(8)
- spamd(8)
- pf(8)
- nsd(8)
OpenBSD Ports:
- ClamAV
- ClamSMTP
- SpamAssassin
- SpamPD
- DKIMproxy
- Dovecot
pf(8): Lokale Firewall
Die lokale Firewall pf(8) steuert hier mit Listen welche smtp Verbindungen auf den rechtigen smtp-Server dürfen und welche sich noch mit dem stotternden spamd(8) unterhalten müssen.
smtpd(8): OpenSMTPD
So sieht die default Konfig von OpenSMTPD aus - ich habe hier in der letzten Zeile nur den Beispiel-Relay eingetragen. Eine solche Konfig haben bei mir die meisten Server, die kein Mail Server sind.
Die Mail Server konfig sieht etwa so aus:
SOGo: CalDAV, CardDAV und WebUI
Nach langem Suchen habe ich SOGo gefunden. Das läuft bei mir in einem FreeBSD-Kerker und verwendet PostgreSQL, memcached und servisiert über Nginx.
Das SOGo User Interface greift auf Dovecot zu und hat auch für dessen Sieve scripts eine sehr benutzerfreundliche Administration. Die User-Sieve Scripts bleiben trotzdem auch im Home-Dir editierbar, wofür ich sehr dankbar bin.
LDAP
Die Sogo-Dokumentation ist etwas unglücklich in Bezug auf Authentication. Die meisten größeren Setups verwenden sicher LDAP für Authentication, aber das System kommt genauso gut mit einer Datenbank-Tabelle aus (siehe FreeBSD Konfig Template). Ich bin hier etwas sonderbar und habe zu LDAP eine gute Beziehung.
Well-Known
Damit das mit den Clients dann auch klappt, gibt es noch RFC6764 der die Well-Known URI und die Service Name Registration beschreibt.