Postfix installieren - Ubuntu: Unterschied zwischen den Versionen
Peter (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „Kategorie:Inhalt Kategorie:Linux System __INDEXIEREN__“) |
Peter (Diskussion | Beiträge) K (→Berechtigungen) |
||
| (14 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
[[Kategorie:Inhalt]] | [[Kategorie:Inhalt]] | ||
[[Kategorie:Linux System]] | [[Kategorie:Linux System]] | ||
| + | __INHALTSVERZEICHNIS_ERZWINGEN__ | ||
__INDEXIEREN__ | __INDEXIEREN__ | ||
| + | Bei diesem Beitrag möchte ich euch zeigen, wie man den Postfix installiert und konfiguriert. Ich habe explizit Postfix gewählt, denn wenn jemand Microsoft365 (früher Office365) benutzt, das in Unternehmensbereich im mehr an Bedeutung gewinnt auch E-Mail Notification zu erhalten. Ich gehe nicht näher darauf ein, damit man Mails empfangen kann, sondern es dient ausnahmslos als Relay (E-Mail versandt). | ||
| + | === '''<span style="color:#FF0000">Installation</span>''' === | ||
| + | ----<syntaxhighlight lang="console"> | ||
| + | sudo apt update | ||
| + | sudo apt -y install postfix sasl2-bin mailutils | ||
| + | </syntaxhighlight>Während der Installation wird man von der Postfix Installation, nach ein paar wichtigen Information gefragt.[[Datei:Postfix 1.png|zentriert|gerahmt|verweis=https://life-sessions.at/index.php%3Ftitle=Datei:Postfix_1.png]][[Datei:Postfix 2.png|zentriert|gerahmt|verweis=https://life-sessions.at/index.php%3Ftitle=Datei:Postfix_2.png]][[Datei:Postfix 3.png|zentriert|gerahmt|verweis=https://life-sessions.at/index.php%3Ftitle=Datei:Postfix_3.png]] | ||
| + | ==== '''<span style="color:#4682B4">Wichtige Information:</span>'''' ==== | ||
| + | Sollten Sie eine falsche Einstellung getroffen haben, können Sie um ein Fenster zurückspringen in dem Sie '''ALT + EINFG''' drücken. Möchten Sie die Konfiguration Neustarten, geben Sie diesen Befehl ein:<syntaxhighlight lang="console"> | ||
| + | sudo dpkg-reconfigure postfix | ||
| + | </syntaxhighlight> | ||
| + | === '''<span style="color:#FF0000">Konfigurieren</span>''' === | ||
| + | ----Jetzt erstellen wir die Passwortdatei, damit wir Postfix den Zugriff erlauben. | ||
| + | ==== '''<span style="color:#4682B4">Mailzugriff</span>''' ==== | ||
| + | <syntaxhighlight lang="console"> | ||
| + | sudo nano /etc/postfix/sasl_passwd | ||
| + | </syntaxhighlight> | ||
| + | * Server: [Server- Adresse] (dies ist je nach Anbieter unterschiedlich | ||
| + | * Port: 25(sollte nicht verwendet werden, aufgrund “Keine Verschlüsselung, 465, 587, ausgenommen von Microsoft365 da wir ein Relay bauen werden. | ||
| + | * E-Mail- Adresse: E-Mail- Adresse oder Benutzername, dies kann je nach Anbieter unterschiedlich sein. | ||
| + | * Passwort: Zugangspasswort | ||
| + | ===== '''<span style="color:#4682B4">Vorlage</span></span>''' ===== | ||
| + | <syntaxhighlight lang="vim"> | ||
| + | [SMTP Adresse abhängig von Anbieter]:Port Benutzername:Passwort | ||
| + | </syntaxhighlight> | ||
| + | ===== '''<span style="color:#4682B4">Vorlage Microsoft365</span>''' ===== | ||
| + | <syntaxhighlight lang="vim"> | ||
| + | [your_Domain.mail.protection.outlook.com]:25 Benutzername:Passwort | ||
| + | </syntaxhighlight> | ||
| + | ===== '''<span style="color:#4682B4">Vorlage Google</span>''' ===== | ||
| + | <syntaxhighlight lang="vim"> | ||
| + | [smtp.gmail.com]:587 Benutzername:Passwort | ||
| + | </syntaxhighlight> | ||
| + | ==== '''<span style="color:#4682B4">Absender</span>''' ==== | ||
| + | <syntaxhighlight lang="console"> | ||
| + | sudo nano /etc/postfix/sender_canonical | ||
| + | </syntaxhighlight>Ich konfiguriere Grundsätzlich nur einen und es soll/muss der Absender von der gewünschten Mail Adresse sein, die auch Absendet.<syntaxhighlight lang="vim"> | ||
| + | /.+/ E-Mail-Adresse | ||
| + | </syntaxhighlight> | ||
| + | ==== '''<span style="color:#4682B4">Datei Verschlüsseln</span>''' ==== | ||
| + | Wir verschlüsseln nun die Datei, damit Sie nicht in Klartext zu lesen ist.<syntaxhighlight lang="console"> | ||
| + | sudo postmap hash:/etc/postfix/sasl_passwd | ||
| + | </syntaxhighlight> | ||
| + | ==== '''<span style="color:#4682B4">Klartextdatei löschen</span>''' ==== | ||
| + | Damit später oder nicht berechtigter Benutzer, die Passwortdatei lesen könnte, wird Sie gelöscht.<syntaxhighlight lang="console"> | ||
| + | sudo rm /etc/postfix/sasl_passwd | ||
| + | </syntaxhighlight> | ||
| + | ==== '''<span style="color:#4682B4">Berechtigungen</span>''' ==== | ||
| + | Nun setzten wir Berechtigungen, die wichtig sind, um keine Passwörter zu veröffentlichen oder bösartig zu Editieren.<syntaxhighlight lang="console"> | ||
| + | sudo chown root:root /etc/postfix/sasl_passwd /etc/postfix/sasl_passwd.db | ||
| + | sudo chown root:root /etc/postfix/sender_canonical /etc/postfix/sender_canonical | ||
| + | sudo chmod 644 /etc/postfix/sasl_passwd /etc/postfix/sasl_passwd.db | ||
| + | sudo chmod 644 /etc/postfix/sender_canonical /etc/postfix/sender_canonical | ||
| + | </syntaxhighlight> | ||
| + | |||
| + | ==== '''<span style="color:#4682B4">Zertifikat</span>''' ==== | ||
| + | Wir werden noch ein öffentliches Zertifikat in den Postfix Ordner kopieren.<syntaxhighlight lang="console"> | ||
| + | cp /etc/ssl/certs/thawte_Primary_Root_CA.pem /etc/postfix/cacert.pem | ||
| + | </syntaxhighlight> | ||
| + | ==== '''<span style="color:#4682B4">Postfix konfigurieren</span>''' ==== | ||
| + | <syntaxhighlight lang="console"> | ||
| + | sudo nano /etc/postfix/main.cf | ||
| + | </syntaxhighlight> | ||
| + | ===== '''<span style="color:#4682B4">Abschnitt anpassen</span>''' ===== | ||
| + | <syntaxhighlight lang="vim"> | ||
| + | inet_protocols = ipv4 | ||
| + | # Standard ist all, kann angepasst werden, muss aber nicht) | ||
| + | |||
| + | relayhost = [Server-Adresse]:Port | ||
| + | # Selbe Format, wie ob beschrieben und es ist wichtig, denn selben Server von Ihrem Anbieter | ||
| + | |||
| + | mynetworks = 192.168.1.0/24 | ||
| + | # Subnet des eigenen Netzwerks | ||
| + | </syntaxhighlight> | ||
| + | |||
| + | ===== '''<span style="color:#4682B4">Vorlage für Abschnitt Microsoft365</span>''' ===== | ||
| + | <syntaxhighlight> | ||
| + | inet_protocols = ipv4 | ||
| + | # Standard ist all, kann angepasst werden, muss aber nicht) | ||
| + | |||
| + | relayhost = [your_Domain.mail.protection.outlook.com]:25 | ||
| + | # Selbe Format, wie ob beschrieben und es ist wichtig, denn selben Server von Ihrem Anbieter | ||
| + | |||
| + | mynetworks = 192.168.1.0/24 | ||
| + | # Subnet des eigenen Netzwerks | ||
| + | </syntaxhighlight> | ||
| + | |||
| + | ===== '''<span style="color:#4682B4">Vorlage für Abschnitt Google</span>''' ===== | ||
| + | <syntaxhighlight lang="vim"> | ||
| + | inet_protocols = ipv4 | ||
| + | # Standard ist all, kann angepasst werden, muss aber nicht) | ||
| + | |||
| + | relayhost = [smtp.gmail.com]:587 | ||
| + | # Selbe Format, wie ob beschrieben und es ist wichtig, denn selben Server von Ihrem Anbieter | ||
| + | |||
| + | mynetworks = 192.168.1.0/24 | ||
| + | # Subnet des eigenen Netzwerks | ||
| + | </syntaxhighlight> | ||
| + | |||
| + | ===== '''<span style="color:#4682B4">Abschnitt hinzufügen</span>''' ===== | ||
| + | <syntaxhighlight lang="vim"> | ||
| + | smtp_tls_wrappermode = no | ||
| + | smtp_sasl_auth_enable = yes | ||
| + | smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd | ||
| + | smtp_sasl_security_options = noanonymous | ||
| + | sender_canonical_maps = regexp:/etc/postfix/sender_canonical | ||
| + | smtp_tls_CAfile = /etc/postfix/cacert.pem | ||
| + | </syntaxhighlight> | ||
| + | |||
| + | ==== '''<span style="color:#4682B4">Finale Abschluss für Postfix</span>''' ==== | ||
| + | Achtung bei jeder Änderung sind die darunter angegeben Befehle durchzuführen:<syntaxhighlight lang="console"> | ||
| + | sudo postfix reload | ||
| + | sudo systemctl restart postfix | ||
| + | </syntaxhighlight> | ||
| + | |||
| + | ===== '''<span style="color:#4682B4">Microsoft365 Connector konfigurieren</span>''' ===== | ||
| + | Wir werden auf dem Exchange Server einen Connector anlegen, es spielt keine Rolle ob On-Primes oder in der Cloud. Es wird nur eine Bildgalerie geben, da diese Bilder selbst erklärend sind. | ||
| + | [[Datei:Postfix 4.png|zentriert|gerahmt]] | ||
| + | [[Datei:Postfix 5.png|zentriert|gerahmt]] | ||
| + | [[Datei:Postfix 6.png|zentriert|gerahmt]] | ||
| + | [[Datei:Postfix 7.png|zentriert|gerahmt]] | ||
| + | |||
| + | ===== '''<span style="color:#4682B4">Microsoft365 Schutz anpassen</span>''' ===== | ||
| + | Wir werden einen denn Schutz deaktivieren für eine statische IP- Adresse, diesen Luxus hat aber nicht jeder, da fügt man einfach eine DDNS die zuvor konfiguriert wurde ein. Ich werde es nur mit einer statischen IP-Adresse zeigen, da private eher keinen Exchange Server besitzen. | ||
| + | [[Datei:Postfix 8.png|verweis=https://life-sessions.at/Datei:Postfix%208.png|zentriert|mini|1000x1000px]] | ||
| + | |||
| + | ===== '''<span style="color:#4682B4">Microsoft365 SPF anpassen</span>''' ===== | ||
| + | Wir müssen noch den SPF für den Mailversand anpassen, damit die Mails nicht abgelehnt werden, nun müssen Sie sich einloggen bei Ihrem DNS-Anbieter. | ||
| + | |||
| + | ====== '''<span style="color:#4682B4">Original SPF Eintrag</span>''' ====== | ||
| + | <syntaxhighlight lang="vim"> | ||
| + | v=spf1 include:spf.protection.outlook.com -all | ||
| + | </syntaxhighlight> | ||
| + | |||
| + | ====== '''<span style="color:#4682B4">Angepasster SPF Eintrag</span>''' ====== | ||
| + | Achtung einen Eintrag auf einem DNS Server zu ändern, kann je nach Anbieter bis zu 24h dauern. Daher nicht wundern, wenn dieser Eintrag nicht gleich Funktionen.<syntaxhighlight lang="vim"> | ||
| + | v=spf1 ip4:195.192.0.1 include:spf.protection.outlook.com -all | ||
| + | </syntaxhighlight> | ||
| + | |||
| + | === '''<span style="color:#FF0000">Test des Postfix Versandes</span>''' === | ||
| + | ----<syntaxhighlight lang="console"> | ||
| + | echo “body of your email (UBUNTU-TEST)” | mail -s “This is a Subject” -a “From:E-Mail- Adresse” Empfänger_E-Mail-Adresse | ||
| + | </syntaxhighlight> | ||
| + | ==== '''<span style="color:#4682B4">Protokoll</span>''' ==== | ||
| + | Das Protokoll wird in das Verzeichnis gelegt.<syntaxhighlight lang="console"> | ||
| + | cd /var/log/ | ||
| + | </syntaxhighlight>Es gibt zwei Dateien für uns, in dem Fall, wichtig sind: | ||
| + | * '''mail.log''' (Eintrag, wie der Mail Verkehr abläuft) | ||
| + | * '''mail.err''' (Eintrag, der Fehlerbeschreibung, beim Versenden. Dies ist wichtig um die fehlerhafte Konfiguration zu beheben) | ||
| + | === '''<span style="color:#FF0000">Troubleshooting</span>''' === | ||
| + | ----Unter gewissen Umständen lassen sich die Einträge zum Versenden von Mails nicht löschen. Ich habe euch ein paar Befehle aufgelistet, um dieses Problem zu beheben (Fehlerbeschreibung: Post Queue).<syntaxhighlight lang="console"> | ||
| + | mailq | ||
| + | postfix flush | ||
| + | postsuper -d ALL | ||
| + | </syntaxhighlight> | ||
| + | === '''<span style="color:#FF0000">System</span>''' === | ||
| + | ---- | ||
| + | ==== '''<span style="color:#4682B4">Einstellungen neu laden</span>''' ==== | ||
| + | <syntaxhighlight lang="console"> | ||
| + | sudo postfix reload | ||
| + | </syntaxhighlight> | ||
| + | ==== '''<span style="color:#4682B4">Dienste</span>''' ==== | ||
| + | <syntaxhighlight lang="console"> | ||
| + | sudo systemctl enable postfix | ||
| + | sudo systemctl start postfix | ||
| + | sudo systemctl stop postfix | ||
| + | sudo systemctl status postfix | ||
| + | sudo systemctl restart postfix | ||
| + | sudo systemctl disable postfix | ||
| + | </syntaxhighlight> | ||
Aktuelle Version vom 31. Dezember 2020, 16:39 Uhr
Bei diesem Beitrag möchte ich euch zeigen, wie man den Postfix installiert und konfiguriert. Ich habe explizit Postfix gewählt, denn wenn jemand Microsoft365 (früher Office365) benutzt, das in Unternehmensbereich im mehr an Bedeutung gewinnt auch E-Mail Notification zu erhalten. Ich gehe nicht näher darauf ein, damit man Mails empfangen kann, sondern es dient ausnahmslos als Relay (E-Mail versandt).
Installation[Bearbeiten | Quelltext bearbeiten]
sudo apt update
sudo apt -y install postfix sasl2-bin mailutils
Während der Installation wird man von der Postfix Installation, nach ein paar wichtigen Information gefragt.
Wichtige Information:'[Bearbeiten | Quelltext bearbeiten]
Sollten Sie eine falsche Einstellung getroffen haben, können Sie um ein Fenster zurückspringen in dem Sie ALT + EINFG drücken. Möchten Sie die Konfiguration Neustarten, geben Sie diesen Befehl ein:
sudo dpkg-reconfigure postfix
Konfigurieren[Bearbeiten | Quelltext bearbeiten]
Jetzt erstellen wir die Passwortdatei, damit wir Postfix den Zugriff erlauben.
Mailzugriff[Bearbeiten | Quelltext bearbeiten]
sudo nano /etc/postfix/sasl_passwd
- Server: [Server- Adresse] (dies ist je nach Anbieter unterschiedlich
- Port: 25(sollte nicht verwendet werden, aufgrund “Keine Verschlüsselung, 465, 587, ausgenommen von Microsoft365 da wir ein Relay bauen werden.
- E-Mail- Adresse: E-Mail- Adresse oder Benutzername, dies kann je nach Anbieter unterschiedlich sein.
- Passwort: Zugangspasswort
Vorlage[Bearbeiten | Quelltext bearbeiten]
[SMTP Adresse abhängig von Anbieter]:Port Benutzername:Passwort
Vorlage Microsoft365[Bearbeiten | Quelltext bearbeiten]
[your_Domain.mail.protection.outlook.com]:25 Benutzername:Passwort
Vorlage Google[Bearbeiten | Quelltext bearbeiten]
[smtp.gmail.com]:587 Benutzername:Passwort
Absender[Bearbeiten | Quelltext bearbeiten]
sudo nano /etc/postfix/sender_canonical
Ich konfiguriere Grundsätzlich nur einen und es soll/muss der Absender von der gewünschten Mail Adresse sein, die auch Absendet.
/.+/ E-Mail-Adresse
Datei Verschlüsseln[Bearbeiten | Quelltext bearbeiten]
Wir verschlüsseln nun die Datei, damit Sie nicht in Klartext zu lesen ist.
sudo postmap hash:/etc/postfix/sasl_passwd
Klartextdatei löschen[Bearbeiten | Quelltext bearbeiten]
Damit später oder nicht berechtigter Benutzer, die Passwortdatei lesen könnte, wird Sie gelöscht.
sudo rm /etc/postfix/sasl_passwd
Berechtigungen[Bearbeiten | Quelltext bearbeiten]
Nun setzten wir Berechtigungen, die wichtig sind, um keine Passwörter zu veröffentlichen oder bösartig zu Editieren.
sudo chown root:root /etc/postfix/sasl_passwd /etc/postfix/sasl_passwd.db
sudo chown root:root /etc/postfix/sender_canonical /etc/postfix/sender_canonical
sudo chmod 644 /etc/postfix/sasl_passwd /etc/postfix/sasl_passwd.db
sudo chmod 644 /etc/postfix/sender_canonical /etc/postfix/sender_canonical
Zertifikat[Bearbeiten | Quelltext bearbeiten]
Wir werden noch ein öffentliches Zertifikat in den Postfix Ordner kopieren.
cp /etc/ssl/certs/thawte_Primary_Root_CA.pem /etc/postfix/cacert.pem
Postfix konfigurieren[Bearbeiten | Quelltext bearbeiten]
sudo nano /etc/postfix/main.cf
Abschnitt anpassen[Bearbeiten | Quelltext bearbeiten]
inet_protocols = ipv4
# Standard ist all, kann angepasst werden, muss aber nicht)
relayhost = [Server-Adresse]:Port
# Selbe Format, wie ob beschrieben und es ist wichtig, denn selben Server von Ihrem Anbieter
mynetworks = 192.168.1.0/24
# Subnet des eigenen Netzwerks
Vorlage für Abschnitt Microsoft365[Bearbeiten | Quelltext bearbeiten]
inet_protocols = ipv4
# Standard ist all, kann angepasst werden, muss aber nicht)
relayhost = [your_Domain.mail.protection.outlook.com]:25
# Selbe Format, wie ob beschrieben und es ist wichtig, denn selben Server von Ihrem Anbieter
mynetworks = 192.168.1.0/24
# Subnet des eigenen NetzwerksVorlage für Abschnitt Google[Bearbeiten | Quelltext bearbeiten]
inet_protocols = ipv4
# Standard ist all, kann angepasst werden, muss aber nicht)
relayhost = [smtp.gmail.com]:587
# Selbe Format, wie ob beschrieben und es ist wichtig, denn selben Server von Ihrem Anbieter
mynetworks = 192.168.1.0/24
# Subnet des eigenen Netzwerks
Abschnitt hinzufügen[Bearbeiten | Quelltext bearbeiten]
smtp_tls_wrappermode = no
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
sender_canonical_maps = regexp:/etc/postfix/sender_canonical
smtp_tls_CAfile = /etc/postfix/cacert.pem
Finale Abschluss für Postfix[Bearbeiten | Quelltext bearbeiten]
Achtung bei jeder Änderung sind die darunter angegeben Befehle durchzuführen:
sudo postfix reload
sudo systemctl restart postfix
Microsoft365 Connector konfigurieren[Bearbeiten | Quelltext bearbeiten]
Wir werden auf dem Exchange Server einen Connector anlegen, es spielt keine Rolle ob On-Primes oder in der Cloud. Es wird nur eine Bildgalerie geben, da diese Bilder selbst erklärend sind.
Microsoft365 Schutz anpassen[Bearbeiten | Quelltext bearbeiten]
Wir werden einen denn Schutz deaktivieren für eine statische IP- Adresse, diesen Luxus hat aber nicht jeder, da fügt man einfach eine DDNS die zuvor konfiguriert wurde ein. Ich werde es nur mit einer statischen IP-Adresse zeigen, da private eher keinen Exchange Server besitzen.
Microsoft365 SPF anpassen[Bearbeiten | Quelltext bearbeiten]
Wir müssen noch den SPF für den Mailversand anpassen, damit die Mails nicht abgelehnt werden, nun müssen Sie sich einloggen bei Ihrem DNS-Anbieter.
Original SPF Eintrag[Bearbeiten | Quelltext bearbeiten]
v=spf1 include:spf.protection.outlook.com -all
Angepasster SPF Eintrag[Bearbeiten | Quelltext bearbeiten]
Achtung einen Eintrag auf einem DNS Server zu ändern, kann je nach Anbieter bis zu 24h dauern. Daher nicht wundern, wenn dieser Eintrag nicht gleich Funktionen.
v=spf1 ip4:195.192.0.1 include:spf.protection.outlook.com -all
Test des Postfix Versandes[Bearbeiten | Quelltext bearbeiten]
echo “body of your email (UBUNTU-TEST)” | mail -s “This is a Subject” -a “From:E-Mail- Adresse” Empfänger_E-Mail-Adresse
Protokoll[Bearbeiten | Quelltext bearbeiten]
Das Protokoll wird in das Verzeichnis gelegt.
cd /var/log/
Es gibt zwei Dateien für uns, in dem Fall, wichtig sind:
- mail.log (Eintrag, wie der Mail Verkehr abläuft)
- mail.err (Eintrag, der Fehlerbeschreibung, beim Versenden. Dies ist wichtig um die fehlerhafte Konfiguration zu beheben)
Troubleshooting[Bearbeiten | Quelltext bearbeiten]
Unter gewissen Umständen lassen sich die Einträge zum Versenden von Mails nicht löschen. Ich habe euch ein paar Befehle aufgelistet, um dieses Problem zu beheben (Fehlerbeschreibung: Post Queue).
mailq
postfix flush
postsuper -d ALL
System[Bearbeiten | Quelltext bearbeiten]
Einstellungen neu laden[Bearbeiten | Quelltext bearbeiten]
sudo postfix reload
Dienste[Bearbeiten | Quelltext bearbeiten]
sudo systemctl enable postfix
sudo systemctl start postfix
sudo systemctl stop postfix
sudo systemctl status postfix
sudo systemctl restart postfix
sudo systemctl disable postfix






