Anleitung: Mailversand auf der CLI
1. Grundlagen: Was benötigst du für den Mailversand auf der CLI?
- Einen Mailserver oder ein SMTP-Relay, der/das die E-Mails verarbeitet.
- Ein CLI-Tool wie
mail,msmtpodersendmailzum Versenden von E-Mails. - Eine funktionierende Netzwerkkonfiguration (DNS, Internetzugang).
Tools, die wir verwenden:
msmtp: Ein einfach einzurichtender SMTP-Client.mailutils: Für denmail-Befehl.
2. Vorbereitung: Installation der Tools
Für Debian/Ubuntu:
sudo apt update
sudo apt install msmtp mailutils
Für RHEL/CentOS:
sudo yum install msmtp mailx
3. Einrichtung von msmtp
Konfigurationsdatei erstellen:
-
Erstelle die Datei
~/.msmtprc:nano ~/.msmtprc -
Beispielkonfiguration für Gmail:
account default host smtp.gmail.com port 587 auth on user deine.email@gmail.com password dein_passwort tls on tls_starttls on logfile ~/.msmtp.log -
Dateiberechtigungen setzen:
chmod 600 ~/.msmtprc
4. Einrichtung eines eigenen Mailservers (Postfix)
A. Postfix installieren
-
Postfix installieren (für Debian/Ubuntu):
sudo apt install postfixFür RHEL/CentOS:
sudo yum install postfix -
Während der Installation wähle die Option "Internet Site".
B. Postfix konfigurieren
Bearbeite die Hauptkonfigurationsdatei /etc/postfix/main.cf:
myhostname = dein-hostname
mydomain = deine-domain.com
myorigin = $mydomain
inet_interfaces = all
relayhost =
Starte Postfix nach den Änderungen neu:
sudo systemctl restart postfix
C. Postfix testen
Versende eine Test-E-Mail:
echo "Das ist eine Test-E-Mail" | mail -s "Postfix-Test" empfaenger@example.com
5. Versand von Dateien per E-Mail
Einzelne Datei versenden:
echo "Hier ist die angehängte Datei" | mail -s "Betreff" -A /pfad/zur/datei empfaenger@example.com
Mehrere Dateien versenden:
echo "Mehrere Dateien angehängt" | mail -s "Betreff" -A /pfad/zur/datei1 -A /pfad/zur/datei2 empfaenger@example.com
6. Einrichtung der DNS-Records bei Hetzner
A. SPF-Record hinzufügen
-
Logge dich in die Hetzner DNS Console ein:
- Gehe zu Hetzner DNS Console.
-
SPF-Record hinzufügen:
- Wähle deine Domain aus und füge den folgenden TXT-Record hinzu:
@ IN TXT "v=spf1 mx a ip4:DEINE_IP_ADRESSE ~all"
- Wähle deine Domain aus und füge den folgenden TXT-Record hinzu:
B. DKIM-Record hinzufügen
-
DKIM-Schlüssel generieren:
opendkim-genkey -s default -d deine-domain.com -
Öffentlichen Schlüssel bei Hetzner hinzufügen:
- Füge den Inhalt der Datei
default.txtals neuen TXT-Record hinzu:default._domainkey IN TXT "v=DKIM1; k=rsa; p=ÖFFENTLICHER_SCHLÜSSEL"
- Füge den Inhalt der Datei
C. DMARC-Record hinzufügen
-
DMARC-Record konfigurieren:
- Füge folgenden TXT-Record hinzu:
_dmarc IN TXT "v=DMARC1; p=none; rua=mailto:report@deine-domain.com"
- Füge folgenden TXT-Record hinzu:
-
Für strikte Regeln:
_dmarc IN TXT "v=DMARC1; p=reject; rua=mailto:report@deine-domain.com"
7. DNS-Records testen
SPF-Test:
dig TXT deine-domain.com
DKIM-Test:
- Sende eine Test-E-Mail an dkimvalidator.com.
DMARC-Test:
- Nutze Tools wie mxtoolbox.com.
8. Zusammenfassung
- Wir haben den Mailversand auf der CLI mit
msmtpundmailutilseingerichtet. - Eine vollständige Mailserver-Einrichtung mit Postfix wurde hinzugefügt.
- DNS-Records (SPF, DKIM, DMARC) für Hetzner wurden für einen sicheren Mailversand konfiguriert.
Viel Erfolg beim Versenden von Mails! 😊