Mailversand Mit MSMTP
Vorwort
Wer mehrere Server betreut, wird anfangen Abläufe zu automatisieren. Da erfahrungsgemäß nie alles so klappt, wie man es sich wünscht wäre ein Benachrichtigung im Fehlerfall oder nach Abschluss eines Scriptes doch ideal, oder? Dazu gibt es etliche Tools, ich bevorzuge nach wie vor E-Mails die an die Administration versendet werden.
Hierfür habe ich mich für MSMTP entschieden, die Einrichtung ist relativ simpel, es wird aktiv weiterentwickelt und funktioniert zudem (bei mir) ohne Crashes - und das seit Jahren.
Installation
MSMTP ist bereits in den Standard Paketquellen von Ubuntu Server enthalten - in meinem Falle geschieht die Installation auf einem Ubuntu 20.04 LTS Server. Die Installation erfolgt wie gewohnt über:
|
|
Konfiguration
Bevor die Konfiguration gestartet wird, ist wichtig zu wissen, dass es Unterschiede gibt, welcher User Mails versenden kann. Es gibt eine Konfiguration für den root-User, sowie eine spezifische Konfiguration für alle non-root-User, die im Homeverzeichnis abgelegt wird.
Die Datei für den root-User liegt unter /etc/msmtprc
- für alle weiteren User ist die Konfigurationsdatei unter ~/.msmtprc
zu finden.
|
|
|
|
Die originale Konfigurationsdatei habe ich eingekürzt, sodass ein normaler Einsatz weiterhin möglich ist und keine unnötigen Kommentare mehr enthalten sind. Abzuändern ist im obigen Beispiel nur die Absendeaddresse, sowie der eigene SMTP Host.
Anschließend werden noch die Rechte zum auslesen der Datei geändert, da hier Zugangsdaten in Plaintext enthalten sind:
Mit chmod 600 /etc/msmtprc
wird die root-Konfiguration angepasst, mit chmod 600 ~/.msmtprc
könnten potentielle non-root Konfigurationen angepasst werden.
Zu guter letzt muss der Alias für den root User angepasst werden, an diese Adresse werden alle versendeten E-Mails aus fehlgeschlagenen Scripten oder Cronjobs versendet:
|
|
Im letzten Konfigurationsschritt vor dem Testen, definieren wir noch das ab nun zu nutzende Mailprogramm für unseren Server:
Hierfür wird die Datei nano /etc/mail.rc
geöffnet und mit folgendem Inhalt versehen:
|
|
Funktionstest
Jetzt kann noch getestet werden, ob die aktuelle Konfiguration korrekt ist, dazu versenden wir eine Mail aus der CLI:
|
|
Innerhalb von ca. 15min ist MSMTP fertig eingerichtet und kann entsprechend Mails versenden, sollte es beim Aktualisieren der Paketquellen (unattended upgrades) Fehler geben, oder bspw. das Backupscript auf Fehler treffen.