Hier zeige ich euch, wie ihr ganz einfach E-Mails von eurem Server aus verschicken könnt. Eine Möglichkeit ist ja einen eigenen E-Mail Server aufzusetzen und die andere ist einfach web.de oder sonst eure E-Mail zu nutzen. Wie das geht zeige ich euch hier.
1. Voraussetzung
Zuerst müssen wir die notwendigen Programme installieren. Gebt dazu folgende Befehle ein:
apt-get update apt-get install msmtp msmtp-mta mailutils
Anschließend könnt ihr mit folgendem Befehl kontrollieren, ob alles richtig installiert wurde:
msmtp --version
Bei mir sieht das dann so aus:
2. Konfiguration anpassen
Im nächsten Schritt passen wir nun die Konfigurationsdatei an. Hier könnt ihr euch weitere Beispiele zur Konfiguration anschauen (Kapitel 10.1, Kapitel 10.2). Ich mache das hier am Beispiel von dem Freemail Dienst web.de. Ihr könnt euch auch einen eigenen E-Mail Server mittels Docker innerhalb weniger Minuten erstellen und diesen nutzen. Eine Anleitung dazu findet ihr hier.
Wir wollen nun die “System configuration” Datei, welche bei mir unter “/etc/mmtprc” gespeichert ist (siehe Bild oben). Mit dieser Konfiguration ist es dann später nur dem System (root) möglich E-Mails zu verschicken. Ihr könnt auch die “User configuration” Datei anpassen, wenn euer Nutzeraccount auch E-Mails verschicken können soll.
Gebt nun folgenden Befehl ein:
nano /etc/msmtprc
Nun fügt ihr folgendes ein:
# 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 # Mail account # Hier wird jetzt alles fuer den E-Mail Account konfiguriert account web #ein beliebiger Name # Host name of the SMTP server host smtp.web.de # Anpassen # Envelope-from address from euerName@web.de # Anpassen auth on user euerName@web.de # Anpassen password geheimesPasswort # Anpassen # Set a default account account default: web # Name von oben hier wieder eintragen
Noch anzupassen:
- account Name : Der Name hier ist komplett egal. Muss nur ganz am Schluss wieder der selbe Name hin
- host smtp.web.de: Hier gebt ihr den SMTP Server an. Den findet ihr jeweils bei eurem E-Mail Anbieter auf der Homepage
- from euerName@web.de : Das ist euer Absender, den euer E-Mail Programm anzeigt
- user euerName@web.de : Hier muss euer Login Name hin
- password geheimesPasswort : Hier das zugehörige Passwort
- account default: web : Hier muss wieder der selbe Namen wie oben hin
Im nächsten Schritt passen wir die Rechte der Datei an.
chmod 600 /etc/msmtprc
Nun legen wir noch unser E-Mail Programm fest. Dazu öffnet ihr folgende Datei:
nano /etc/mail.rc
Hier gebt ihr folgendes ein:
set sendmail="/usr/bin/msmtp -t"
3. Test E-Mail schreiben
Nun testen wir, ob alles funktioniert hat. Dazu schreiben wir uns nun eine E-Mail. Gebt dazu in der Konsole folgendes ein:
echo "E-Mail Text" | mail -s "E-Mail Betreff" ziel@euredomain.de
Wenn alles geklappt hat, solltet ihr nun eine E-Mail bekommen an die Adresse “ziel@euredomain.de”.
4. Quellen
https://marlam.de/msmtp/msmtp.html
https://decatec.de/linux/linux-einfach-e-mails-versenden-mit-msmtp/
Ich habe mich noch einmal damit auseinander gesetzt, weil ich mit chmod 755 nicht zufrieden war. Ich verwende wieder chmod 600 und legte dafür eine weitere Konfigurationsdatei, mit identischem Inhalt, an (USER ist mein Benutzername des verwendeten Kontos). Natürlich nur als Beispiel:
nano /home/USER/.msmtprc
Anschließend dann:
chmod 600 /home/USER/.msmtprc
Somit funktioniert das auch auf Benutzerebene und nur root kann die jeweilige angelegte Konfigurationsdatei einsehen. Das macht mehr sinn, weil in der Konfigurationsdatei das E-Mail-Passwort im Klartext eingetragen ist.
Hab’s gefunden… chmod 755 /etc/msmtprc
Hi. Das funktioniert nur im Root-Modus. Ich benötige das allerdings auf Benutzerebene. Was kann ich da tun?
perfekt, genau das was ich gesucht habe.