Einfaches Mail-Sending mit msmtp und Brevo
Wer auf einem Debian-Server lediglich zuverlässig ausgehende E-Mails verschicken möchte, steht oft vor einer unnötig komplexen Landschaft aus Mailservern, Queues, Spamfiltern und Reputationsthemen. Für System- und Applikationsmails ist das Overkill. Genau hier setzt die Kombination aus msmtp und einem externen SMTP-Relay wie Brevo an.
msmtp ist kein Mailserver, sondern ein schlanker SMTP-Client. Er nimmt lokal erzeugte Mails entgegen und leitet sie unmittelbar an ein externes Relay weiter. Es gibt keinen Daemon, keine lokale Zustellung und keine Warteschlangen. Der Server versendet Mails, sonst nichts.
Der entscheidende Punkt ist: Die eigentliche Zustellbarkeit wird vollständig an den Relay-Anbieter ausgelagert. Dienste wie Brevo kümmern sich um IP-Reputation, TLS-Konfiguration, SPF, DKIM und DMARC. Der eigene Server bleibt davon unberührt. Das reduziert Konfigurationsaufwand und vermeidet klassische Spam-Probleme.
Die Installation unter Debian ist entsprechend unspektakulär:
sudo apt update
sudo apt install msmtp msmtp-mta ca-certificates
Das Paket msmtp-mta sorgt dafür, dass das standardisierte sendmail-Interface bereitgestellt wird – ohne einen Sendmail-Server zu installieren. Technisch liegt danach ein Symlink vor, der sendmail auf msmtp zeigt. Genau dieses Interface nutzen Systemdienste wie Cron, APT oder unattended-upgrades.
Die zentrale Konfiguration erfolgt bewusst nicht automatisch. Die Datei /etc/msmtprc muss selbst angelegt werden und enthält die komplette SMTP-Konfiguration. Für Brevo sieht eine minimal saubere Konfiguration so aus:
defaults
auth on
tls on
tls_trust_file /etc/ssl/certs/ca-certificates.crt
account brevo
host smtp-relay.brevo.com
port 587
from user@domain.com
user BREVO_USER
password DEIN_BREVO_SMTP_KEY
account default : brevo
Diese Datei wird restriktiv geschützt:
sudo chown root:root /etc/msmtprc
sudo chmod 600 /etc/msmtprc
Logging ist optional und kann vollständig weggelassen werden. Wer keine Logs möchte, lässt einfach jede logfile– oder syslog-Direktive weg. msmtp arbeitet dann vollkommen still.
Wichtig ist, dass parallel auf Brevo-Seite die notwendigen Voraussetzungen erfüllt sind. Die Absenderadresse oder Domain muss verifiziert sein, ein SMTP-Key muss erzeugt werden, und das SMTP-Relay muss freigeschaltet sein. Ohne diese externen Schritte kann der Server technisch korrekt konfiguriert sein und trotzdem keine Mail zustellen.
Der Versand lässt sich anschließend direkt testen. Entweder explizit über msmtp:
printf "From: user@domain.com\nTo: ziel@domain.com\nSubject: test-msmtp\n\nHallo\n" | msmtp ziel@domain.com
oder über das sendmail-Interface, das Systemdienste verwenden:
printf "From: user@domain.com\nTo: ziel@domain.com\nSubject: test-msmtp\n\Hallo\n" | /usr/sbin/sendmail ziel@domain.com
Sobald dieser Test funktioniert, ist das Setup abgeschlossen. Ab diesem Moment versenden Cronjobs, APT-Benachrichtigungen, unattended-upgrades und eigene Skripte ihre Mails automatisch über das externe Relay – ohne weitere Anpassungen.
Brevo ist dabei austauschbar. Jeder SMTP-Relay-Anbieter mit Authentifizierung funktioniert identisch. Ein Wechsel bedeutet lediglich, Host, Port und Zugangsdaten in einer Datei zu ändern. Kein Umbau, keine Migration, kein Mailserver-Stress.
Das Ergebnis ist eine minimalistische, robuste Lösung für Mailversand auf Servern: eine Konfigurationsdatei, kein laufender Maildienst, keine Spam-Optimierung auf eigener Infrastruktur – und trotzdem zuverlässige Zustellung.
0 Kommentare