Sendmail & Mailx: E-Mail Versand über das Linux Terminal – So geht’s!

Hey du! Lass uns mal über E-Mails von der Kommandozeile aus sprechen denn das ist ein echter Game-Changer für jeden der mit Linux arbeitet.

Klingt vielleicht erstmal kompliziert ist aber eigentlich total easy.

😎

Du willst mehr über das E-Mailen von der Kommandozeile lernen? Dann klick hier für eine Schritt-für-Schritt-Anleitung: Lern die Magie des Kommandozeilen-E-Mailens kennen! 🚀

Sendmail & mailx: Die Helden der Kommandozeile




Du willst mehr über das E-Mailen von der Kommandozeile lernen? Dann klick hier für eine Schritt-für-Schritt-Anleitung: Lern die Magie des Kommandozeilen-E-Mailens kennen! 🚀

Stell dir vor du müsstest ständig deinen Browser öffnen um eine E-Mail zu schreiben.

Das wäre doch super nervig oder? Genau deshalb gibt es Sendmail und mailx die echten Superhelden der Linux-Kommandozeile.

Mit diesen Werkzeugen kannst du ganz einfach E-Mails direkt aus deinem Terminal heraus versenden.

Die Grundausstattung: Sendmail & mailx installieren

Bevor wir loslegen müssen wir Sendmail und mailx auf unserem System installieren.

Das ist eigentlich ganz easy peasy:

  • Sendmail: Sendmail ist der Mail Transfer Agent (MTA) der sicherstellt dass deine E-Mails ihren Weg zum Empfänger finden. Bei den meisten Linux-Distributionen ist Sendmail bereits vorinstalliert. Wenn nicht kannst du ihn mit dem Paketmanager deiner Distribution installieren.

      sudo apt-get update 
      sudo apt-get install sendmail 
  • mailx: Mailx ist der Mail User Agent (MUA) der dir die Möglichkeit gibt E-Mails zu schreiben und zu versenden. Auch mailx ist bei den meisten Distributionen bereits installiert. Wenn nicht kannst du ihn ebenfalls mit dem Paketmanager installieren.

      sudo apt-get update
      sudo apt-get install mailx

Konfigurieren für den E-Mail-Start

Nachdem die Installation abgeschlossen ist müssen wir noch ein paar kleine Konfigurationsschritte durchführen damit Sendmail und mailx mit unserem E-Mail-Server zusammenarbeiten können.

  • Sendmail konfigurieren: Sendmail ist meistens mit einer Standardkonfiguration zufrieden. Wenn du aber bestimmte Einstellungen anpassen möchtest kannst du die Datei /etc/mail/sendmail.mc bearbeiten. Für spezielle Anforderungen wie die Verwendung eines Relay-Servers musst du die Datei sendmail.mc editieren und anschließend die sendmail-Konfiguration mit make neu erstellen.

  • mailx konfigurieren: Um mailx optimal einzurichten kannst du die Datei ~/.mailrc bearbeiten. Hier kannst du deine E-Mail-Server-Einstellungen einfügen. So sieht eine simple Konfiguration für mailx aus:

      set smtp=smtp.example.com
      set smtp-auth=yes
      set smtp-port=587
      set smtp-user=your_username
      set smtp-password=your_password

Einfach E-Mails schreiben mit Sendmail und mailx

Jetzt sind wir bereit endlich unsere ersten E-Mails aus der Kommandozeile zu verschicken.

🤩

Sendmail: Schnelle Nachrichten

Sendmail ist wie ein Schnellbote der deine Nachrichten direkt zum Empfänger befördert.

Hier ist ein Beispiel wie du eine einfache E-Mail mit Sendmail versendest:

echo "Hallo! Dies ist eine Test-E-Mail von der Kommandozeile." | sendmail  

Erklärung:

  • echo gibt den Text “Hallo! Dies ist eine Test-E-Mail von der Kommandozeile.” auf die Standardausgabe.
  • Der senkrechte Strich | leitet die Standardausgabe an den Befehl sendmail.
  • sendmail sendet die E-Mail an die angegebene Adresse .

Mailx: Interaktiver und komfortabel

Mailx ist wie ein vollwertiger E-Mail-Client der dir mehr Möglichkeiten bietet.

Hier ist ein Beispiel wie du mit Mailx eine E-Mail mit Betreff und Text verfasst:

mailx -s "Test-E-Mail"  << EOF
Hallo! Dies ist eine Test-E-Mail von der Kommandozeile.


Viel Spaß beim Ausprobieren! 😉
EOF

Erklärung:

  • mailx -s "Test-E-Mail" startet mailx und setzt den Betreff auf “Test-E-Mail”.
  • ist die E-Mail-Adresse des Empfängers.
  • << EOF leitet den Text bis zum EOF an mailx.
  • Hallo! Dies ist eine Test-E-Mail von der Kommandozeile. ... EOF ist der Nachrichtentext.

Anhänge hinzufügen: E-Mails mit Dateien verschicken

Was wäre eine E-Mail ohne Anhänge? Genau unvollständig! Mit mailx kannst du ganz einfach Dateien an deine E-Mails anhängen.

mailx: Dateien einfach hinzufügen

mailx -s "Bericht"  -a report.pdf << EOF
Hallo! Hier ist der Bericht den du angefordert hast.


EOF

Erklärung:

  • -a report.pdf hängt die Datei report.pdf an die E-Mail an.

Sendmail: Anhänge mit MIME

Sendmail selbst unterstützt das Anfügen von Dateien nicht direkt über die Kommandozeile.

Hier musst du eine E-Mail-Nachricht mit MIME-kodierten Anhängen erstellen was etwas komplexer ist.

Es gibt verschiedene Tools wie uuencode oder base64 die du dafür nutzen kannst.

Aber hey mailx ist doch so viel einfacher!

Automatisierung: E-Mails auf Knopfdruck

Wer gerne Zeit spart der automatisiert seine E-Mails.

Sowohl Sendmail als auch mailx lassen sich wunderbar in Skripte integrieren.

Mailx in Skripten integrieren

Hier ist ein Beispiel für ein Bash-Skript das eine E-Mail mit mailx automatisch versendet:

#!/bin/bash

# Betreff der E-Mail
betreff="Automatische E-Mail"

# Empfängeradresse
empfaenger=""

# Nachricht
nachricht="Hallo! Diese E-Mail wurde automatisch versendet."

# E-Mail versenden
mailx -s "$betreff" "$empfaenger" << EOF
$nachricht
EOF

Sendmail in Skripten integrieren

Auch Sendmail lässt sich für die Automatisierung einsetzen.

Du kannst zum Beispiel ein Skript erstellen das eine einfache Text-E-Mail versendet:

#!/bin/bash

# Empfängeradresse
empfaenger=""

# Nachricht
nachricht="Hallo! Dies ist eine automatische E-Mail von Sendmail."

# E-Mail versenden
echo "$nachricht" | sendmail "$empfaenger"

Cronjobs: E-Mails nach Zeitplan

Du möchtest dass deine Skripte automatisch zu bestimmten Zeiten ausgeführt werden? Dann kommen Cronjobs ins Spiel.

Ein Cronjob ist wie ein digitaler Wecker der deine Skripte zuverlässig zu festgelegten Zeitpunkten ausführt.

Um einen Cronjob einzurichten kannst du die Datei /etc/crontab bearbeiten.

In dieser Datei kannst du deine Skripte einplanen.

Beispiel:

# Jeden Tag um 8 Uhr morgens
0 8 * * * /pfad/zu/deinem/skript.sh 

Sicherheit im Fokus

Sicherheitsaspekte sollten beim Umgang mit E-Mails im Vordergrund stehen.

Hier sind ein paar wichtige Punkte:

  • Verschlüsselung: Schütze deine Kommunikation mit TLS/SSL um die Datenübertragung zu sichern.
  • Passwörter: Verwende sichere Passwörter für deinen E-Mail-Server.
  • Sensible Daten: Vermeide es sensible Daten in Klartext-E-Mails zu versenden.
  • Firewall: Richte eine Firewall ein um unberechtigten Zugriff auf deine Systeme zu verhindern.

Zusammenfassung

Sendmail und mailx sind die perfekten Werkzeuge um E-Mails direkt von der Linux-Kommandozeile aus zu versenden.

Mit diesen Tools kannst du ganz einfach E-Mails schreiben Anhänge hinzufügen und sogar E-Mails automatisieren.

Du hast Fragen? Lass es mich wissen!

Viel Spaß beim E-Mailen! 😉




Du willst mehr über das E-Mailen von der Kommandozeile lernen? Dann klick hier für eine Schritt-für-Schritt-Anleitung: Lern die Magie des Kommandozeilen-E-Mailens kennen! 🚀

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top