Konfiguration von msmtp zum Verschicken von E-Mails

Auslöser für diesen Beitrag ist die Überwachung von einem Software RAID1 unter Linux Ubuntu. Bei meinen Recherchen habe ich festgestellt, dass es z.B. für PRTG von Paessler nach wie vor keinen nativen Sensor für die Überwachung eine Software RAIDs gibt. So dass bei Problemen oder sogar Ausfall einer Festplatte eine Alarmierung erfolgt.

Für die Verwaltung des Software RAID wird heutzutage das Hilfsprogramm multiple disk administration (mdadm). Beim Einsatz von mdadm wird auf msmtp zurückgegriffen. Um dem Motto „weniger ist mehr“ treu zu bleiben, installiere ich keinen extra SMTP Server ala Postfix auf dem Server. Schließlich muss dieser konfiguriert und später auch regelmäßig gewartet werden. Sondern greife für den Versand auf ein existierendes E-Mail-Postfach zurück.

Nachstehend eine Referenz Konfiguration von mdadm und msmtp für die Nutzung eines externen E-Mail-Postfaches zum Versand von E-Mail-Benachrichtigungen.

Installation von msmtp und dazugehörigen Tools.

apt install -y msmtp msmtp-mta mailutils

Prüfung der installierten Version von Sendmail.

msmtp --version

Initiale systemweite Konfiguration für msmtp erstellen.

cat << 'EOF' > /etc/msmtprc
# Example for a user configuration file ~/.msmtprc
#
# This file focusses on TLS and authentication. Features not used here include
# logging, timeouts, SOCKS proxies, TLS parameters, Delivery Status Notification
# (DSN) settings, and more.


# Set default values for all following accounts.
defaults

# Use the mail submission port 587 instead of the SMTP port 25.
port 587

# Always use TLS.
tls on

# Set a list of trusted CAs for TLS. The default is to use system settings, but
# you can select your own file.
tls_trust_file /etc/ssl/certs/ca-certificates.crt


# A freemail service
account mdadm@blog.wydler.eu

# Host name of the SMTP server
host server03.wydler.eu

# As an alternative to tls_trust_file, you can use tls_fingerprint
# to pin a single certificate. You have to update the fingerprint when the
# server certificate changes, but an attacker cannot trick you into accepting
# a fraudulent certificate. Get the fingerprint with
# $ msmtp --serverinfo --tls --tls-certcheck=off --host=smtp.freemail.example
#tls_fingerprint 00:11:22:33:44:55:66:77:88:99:AA:BB:CC:DD:EE:FF:00:11:22:33

# Envelope-from address
from mdadm@blog.wydler.eu

# Authentication. The password is given using one of five methods, see below.
auth on
user mdadm@blog.wydler.eu

# Password method 1: Add the password to the system keyring, and let msmtp get
# it automatically. To set the keyring password using Gnome's libsecret:
# $ secret-tool store --label=msmtp \
#   host smtp.freemail.example \
#   service smtp \
#   user joe.smith

# Password method 2: Store the password in an encrypted file, and tell msmtp
# which command to use to decrypt it. This is usually used with GnuPG, as in
# this example. Usually gpg-agent will ask once for the decryption password.
#passwordeval gpg2 --no-tty -q -d ~/.msmtp-password.gpg

# Password method 3: Store the password directly in this file. Usually it is not
# a good idea to store passwords in cleartext files. If you do it anyway, at
# least make sure that this file can only be read by yourself.
password NHZ@xu&K5$nH4a

# Password method 4: Store the password in ~/.netrc. This method is probably not
# relevant anymore.

# Password method 5: Do not specify a password. Msmtp will then prompt you for
# it. This means you need to be able to type into a terminal when msmtp runs.


# Set a default account
account default : mdadm@blog.wydler.eu

EOF

Hinweis: Bitte nicht vergessen meine Daten (E-Mail-Adresse, Benutzername, Passwort, Servername, etc.) durch eure Daten zu tauschen.

Berechtigung auf die Konfiguration anpassen.

chmod 600 /etc/msmtprc

Alias sendmail für msmtp anlegen.

cat << 'EOF' >> /etc/mail.rc
set sendmail="/usr/bin/msmtp -t"
EOF

Sicherungskopie der originalen Konfigurationsdatei von mdadm erstellen.

cp /etc/mdadm/mdadm.conf /etc/mdadm/mdadm.conf.original

Folgende Anpassungen habe ich in der Datei /etc/mdadm/mdadm.conf manuell vorgenommen.

diff /etc/mdadm/mdadm.conf /etc/mdadm/mdadm.conf.original
18,21c18
< MAILADDR info@blog.wydler.eu
<
< #
< MAILFROM mdadm@blog.wydler.eu
---
> MAILADDR root

Abschließend darf natürlich wie immer ein Funktionstest nicht fehlen.

mdadm --monitor --test --oneshot /dev/md0

Hier der Beweis, dass die E-Mail zugestellt wurde.

Viel Spaß beim Ausprobieren. 🙂

Abonnieren
Benachrichtige mich bei
0 Comments
Inline Feedbacks
View all comments