This is an old revision of the document!
OpenSMTPd aus Backports installieren
OpenSMTPd muss aus den Backports installiert werden.
apt install -t bookworm-backports opensmtpd opensmtpd-extras opensmtpd-filter-senderscore
Da wir eventuell Mails an externe Mailadressen weiterleiten wollen benötigen wir SRS (sender rewrite scheme). Sonst wird bei einer Mailweiterleitung DKIM und SPF gebrochen. Dazu brauchen wir einen “Schlüssel”. den generieren wir mit:
head -c 30 /dev/urandom | base64
Jetzt passen wir schnell noch unser /etc/smtpd.conf an. Und tragen den soeben generierten Schlüssel als SRS Key ein. Vorsicht, wenn der später mal neu generiert wird, und noch alte Mails weitergeleitet werden sollen, sollte man für einen Monat ca den alten Key als
srs key backup "alter Key"
eintragen.
Hier erstmal die Version vom alten Server, die ich dann während ich diese Beschreibung mache anpassen werde auf die aktuelle Version. Ich möchte z.B. DKIM von OpenSMTPd erledigen lassen und nicht von rspamd wie in dieser Version.
Diese Beschreibung ist work in progress. Wenn dann alles fertig ist, werde ich den Server nochmal platt machen und komplett nach der Beschreibung aufsetzen. Also wenn dieser Hinweis fehlt, ist es fertig
pki "mail.domain.tld" cert "/etc/letsencrypt/live/mail.domain.tld/fullchain.pem" pki "mail.domain.tld" key "/etc/letsencrypt/live/mail.domain.tld/privkey.pem" srs key "generierter Zufall" #srs key backup "alter Key" # internal aliases to root table aliases file:/etc/mail/aliases # External Mails in Database vmail table domains mysql:/etc/mail/mysql.conf table virtuals mysql:/etc/mail/mysql.conf table credentials mysql:/etc/mail/mysql.conf filter check_rdns phase connect match !rdns \ disconnect "550 no rDNS" filter senderscore \ proc-exec "filter-senderscore -junkBelow 70 -slowFactor 5000" filter rspamd proc-exec "filter-rspamd" listen on eth0 tls pki mx.brauconsulting.de filter { senderscore, rspamd, check_rdns } listen on eth0 port 465 smtps pki mail.domain.tld auth <credentials> filter { rspamd } listen on eth0 port 587 tls-require pki mail.domain.tld auth <credentials> filter { rspamd } action "local_mail" mbox alias <aliases> action "domain_mail" maildir "/var/vmail/%{dest.domain:lowercase}/%{dest.user:lowercase}" virtual <virtuals> action "outbound" relay action "RECV" lmtp "/var/run/dovecot/lmtp" rcpt-to virtual <virtuals> # match from any for domain <domains> action "domain_mail" match from any for domain <domains> action "RECV" match from local for local action "local_mail" match from local for any action "outbound" match auth from any for any action "outbound"