Office365 E-Mails über Linux Kommandozeile mittels postfix

Inhaltsverzeichnis

Damit Du unter Linux E-Mails verschicken kannst, musst Du einen MTA (Mail Transfer Agent) installiert und konfiguriert haben. Postfix ist hier der Standard. Alternativ kannst Du auch nullmailer verwenden. ssmtp ist jedoch nicht mehr zu empfehlen.

Willst Du dein Gmail Konto verwenden lies hier.

Bereite Dein Office365 Konto vor

Du benötigst als Benutzernamen deine Office365 E-Mail Adresse und als Passwort das zugehörige Passwort.

Installation von Postfix

apt update 
apt install -y postfix libsasl2-modules mailutils

Wähle „No configuration“ wenn Du während des Installationsvorganges nach dem Typ der Mail Konfiguration gefragt wirst.

Kopiere die vorgeschlagene Grundkonfiguration für debian als Basis Deiner neuen Konfiguration:

cp /usr/share/postfix/main.cf.debian /etc/postfix/main.cf

Um Deine Gmail Credentials zu konfigurieren musst Du folgende Datei öffnen:

nano /etc/postfix/sasl_passwd

Füge nun Deine Daten ein (ersetzte die email durch Deine E-Mail und das Passwort durch das zugehörige Passwort):

[smtp.office365.com]:587  username@yourdomain.com:password

Bearbeite nun die leere Datei /etc/postfix/sender_canonical:

nano /etc/postfix/sender_canonical

Und paste folgenden Inhalt (ersetzte die email durch Deine E-Mail):

/.+/ username@yourdomain.com

Kompiliere nun die Passwort- und Cononicaldatei und setze die richtigen Rechte:

postmap hash:/etc/postfix/sender_canonical
postmap /etc/postfix/sasl_passwd
sudo chown root:root /etc/postfix/sasl_passwd /etc/postfix/sasl_passwd.db
sudo chmod 0600 /etc/postfix/sasl_passwd /etc/postfix/sasl_passwd.db
chown root:root /etc/postfix/sender_canonical /etc/postfix/sender_canonical.db  
chmod 644 /etc/postfix/sender_canonical /etc/postfix/sender_canonical.db

Nun bearbeiten wir die postfix Konfiguration:

nano /etc/postfix/main.cf

Füge folgendes am Ende ein:

relayhost = [smtp.office365.com]:587

mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +

inet_interfaces = loopback-only
inet_protocols = ipv4


smtp_sasl_auth_enable = yes

smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
sender_canonical_maps = regexp:/etc/postfix/sender_canonical

smtp_sasl_security_options = noanonymous
smtp_tls_CApath = /etc/ssl/certs
smtpd_tls_CApath = /etc/ssl/certs
smtp_use_tls = yes

Starte Postfix neu und enable Postfix nach einem Systemstart:

systemctl restart postfix
systemctl enable postfix

Teste ob das Absenden mittels Postfix funktioniert:

echo "This email confirms that Postfix is working" | mail -s "Testing Posfix" herwart.wermescher@devlabs.at

Im Fehlerfall kannst Du hiermit das Logfile ansehen. Mit -n 100 schaust Du dir nur die letzten 100 Zeilen an.

tail -n 100 /var/log/mail.log

postfix Deinstallation

Wenn Du keine mails mehr versenden willst kannst Du postfix einfach folgendermassen deinstallieren:

apt purge -y postfix mailutils
rm -rf /etc/postfix

Teilen:
Weitere Posts
ChatGPT für CISOs

Eingangsstatement ChatGPT kann erfahrene ISMS-Berater nicht ersetzen, aber es bietet eine wertvolle Unterstützung bei schnellen Recherchen, der Dokumentenerstellung und konkreten Fragestellungen. So können Berater sich

Sende uns eine Nachricht