Dies ist eine alte Version des Dokuments!
<uml width=910 title=„Postfix MTA“>
state „Daemon“ as qmqp qmqp : QMQP-Modul
state „/usr/bin/sendmail“ as sendmail sendmail : Postfix - Modul sendmail : „postdrop“
state „MTA - MTA Verkehr“ as smtp_in smtp_in : TCP/IP - Port 25
state „MUA - MSA Verkehr“ as submission submission : TCP/IP - Port 587
state „MDA“ as lmtp_24 lmtp_24 : (Mail Delivery Agent) lmtp_24 : Dovecot IMAP-Server lmtp_24 : TCP/IP - Port 24
state „MTA“ as smtp_25 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“ as mailman mailman : Weitergabe der eMail mailman : an Mailinglisten / wie Mailman mailman : oder via UUCP …
state „mailbox“ as mailbox mailbox : Postfix - Queue mailbox : „mailbox“ mailbox : lokale Zustellung
state master {
state "Queue" as maildrop maildrop : └── maildrop
state "Daemon" as pickup pickup : └── pickup
state "Daemon" as anvil anvil : └── anvil
state "Daemon" as dnsblog dnsblog : └── dnsblog
state "Daemon" as tlsproxy tlsproxy : └── tlsproxy
state "Daemon" as postscreen postscreen : └── postscreen
state "Daemon" as verify verify : └── verify
state "Daemon" as tlsmgr tlsmgr: └── tlsmgr
state „Daemon“ as scache
scache: └── scache state "Daemon" as qmqpd qmqpd: └── qmqpd
state "Agent" as discard discard: └── discard
state "Agent" as error error : ├── error error : └── retry state "Daemon" as virtual virtual: └── virtual state "Daemon" as cleanup cleanup : └── cleanup
state "Daemon" as showq showq : └── showq state "Daemon" as rewrite rewrite : └── trivial-rewrite
state "Daemon" as bounce bounce : ├── bounce bounce : ├── defer bounce : └── trace
state "Daemon" as smtpd smtpd : └── smtpd state "Queue" as incoming incoming : └── incoming
state „Queue“ as hold
hold : └── hold
state "Queue" as corrupt corrupt : └── corrupt state "Queue" as active active : └── active state "Queue" as deferred deferred : └── deferred
state "Daemon" as qmgr qmgr : └── qmgr
state "Daemon" as flush flush : └── flush
state "Modul" as resolve resolve : └── resolve
state "MDA" as local local : └── local
state „Mailclient“ as pipe
pipe : └── pipe
state "Mailclient" as lmtp lmtp : └── lmtp
state „Mailclient“ as smtp_out
smtp_out : └── smtp
state "Daemon" as proxymap proxymap : ├── proxymap proxymap : └── proxywrite
}
smtp_in -down→ smtpd submission –> smtpd
qmqp -right→ qmqpd sendmail -down→ maildrop maildrop –> pickup
anvil –> smtpd dnsblog –> smtpd verify -down→ smtpd tlsmgr -up→ smtpd postscreen –> smtpd
qmqpd –> cleanup smtpd –> cleanup pickup –> cleanup cleanup –> incoming rewrite -right→ cleanup tlsproxy -up→ postscreen
incoming –> qmgr qmgr –> deferred qmgr –> active qmgr –> hold qmgr –> corrupt resolve –> qmgr bounce -down→ qmgr qmgr –> local qmgr -right→ smtp_out qmgr –> pipe qmgr –> lmtp qmgr -left→ virtual discard –> qmgr error –> qmgr flush –> qmgr showq –> qmgr smtp_out -up→ scache
lmtp –> lmtp_24 smtp_out –> smtp_25 smtp_out -up→ tlsmgr 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 /etc/aliases 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
</uml>