Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung Nächste ÜberarbeitungBeide Seiten der Revision | ||
centos:mail_c7:mta_1 [17.10.2014 09:45. ] – [Daemone, Queues und Dienste] django | centos:mail_c7:mta_1 [19.11.2014 12:49. ] – [Daemone, Queues und Dienste] django | ||
---|---|---|---|
Zeile 24: | Zeile 24: | ||
skinparam defaultFontName Courier | skinparam defaultFontName Courier | ||
- | state " | + | state " |
state "MUA (Mail User Agent)" | state "MUA (Mail User Agent)" | ||
sender : Anwender erstellt eine Nachricht | sender : Anwender erstellt eine Nachricht | ||
Zeile 33: | Zeile 33: | ||
state " | state " | ||
dns_anfragen : │ | dns_anfragen : │ | ||
- | dns_anfragen : ├-- (Reverse) Auflösen einer IP-Adresse | + | dns_anfragen : ├── |
dns_anfragen : │ zu einem Hostnamen | dns_anfragen : │ zu einem Hostnamen | ||
- | dns_anfragen : ├-- Abfrage des zuständigen Mailservers | + | dns_anfragen : ├── |
dns_anfragen : │ zu einer Domäne | dns_anfragen : │ zu einer Domäne | ||
- | dns_anfragen : └-- Auflösen von Hostnamen zu IP-Adressen | + | dns_anfragen : └── |
dns_anfragen : . | dns_anfragen : . | ||
} | } | ||
Zeile 178: | Zeile 178: | ||
Bevor wir uns nun mit den einzelnen Modulen, Daemons und/oder Delivery-Agents befassen, werfen wir zum besseren Verständnis dieser Komponenten erst einfach mal einen Blick unter die Motorhaube unseres 12-Zylinders. ;) | Bevor wir uns nun mit den einzelnen Modulen, Daemons und/oder Delivery-Agents befassen, werfen wir zum besseren Verständnis dieser Komponenten erst einfach mal einen Blick unter die Motorhaube unseres 12-Zylinders. ;) | ||
- | <uml width=910 title=" | + | {{page>centos:mail_c7:postfix& |
- | + | ||
- | state " | + | |
- | qmqp : QMQP-Modul | + | |
- | + | ||
- | state "/ | + | |
- | sendmail | + | |
- | sendmail : " | + | |
- | + | ||
- | state "MTA - MTA Verkehr" | + | |
- | smtp_in : TCP/IP - Port 25 | + | |
- | + | ||
- | state "MUA - MSA Verkehr" | + | |
- | submission : TCP/IP - Port 587 | + | |
- | + | ||
- | state " | + | |
- | lmtp_24 : (Mail Delivery Agent) | + | |
- | lmtp_24 : Dovecot IMAP-Server | + | |
- | lmtp_24 : TCP/IP - Port 24 | + | |
- | + | ||
- | state " | + | |
- | smtp_25 : (Mail Transport Agent) | + | |
- | smtp_25 : andere SMTP-Server (Relayhosts) | + | |
- | smtp_25 : im Internet bzw. Intranet | + | |
- | smtp_25 : TCP/IP - Port 25 | + | |
- | + | ||
- | state " | + | |
- | mailman : Weitergabe der eMail | + | |
- | mailman : an Mailinglisten / wie Mailman | + | |
- | mailman : oder via UUCP ... | + | |
- | + | ||
- | state " | + | |
- | mailbox : Postfix - Queue | + | |
- | mailbox : " | + | |
- | mailbox : lokale Zustellung | + | |
- | + | ||
- | state master { | + | |
- | state " | + | |
- | maildrop : └── maildrop | + | |
- | + | ||
- | state " | + | |
- | pickup : └── pickup | + | |
- | + | ||
- | state " | + | |
- | anvil : └── | + | |
- | + | ||
- | state " | + | |
- | dnsblog : └── | + | |
- | + | ||
- | state " | + | |
- | tlsproxy : └── | + | |
- | + | ||
- | state " | + | |
- | postscreen : └── | + | |
- | + | ||
- | state " | + | |
- | verify : └── | + | |
- | + | ||
- | state " | + | |
- | tlsmgr: └── | + | |
- | + | ||
- | state " | + | |
- | scache: └── | + | |
- | + | ||
- | state " | + | |
- | qmqpd: └── | + | |
- | + | ||
- | state " | + | |
- | discard: └── | + | |
- | + | ||
- | state " | + | |
- | error : ├── error | + | |
- | error : └── retry | + | |
- | + | ||
- | state " | + | |
- | virtual: └── | + | |
- | + | ||
- | state " | + | |
- | cleanup : └── cleanup | + | |
- | + | ||
- | state " | + | |
- | showq : └── | + | |
- | + | ||
- | state " | + | |
- | rewrite : └── trivial-rewrite | + | |
- | + | ||
- | state " | + | |
- | bounce : ├── bounce | + | |
- | bounce : ├── defer | + | |
- | bounce : └── trace | + | |
- | + | ||
- | state " | + | |
- | smtpd : └── smtpd | + | |
- | + | ||
- | state " | + | |
- | incoming : └── incoming | + | |
- | + | ||
- | state " | + | |
- | hold : └── hold | + | |
- | + | ||
- | state " | + | |
- | corrupt : └── corrupt | + | |
- | + | ||
- | state " | + | |
- | active : └── active | + | |
- | + | ||
- | state " | + | |
- | deferred : └── deferred | + | |
- | + | ||
- | state " | + | |
- | qmgr : └── qmgr | + | |
- | + | ||
- | state " | + | |
- | flush : └── flush | + | |
- | + | ||
- | state " | + | |
- | resolve : └── resolve | + | |
- | + | ||
- | state " | + | |
- | local : └── local | + | |
- | + | ||
- | state " | + | |
- | pipe : └── pipe | + | |
- | + | ||
- | state " | + | |
- | lmtp : └── lmtp | + | |
- | + | ||
- | state " | + | |
- | smtp_out : └── smtp | + | |
- | + | ||
- | state " | + | |
- | proxymap : ├── proxymap | + | |
- | proxymap : └── proxywrite | + | |
- | } | + | |
- | + | ||
- | | + | |
- | | + | |
- | + | ||
- | qmqp -right-> qmqpd | + | |
- | | + | |
- | | + | |
- | + | ||
- | anvil --> smtpd | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | + | ||
- | qmqpd --> cleanup | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | + | ||
- | | + | |
- | qmgr --> deferred | + | |
- | qmgr --> active | + | |
- | qmgr --> hold | + | |
- | qmgr --> corrupt | + | |
- | | + | |
- | | + | |
- | qmgr --> local | + | |
- | qmgr -right-> smtp_out | + | |
- | qmgr --> pipe | + | |
- | qmgr --> lmtp | + | |
- | qmgr -left-> virtual | + | |
- | | + | |
- | error --> qmgr | + | |
- | flush --> qmgr | + | |
- | showq --> qmgr | + | |
- | | + | |
- | + | ||
- | lmtp --> lmtp_24 | + | |
- | | + | |
- | | + | |
- | pipe --> mailman | + | |
- | local --> mailbox | + | |
- | + | ||
- | + | ||
- | note right of cleanup | + | |
- | Lookup Table canonical_maps | + | |
- | Übersetzungstabelle zum | + | |
- | Umschreiben von nicht-lokalen | + | |
- | Empfängeradressen | + | |
- | end note | + | |
- | + | ||
- | + | ||
- | note right of cleanup | + | |
- | Lookup Table virtual_maps | + | |
- | Tabelle mit der Empfängeradresse | + | |
- | aller lokalen, virtuellen und | + | |
- | entfernten eMailadressen | + | |
- | end note | + | |
- | + | ||
- | note right of smtpd | + | |
- | Realtime Blockhole Lists | + | |
- | Nutzung von RBL zum Prüfen | + | |
- | von einliefernden Hosts | + | |
- | reverse DNS-Abfrage z.B. | + | |
- | bei SPAMHAUS | + | |
- | end note | + | |
- | + | ||
- | + | ||
- | note right of rewrite | + | |
- | Lookup Table relocated_maps | + | |
- | Tabelle für die Bounce-Nachrichten | + | |
- | mit Angabe der neuen eMailadresse | + | |
- | bei verzogenen Accounts. | + | |
- | end note | + | |
- | + | ||
- | note left of smtpd | + | |
- | Lookup Table access_client | + | |
- | Lookup Table access_helo | + | |
- | Lookup Table access_recipient | + | |
- | Lookup Table access_recipient-rfc | + | |
- | Lookup Table access_sender | + | |
- | Tabellen zum Black- und Whitelisten | + | |
- | an Hand der IP-Adrese, Hostname, | + | |
- | Empfänger oder Sender | + | |
- | end note | + | |
- | + | ||
- | note left of resolve | + | |
- | Lookup Table transport_maps | + | |
- | Tabelle zur adressabhängigen | + | |
- | Weiterleitung an einen | + | |
- | weiteren (finalen) MTA. | + | |
- | end note | + | |
- | + | ||
- | note right of local | + | |
- | Lookup Table / | + | |
- | Tabelle mit der lokalen eMails | + | |
- | an lokale Empfänger zugewiesen | + | |
- | werden können. | + | |
- | end note | + | |
- | + | ||
- | note left of local | + | |
- | Lookup Table .forward | + | |
- | Tabelle zur Steuerung von | + | |
- | automatischen Anwesenheitsnachrichten | + | |
- | end note | + | |
- | + | ||
- | note right of smtp_out | + | |
- | Lookup Table generic_maps | + | |
- | Tabelle zum Umschreiben | + | |
- | von eMailadressen | + | |
- | beim Versenden. | + | |
- | end note | + | |
- | + | ||
- | note right of lmtp | + | |
- | Lookup Table lmtp_generic_maps | + | |
- | Tabelle zum Umschreiben von Empfänger | + | |
- | eMail-Adressen im Envelope und Header | + | |
- | end note | + | |
- | + | ||
- | + | ||
- | </ | + | |
Welche Aufgaben und Funktionen die einzelnen Dienste mitbringen wollen wir uns kurz befassen. | Welche Aufgaben und Funktionen die einzelnen Dienste mitbringen wollen wir uns kurz befassen. | ||
Zeile 8209: | Zeile 7953: | ||
Die wesentlichen Anforderungen an unsere eigene Mailinfrastruktur sind: | Die wesentlichen Anforderungen an unsere eigene Mailinfrastruktur sind: | ||
- Es werden nur noch eMails angenommen, die auch zugestellt werden können; d.h. unerwünschte bzw. unerlaubte Nachrichten werden geblockt (mit einem Returncode von 5xx abgewiesen). | - Es werden nur noch eMails angenommen, die auch zugestellt werden können; d.h. unerwünschte bzw. unerlaubte Nachrichten werden geblockt (mit einem Returncode von 5xx abgewiesen). | ||
- | - der Transportweg zwischen den MTAs((**M**ail **T**ransport **A**gent: z.B. Postfix, Exim oder Sendmail)) wird SSL-verschlüsselt, | + | - der Transportweg zwischen den MTAs((**M**ail **T**ransport **A**gent: z.B. Postfix, Exim oder Sendmail)) wird TLS-verschlüsselt, |
- der Transportweg zwischen MUA((**M**ail **U**ser **A**gent: z.B. kMail, Thunderbird oder R2Mail2)) muss zwingend transportverschlüsselt werden. | - der Transportweg zwischen MUA((**M**ail **U**ser **A**gent: z.B. kMail, Thunderbird oder R2Mail2)) muss zwingend transportverschlüsselt werden. | ||
- Nachrichten von MUAs werden ausschließlich auf dem Submissionport **587** angenommen. | - Nachrichten von MUAs werden ausschließlich auf dem Submissionport **587** angenommen. | ||
Zeile 8215: | Zeile 7959: | ||
- abgehende eMails werden mit einer DKIM-Signatur versehen, mit der der Empfänger (MTA) prüfen kann, ob die eMail auch von unserem Mailserver versandt wurde. Somit wird zB. die Reputation gegenüber AOL gesteigert, da dieser ISP eine valide DKIM-Signatur positiv bewertet. | - abgehende eMails werden mit einer DKIM-Signatur versehen, mit der der Empfänger (MTA) prüfen kann, ob die eMail auch von unserem Mailserver versandt wurde. Somit wird zB. die Reputation gegenüber AOL gesteigert, da dieser ISP eine valide DKIM-Signatur positiv bewertet. | ||
- Für den ersten Grob-Viren-/ | - Für den ersten Grob-Viren-/ | ||
- | - Die zweite Prüfung erfolgt mit Unterstützung des [[centos: | + | - Die zweite Prüfung erfolgt mit Unterstützung des [[centos: |
- Eine weitere Prüfung auf erfolgt mit Hilfe von RBHL((**R**ealtime**B**lack**H**ole**L**ists)) von [[http:// | - Eine weitere Prüfung auf erfolgt mit Hilfe von RBHL((**R**ealtime**B**lack**H**ole**L**ists)) von [[http:// | ||
+ | - Die Möglichkeit, | ||
- Die SPAM-Bewertung der Nachrichten selbst erfolgt mit Hilfe von [[http:// | - Die SPAM-Bewertung der Nachrichten selbst erfolgt mit Hilfe von [[http:// | ||
- | - Den dritten Teil unserer mehrstufigen Antivirenschutzmaßnahmen (1. Stufe: | + | - Den dritten Teil unserer mehrstufigen Antivirenschutzmaßnahmen (1. Stufe: |
<WRAP center round todo > | <WRAP center round todo > |