Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende ÜberarbeitungLetzte ÜberarbeitungBeide Seiten der Revision | ||
centos:mail_c7:mta_6 [04.11.2014 18:44. ] – [Dynamische Empfänger-Verifizierung] django | centos:mail_c7:mta_6 [04.11.2014 20:36. ] – [Tests] django | ||
---|---|---|---|
Zeile 256: | Zeile 256: | ||
</ | </ | ||
</ | </ | ||
- | Den notwendigen | + | Den notwendigen |
# grep verify / | # grep verify / | ||
Zeile 264: | Zeile 264: | ||
=== Konfiguration === | === Konfiguration === | ||
+ | Als erstes legen wir uns ein Datenverzeichnis, | ||
+ | # mkdir / | ||
- | Damit nun der Mailserver nicht jedesmal nachfragen muss, werden wir ihm hierzu eine kleine Datenbanktabelle spendieren, die auch nach einen Neustart des Servers zur Verfügung stehen kann. | + | # chown postfix.root / |
+ | # chmod 700 / | ||
+ | Als nächstes definieren wir noch die entsprechende Datenbank, bzw. den Ort wo Postfix diese Datenbank abspeichern wird. Hierzu tragen wir in die Konfigurationsdatei // | ||
+ | # vim / | ||
+ | <code bash>... | ||
+ | # Django : 2015-10-15 - Ergebnisse der Adress-Verification cachen | ||
+ | # Kapitel 12.2.2 Dynamische Empfänger-Verifizierung | ||
+ | # Kapitel 9.5.5 envelope sender überprüfen | ||
+ | # default: address_verify_map = btree: | ||
+ | address_verify_map = btree:/ | ||
+ | </ | ||
- | In der Section **[[centos: | + | Dann aktivieren wir in der Section **[[centos: |
# (Kapitel 12.2.2 Dynamische Empfänger-Verifizierung) | # (Kapitel 12.2.2 Dynamische Empfänger-Verifizierung) | ||
| | ||
Zeile 362: | Zeile 374: | ||
</ | </ | ||
- | === Datenpflege der Emfangsaddressen | + | === Datenpflege der Empfangsaddressen |
Die Pflege der verify-Datenbank übernimmt dabei Postfix selbst, trägt neue Adressen ein und löscht auch regelmäßig alte Einträge - kurz und gut, der Postfix betreibt also eine Art // | Die Pflege der verify-Datenbank übernimmt dabei Postfix selbst, trägt neue Adressen ein und löscht auch regelmäßig alte Einträge - kurz und gut, der Postfix betreibt also eine Art // | ||
# postconf address_verify_positive_refresh_time | # postconf address_verify_positive_refresh_time | ||
Zeile 398: | Zeile 410: | ||
Dieser Parameter legt fest, mit welchem // | Dieser Parameter legt fest, mit welchem // | ||
- | ==== Tests ==== | + | ===== Tests ===== |
- | === Einlieferung via LMTP beim backend-System === | + | <WRAP round important> |
- | Als erstes testen wir, ob wir von unserem SMTP-Server aus beim IMAP-Server auf Port 24 (**LMTP**) eine Nachricht einliefern können. Damit wir uns beim Tippen nicht die Finger brechen und/oder vertippen, greifen wir auf das Hilfsprogramm **[[www.jetmore.org/ | + | ==== Einlieferung via LMTP beim backend-System |
+ | Als erstes testen wir, ob wir von unserem SMTP-Server aus beim IMAP-Server auf Port 24 (**LMTP**) eine Nachricht einliefern können. Damit wir uns beim Tippen nicht die Finger brechen und/oder vertippen, greifen wir auf das Hilfsprogramm **[[http://www.jetmore.org/ | ||
# swaks --to django@nausch.org --from michael@nausch.org --header-X-Test "test email" --server 10.0.0.77 --protocol LMTP | # swaks --to django@nausch.org --from michael@nausch.org --header-X-Test "test email" --server 10.0.0.77 --protocol LMTP | ||
< | < | ||
Zeile 439: | Zeile 452: | ||
</ | </ | ||
- | === Einlieferung via SMTP beim frontend-System === | + | ==== erfolgreiche |
Als nächstes liefern wir eine Nachricht bei unserem SMTP-Server auf Port **25** ein. Auch hier benutzen wir als Hilfsmittel **swaks**. | Als nächstes liefern wir eine Nachricht bei unserem SMTP-Server auf Port **25** ein. Auch hier benutzen wir als Hilfsmittel **swaks**. | ||
- | # swaks --to django@nausch.org --from michael@nausch.org --header-X-Test "test email" --server | + | # swaks --to django@nausch.org --from michael@nausch.org --header-X-Test "test email" --server |
- | < | + | < |
- | === Connected to ::1. | + | === Connected to 10.0.0.87. |
<- 220 mx01.nausch.org ESMTP Postfix | <- 220 mx01.nausch.org ESMTP Postfix | ||
- | -> HELO vml000087.dmz.nausch.org | + | -> HELO pml010048 |
<- 250 mx01.nausch.org | <- 250 mx01.nausch.org | ||
-> MAIL FROM:< | -> MAIL FROM:< | ||
Zeile 453: | Zeile 466: | ||
-> DATA | -> DATA | ||
<- 354 End data with < | <- 354 End data with < | ||
- | -> Date: Tue, 04 Nov 2014 19:25:58 +0100 | + | -> Date: Tue, 04 Nov 2014 20:53:54 +0100 |
-> To: django@nausch.org | -> To: django@nausch.org | ||
-> From: michael@nausch.org | -> From: michael@nausch.org | ||
- | -> Subject: test Tue, 04 Nov 2014 19:25:58 +0100 | + | -> Subject: test Tue, 04 Nov 2014 20:53:54 +0100 |
-> X-Mailer: swaks v20130209.0 jetmore.org/ | -> X-Mailer: swaks v20130209.0 jetmore.org/ | ||
-> X-Test: test email | -> X-Test: test email | ||
Zeile 463: | Zeile 476: | ||
| | ||
-> . | -> . | ||
- | <- 250 2.0.0 Ok: queued as CC2B4C00088 | + | <- 250 2.0.0 Ok: queued as 904BBC00088 |
-> QUIT | -> QUIT | ||
<- 221 2.0.0 Bye | <- 221 2.0.0 Bye | ||
=== Connection closed with remote host. | === Connection closed with remote host. | ||
</ | </ | ||
+ | Im Maillog werden nun mehrere Dinge dokumentiert. | ||
+ | | ||
+ | Der Client **vml000020.dmz.nausch.org** mit der IP **10.0.0.20** hat sich mit dem SMTP-Server verbunden. | ||
+ | | ||
+ | Das Cleanup-Modul hat die Message-ID **< | ||
+ | | ||
+ | | ||
+ | | ||
+ | Der verify-Daemon erstellt eine Test-Nachricht und schickt diese an den Zielserver. Da die Adresse zustellbar ** status=deliverable (250 2.1.5 ok)** ist, entfernt der Queue-Manager die Testnachricht wieder. | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | Die Nachricht wird dem einliefernden Mailclient abgenommen. | ||
+ | | ||
+ | | ||
+ | Die Nachricht wurde erfolgreich an das backend-System übergeben. | ||
+ | ==== Zustellversuch an nicht existierenden Empfänger via SMTP beim frontend-System ==== | ||
+ | Als nächstes versuchen wir eine Nachricht an einen nicht existierenden Empfänger zu schicken. | ||
+ | $ swaks --to paeddrigg@nausch.org --from michael@nausch.org --header-X-Test "test email" --server 10.0.0.87 --protocol SMTP | ||
+ | < | ||
+ | === Connected to 10.0.0.87. | ||
+ | <- 220 mx01.nausch.org ESMTP Postfix | ||
+ | -> HELO pml010048 | ||
+ | <- 250 mx01.nausch.org | ||
+ | -> MAIL FROM:< | ||
+ | <- 250 2.1.0 Ok | ||
+ | -> RCPT TO:< | ||
+ | <** 450 4.1.1 < | ||
+ | -> QUIT | ||
+ | <- 221 2.0.0 Bye | ||
+ | === Connection closed with remote host. | ||
+ | </ | ||
+ | Die Annahme der Nachricht wurde verweigert, da die Adresse nicht überprüft werden konnte. | ||
+ | Im Maillog sieht man nun sehr schön wieder den Versuch die Adresse zu überprüfen. | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | Hier wurde nun der Status **status=undeliverable** gemeldet, da der Empfänger nicht erreichbar war. | ||
+ | ==== verify-Datenbank ==== | ||
+ | Werfen wir nun einen Blick in die verify-Datenbank von Postfix können wir für beide Beispiele die entsprechenden Einträge finden. | ||
+ | # postmap -s btree:/ | ||
+ | | ||
+ | | ||
+ | | ||
+ | ====== Links ====== | ||
+ | * **⇐ [[centos: | ||
+ | * **⇒ [[centos: | ||
+ | * **[[centos: | ||
+ | * **[[wiki: | ||
+ | * **[[http:// | ||
- | + | ~~DISCUSSION~~ | |
- | + | ~~AUTOTWEET: | |
- | + | ||
- | + | ||
- | + | ||
- | FIXME | + |