Postfix/Fehlerbehebung: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
K Textersetzung - „z.B.“ durch „z. B. “ |
||
(7 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
= Funktionstest = | = Funktionstest = | ||
Jetzt kann man z.B. mit <tt>mail</tt> aus dem Paket '''mailx''' eine E-Mail verschicken. Der Befehl dazu sieht im Prinzip so aus: | Jetzt kann man z. B. mit <tt>mail</tt> aus dem Paket '''mailx''' eine E-Mail verschicken. Der Befehl dazu sieht im Prinzip so aus: | ||
echo "Dies ist ein Testmail" | mail -s "Testbetreff" email@addresse.de | echo "Dies ist ein Testmail" | mail -s "Testbetreff" email@addresse.de | ||
Zeile 37: | Zeile 37: | ||
Trotz Einrichtens der Benutzerauthentifizierung am Smarthost und der Umwandlung der Absenderadresse kann postfix keine E-Mails über den Smarthost versenden. Manchmal kommt es hier zu Problemen mit der Namensauflösung des Smarthosts. Hier hilft es, wenn man nicht seinen eingenen Router als Nameserver, sondern die Nameserver des Internet-Anbieters direkt angibt. Die notwendigen Schritte sind unter [https://wiki.ubuntuusers.de/interfaces/#DNS-Server-angeben interfaces (Abschnitt „DNS-Server-angeben“)] erklärt. | Trotz Einrichtens der Benutzerauthentifizierung am Smarthost und der Umwandlung der Absenderadresse kann postfix keine E-Mails über den Smarthost versenden. Manchmal kommt es hier zu Problemen mit der Namensauflösung des Smarthosts. Hier hilft es, wenn man nicht seinen eingenen Router als Nameserver, sondern die Nameserver des Internet-Anbieters direkt angibt. Die notwendigen Schritte sind unter [https://wiki.ubuntuusers.de/interfaces/#DNS-Server-angeben interfaces (Abschnitt „DNS-Server-angeben“)] erklärt. | ||
Nochmals unterstrichen werden sollte auch, dass die Datei '''sasl_password''' unbedingt mit 'sudo touch sasl_password' angelegt werden sollte UND NICHT mit einem Editor wie nano etc., ansonsten wird kein richtiger Zeitstempel erzeugt, und die smtp-Authentifizierung arbeitet nicht. Außerdem müssen der smtp-smarthost, z.B. smtp.gmx.net, in der main.conf bei 'relayname=' unbedingt mit dem in der Datei '''sasl_password''' übereinstimmen. Die Verwendung verschiedener Namen, die aber evtl. zur gleichen IP-Adresse zeigen (z.B. <tt>mail.gmx.net</tt>), führt ebenfalls zu Problemen. | Nochmals unterstrichen werden sollte auch, dass die Datei '''sasl_password''' unbedingt mit 'sudo touch sasl_password' angelegt werden sollte UND NICHT mit einem Editor wie nano etc., ansonsten wird kein richtiger Zeitstempel erzeugt, und die smtp-Authentifizierung arbeitet nicht. Außerdem müssen der smtp-smarthost, z. B. smtp.gmx.net, in der main.conf bei 'relayname=' unbedingt mit dem in der Datei '''sasl_password''' übereinstimmen. Die Verwendung verschiedener Namen, die aber evtl. zur gleichen IP-Adresse zeigen (z. B. <tt>mail.gmx.net</tt>), führt ebenfalls zu Problemen. | ||
=== Network unreachable – Postfix fatal error === | === Network unreachable – Postfix fatal error === | ||
Zeile 78: | Zeile 78: | ||
Und [https://wiki.archlinux.org/title/Restart neu starten] <tt>postfix.service</tt>. | Und [https://wiki.archlinux.org/title/Restart neu starten] <tt>postfix.service</tt>. | ||
4 Konfiguration prüfen | |||
Führen Sie die aus postfix checkBefehl. | |||
[[ | Es sollte alles ausgeben, was Sie möglicherweise in einer Konfigurationsdatei falsch gemacht haben. | ||
Geben Sie Folgendes ein, um alle Ihre Konfigurationen anzuzeigen postconf. | |||
Um zu sehen, wie Sie sich von den Standardeinstellungen unterscheiden, versuchen Sie es postconf -n. | |||
== TLS Error „untrusted issuer“ == | |||
Solltet Ihr Probleme bei dem Mailversand an bestimmte Provider haben, kann dies unter Umständen an dieser Fehlermeldung in eurem Postfix Logfile liegen. | |||
Sep 20 07:46:18 xxxxx postfix/smtp[7807]: certificate verification failed for mx01.t-online.de[194.25.134.72]:25: untrusted issuer /C=DE/O=Deutsche Telekom AG/OU=T-TeleSec Trust Center/CN=Deutsche Telekom Root CA 2 | |||
; Lösung | |||
Fügt in der Postfix Konfiguration diese Zeile hinzu… | |||
/etc/postfix/main.cf | |||
smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt | |||
… und startet den Dienst neu. | |||
/etc/init.d/postfix restart | |||
die Datei sollte normalerweise der Paketmanager automatisch generieren, bei dem Paket OpenSSL. | |||
Du kannst die Datei aber auch mit diesem Befehl generieren: | |||
# c_rehash /etc/ssl/certs/ | |||
[[Kategorie:Postfix/Verwaltung]] |
Aktuelle Version vom 19. Mai 2023, 12:54 Uhr
Funktionstest
Jetzt kann man z. B. mit mail aus dem Paket mailx eine E-Mail verschicken. Der Befehl dazu sieht im Prinzip so aus:
echo "Dies ist ein Testmail" | mail -s "Testbetreff" email@addresse.de
Danach sollte man die Datei /var/log/mail.log durchlesen und überprüfen ob alles geklappt hat. Hoffentlich steht nun am Ende der Datei etwas ähnliches wie das hier:
...from=<email@gmx.net>... ...to=<xyz@example.com>,... status=sent... Message accepted
Postfix; connect to 127.0.0.1[127.0.0.1]:10026: Connection refused
in /etc/amavis/conf.d/20-debian_defaults
$inet_socket_port = 10024; # default listening socket
in
$inet_socket_port = [10024, 10026];
ändern und amavis neustarten
Fehlerbehandlung
fatal: open database /etc/aliases.db: No such file or directory"
Nach dem Versenden einer Mail wurde in der Log-Datei folgender Fehler festgehalten:
Der Befehl
sudo newaliases
schafft Abhilfe.
GMX SASL authentication
Mit einer Sicherheitsaktualisierung vom 10.03.2009 hat GMX die SMTP-Authentifizierung geändert: diese muss jetzt TLS-verschlüsselt und im Klartext erfolgen. Die Konfiguration wird in GMX beschrieben.
Problem mit Smarthost
Trotz Einrichtens der Benutzerauthentifizierung am Smarthost und der Umwandlung der Absenderadresse kann postfix keine E-Mails über den Smarthost versenden. Manchmal kommt es hier zu Problemen mit der Namensauflösung des Smarthosts. Hier hilft es, wenn man nicht seinen eingenen Router als Nameserver, sondern die Nameserver des Internet-Anbieters direkt angibt. Die notwendigen Schritte sind unter interfaces (Abschnitt „DNS-Server-angeben“) erklärt.
Nochmals unterstrichen werden sollte auch, dass die Datei sasl_password unbedingt mit 'sudo touch sasl_password' angelegt werden sollte UND NICHT mit einem Editor wie nano etc., ansonsten wird kein richtiger Zeitstempel erzeugt, und die smtp-Authentifizierung arbeitet nicht. Außerdem müssen der smtp-smarthost, z. B. smtp.gmx.net, in der main.conf bei 'relayname=' unbedingt mit dem in der Datei sasl_password übereinstimmen. Die Verwendung verschiedener Namen, die aber evtl. zur gleichen IP-Adresse zeigen (z. B. mail.gmx.net), führt ebenfalls zu Problemen.
Network unreachable – Postfix fatal error
In diesem Blogbeitrag 🇩🇪 (05/2011) wird genauer auf den Fehler 42947 eingegangen und eine Lösung beschrieben.
Anhänge mit mehr als 10 MB
Die Postfix-Voreinstellung für die maximale Größe einer E-Mail ist 10 MB. Der Versuch, größere E-Mails (E-Mail Body plus Attachments) zu Verschicken endet mit einer Fehlermeldung im E-Mail-Client. Die aktuelle Einstellung kann mit
postconf -n | egrep message_size_limit
angezeigt werden, wobei die Größe in Byte ausgegeben wird. Mit folgenden Befehlen kann die maximale Größe einer E-Mail auf 100 MB erhöht werden:
sudo postconf -e "message_size_limit = 104857600" sudo service postfix restart
Falls Postfix zusammen mit einem Smarthost eingesetzt wird, sollte message_size_limit natürlich an das Smarthost-System angeglichen werden und dessen Begrenzungseinstellung nicht überschreiten.
Fehlerbehebung
Warnung: "Datenbank /etc/postfix/*.db ist älter als Quelldatei. ."
Wenn Sie eine oder beide Warnungen mit journalctl erhalten :
Warnung: Die Datenbank /etc/postfix/virtual.db ist älter als die Quelldatei /etc/postfix/virtual Warnung: Die Datenbank /etc/postfix/transport.db ist älter als die Quelldatei /etc/postfix/transport
Dann können Sie es mit diesen Befehlen beheben, je nachdem, welche Meldungen Sie erhalten:
postmap /etc/postfix/transport postmap /etc/postfix/virtual
Und neu starten postfix.service.
Host- oder Domänenname nicht gefunden. Namensdienstfehler für name=...
Wenn Sie mit journalctl:
Host- oder Domänenname nicht gefunden. Namensdienstfehler für name=...
Es könnte sein, dass Sie Postfix in einem ausführen chrootund /etc/resolv.confwird vermisst.
Wenn ja, können Sie dies beheben, indem Sie:
mkdir -p /var/spool/postfix/etc cp /etc/resolv.conf /var/spool/postfix/etc/resolv.conf
Und neu starten postfix.service.
4 Konfiguration prüfen
Führen Sie die aus postfix checkBefehl.
Es sollte alles ausgeben, was Sie möglicherweise in einer Konfigurationsdatei falsch gemacht haben.
Geben Sie Folgendes ein, um alle Ihre Konfigurationen anzuzeigen postconf.
Um zu sehen, wie Sie sich von den Standardeinstellungen unterscheiden, versuchen Sie es postconf -n.
TLS Error „untrusted issuer“
Solltet Ihr Probleme bei dem Mailversand an bestimmte Provider haben, kann dies unter Umständen an dieser Fehlermeldung in eurem Postfix Logfile liegen.
Sep 20 07:46:18 xxxxx postfix/smtp[7807]: certificate verification failed for mx01.t-online.de[194.25.134.72]:25: untrusted issuer /C=DE/O=Deutsche Telekom AG/OU=T-TeleSec Trust Center/CN=Deutsche Telekom Root CA 2
- Lösung
Fügt in der Postfix Konfiguration diese Zeile hinzu… /etc/postfix/main.cf
smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt
… und startet den Dienst neu.
/etc/init.d/postfix restart
die Datei sollte normalerweise der Paketmanager automatisch generieren, bei dem Paket OpenSSL.
Du kannst die Datei aber auch mit diesem Befehl generieren:
# c_rehash /etc/ssl/certs/