Postfix/Interna: Unterschied zwischen den Versionen
Die Seite wurde neu angelegt: „== Postfix hinter den Kulissen == * Die vorherigen Abschnitte gaben einen Überblick darüber, wie Postfix-Server verarbeitet das Senden und Empfangen von E-Mails. * Diese Serverprozesse verlassen sich auf andere Serverprozesse, die Dinge hinter den Kulissen tun. * Der Text Im Folgenden wird versucht, jeden Dienst in seinem eigenen Kontext zu visualisieren. * Wie Davor sind Namen gefolgt von einer Zahl Postfix-Befehle oder Server Programme, während n…“ |
K Textersetzung - „http://“ durch „https://“ |
||
(32 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
'''topic''' - Kurzbeschreibung | |||
== Beschreibung == | |||
== Installation == | |||
== Aufruf == | |||
=== Argumente === | |||
=== Optionen === | |||
=== Umgebung === | |||
=== Rückgabewert === | |||
== Konfiguration == | |||
=== Dateien === | |||
== Anwendung == | |||
== Sicherheit == | |||
== Dokumentation == | |||
=== RFC === | |||
=== Man-Page === | |||
=== Info-Pages === | |||
=== Siehe auch === | |||
== Links == | |||
=== Projekt === | |||
=== Weblinks === | |||
= TMP = | |||
== Postfix hinter den Kulissen == | == Postfix hinter den Kulissen == | ||
Die Artikel [[Postfix/Empfang]] und [[Postfix/Zustellung]] geben einen Überblick, wie Postfix-Server verarbeitet das Senden und Empfangen von E-Mails. | |||
* Diese Serverprozesse verlassen sich auf andere Serverprozesse, die Dinge hinter den Kulissen tun. | * Diese Serverprozesse verlassen sich auf andere Serverprozesse, die Dinge hinter den Kulissen tun. | ||
* Der Text Im Folgenden wird versucht, jeden Dienst in seinem eigenen Kontext zu visualisieren. | * Der Text Im Folgenden wird versucht, jeden Dienst in seinem eigenen Kontext zu visualisieren. | ||
* Wie Davor sind Namen gefolgt von einer Zahl Postfix-Befehle oder Server Programme, während nicht nummerierte Namen innerhalb schattierter Bereiche darstellen Postfix-Warteschlangen. | * Wie Davor sind Namen gefolgt von einer Zahl Postfix-Befehle oder Server Programme, während nicht nummerierte Namen innerhalb schattierter Bereiche darstellen Postfix-Warteschlangen. | ||
* Der residente [ | * Der residente [https://www.postfix.org/master.8.html Master(8) ]-Server ist der Supervisor, der behält ein Auge auf das Wohlergehen des Mailsystems Postfix. | ||
* Es ist typisch beim Systemstart mit dem Befehl "postfix start" gestartet und läuft weiter, bis das System ausfällt. | * Es ist typisch beim Systemstart mit dem Befehl "postfix start" gestartet und läuft weiter, bis das System ausfällt. | ||
* Der [ | * Der [https://www.postfix.org/master.8.html Master(8) ]-Server ist verantwortlich für das Starten von Postfix-Serverprozessen zum Empfangen und E-Mail-Zustellung und für den Neustart von Servern, die vorzeitig beendet werden wegen irgendwelchen problemen. | ||
* Der [ | * Der [https://www.postfix.org/master.8.html Master(8) ]-Server ist ebenfalls verantwortlich zum Durchsetzen der Serverprozess-Zählerlimits, wie in der angegeben [https://www.postfix.org/master.5.html master.cf] Konfigurationsdatei | ||
* | |||
* Das Bild unten gibt die Programmhierarchie beim Start von Postfix. | |||
* Nur ein Teil der Post Verarbeitung von Daemon-Prozessen werden angezeigt. | * Nur ein Teil der Post Verarbeitung von Daemon-Prozessen werden angezeigt. | ||
Zeile 14: | Zeile 46: | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
| | [ | | | [https://www.postfix.org/postfix.1.html postfix(1) ] | ||
| | | | | | ||
| | | | | | ||
Zeile 56: | Zeile 88: | ||
| | | | | | ||
|- | |- | ||
| | [ | | | [https://www.postfix.org/postsuper.1.html postsuper(1) ] | ||
| | | | | | ||
| | [ | | | [https://www.postfix.org/master.8.html Meister(8) ] | ||
| | | | | | ||
| | [ | | | [https://www.postfix.org/postlog.1.html Postlog(1) ] | ||
|- | |- | ||
| | | | | | ||
Zeile 90: | Zeile 122: | ||
| | | | | | ||
|- | |- | ||
| | [ | | | [https://www.postfix.org/smtpd.8.html smtpd(8) ] | ||
| | | | | | ||
| | [ | | | [https://www.postfix.org/qmgr.8.html qmgr (8) ] | ||
| | | | | | ||
| | [ | | | [https://www.postfix.org/local.8.html lokal(8) ] | ||
|- | |- | ||
|} | |} | ||
* Der [ | |||
* Der [https://www.postfix.org/anvil.8.html anvil(8) ]-Server implementiert die Client-Verbindung und Anforderungsrate Begrenzung für alle [https://www.postfix.org/smtpd.8.html smtpd(8) ]-Server. Das [https://www.postfix.org/TUNING_README.html TUNING_README ]Dokument bietet Anleitungen zum Umgang mit fehlerhaften SMTP-Clients. Das [https://www.postfix.org/anvil.8.html anvil(8) ]ist in Postfix Version 2.2 und höher verfügbar. | |||
{| | class="wikitable sortable" | {| | class="wikitable sortable" | ||
Zeile 103: | Zeile 136: | ||
| | Netzwerk | | | Netzwerk | ||
| | <tt>-> </tt> | | | <tt>-> </tt> | ||
| | [ | | | [https://www.postfix.org/smtpd.8.html smtpd(8) ] | ||
| | <tt><-> </tt> | | | <tt><-> </tt> | ||
| | [ | | | [https://www.postfix.org/anvil.8.html Amboss(8) ] | ||
|- | |- | ||
|} | |} | ||
* Die [ | * Die [https://www.postfix.org/bounce.8.html bounce(8) ], [https://www.postfix.org/defer.8.html defer(8) ]und [https://www.postfix.org/trace.8.html trace(8) ]werden jeweils verwaltet ihre eigenen Warteschlangen-Verzeichnisbäume mit Protokolldateien pro Nachricht. Postfix verwendet diese Informationen beim Senden von "fehlgeschlagen", "verzögert" oder "erfolgreich" Benachrichtigungen über den Zustellstatus an den Absender. <br/>Der [https://www.postfix.org/trace.8.html Trace(8) ]-Dienst implementiert auch die Unterstützung für Postfix "Mail senden -bv" und "sendmail -v" Befehle, die Berichte darüber erzeugen, wie Postfix liefert Mail und ist mit Postfix Version 2.1 verfügbar und später. Siehe [https://www.postfix.org/DEBUG_README.html#trace_mail DEBUG_README ]zum Beispiel. | ||
{| | class="wikitable sortable" | {| | class="wikitable sortable" | ||
|- | |- | ||
| | [ | | | [https://www.postfix.org/cleanup.8.html aufräumen(8) ] | ||
| | <tt>-> </tt> | | | <tt>-> </tt> | ||
| | [ | | | [https://www.postfix.org/qmgr.8.html qmgr (8) ]Postfix Warteschlange | ||
| | <tt>-> </tt> | | | <tt>-> </tt> | ||
| | Lieferung Agenten | | | Lieferung Agenten | ||
Zeile 127: | Zeile 160: | ||
| | (Nicht-) Lieferung Notiz | | | (Nicht-) Lieferung Notiz | ||
| | <tt><- </tt> | | | <tt><- </tt> | ||
| | [ | | | [https://www.postfix.org/bounce.8.html prall(8) ][https://www.postfix.org/defer.8.html aufschieben(8) ][https://www.postfix.org/trace.8.html Spur(8) ] | ||
| | <tt><- </tt> | | | <tt><- </tt> | ||
| | Warteschlange Ich würde, Empfänger, Status | | | Warteschlange Ich würde, Empfänger, Status | ||
Zeile 148: | Zeile 181: | ||
|} | |} | ||
* Die [ | * Die [https://www.postfix.org/flush.8.html flush(8) ]-Server führen Protokolle pro Ziel und Implementieren Sie sowohl ETRN als auch "sendmail -qRdestination", wie beschrieben im [https://www.postfix.org/ETRN_README.html ETRN_README ]. Dies verschiebt ausgewählte Warteschlangendateien aus die [https://www.postfix.org/QSHAPE_README.html#deferred_queue Warteschlange ]zurück zur [https://www.postfix.org/QSHAPE_README.html#incoming_queue eingehenden Warteschlange ]und fordert deren Lieferung. Der [https://www.postfix.org/flush.8.html flush(8) ]-Dienst ist mit der Postfix-Version verfügbar 1.0 und höher. | ||
{| | class="wikitable sortable" | {| | class="wikitable sortable" | ||
|- | |- | ||
| colspan="4" | | | colspan="4" | | ||
| | [ | | | [https://www.postfix.org/QSHAPE_README.html#incoming_queue eingehend ]^ [https://www.postfix.org/QSHAPE_README.html#deferred_queue aufgeschoben ] | ||
| | | | | | ||
| | | | | | ||
Zeile 166: | Zeile 199: | ||
| | | | | | ||
|- | |- | ||
| | [ | | | [https://www.postfix.org/smtpd.8.html smtpd(8) ][https://www.postfix.org/sendmail.1.html sendmail(1) ][https://www.postfix.org/postqueue.1.html nach(1) ] | ||
| | <tt>- </tt> | | | <tt>- </tt> | ||
| | Ziel spülen | | | Ziel spülen | ||
| | <tt>-> </tt> | | | <tt>-> </tt> | ||
| | [ | | | [https://www.postfix.org/flush.8.html bündig(8) ] | ||
| | <tt><- </tt> | | | <tt><- </tt> | ||
| | Aufgeschoben Ziel, Warteschlange Ich würde | | | Aufgeschoben Ziel, Warteschlange Ich würde | ||
| | <tt>- </tt> | | | <tt>- </tt> | ||
| | Lieferung Agenten, [ | | | Lieferung Agenten, [https://www.postfix.org/qmgr.8.html qmgr (8) ] | ||
|- | |- | ||
| colspan="4" | | | colspan="4" | | ||
Zeile 193: | Zeile 226: | ||
|} | |} | ||
* Die [ | * Die [https://www.postfix.org/proxymap.8.html Proxymap(8) ]-Server bieten Read-Only und Read-Write Tabellensuche Dienst für Postfix-Prozesse. Dies überwindet Chroot-Einschränkungen, reduziert die Anzahl der offenen Nachschlagetabellen, indem eine geöffnete gemeinsam genutzt wird Tabelle zwischen mehreren Prozessen und implementiert Single-Updater Tische. | ||
* Der [ | * Der [https://www.postfix.org/scache.8.html scache(8) ]-Server verwaltet den Verbindungs-Cache für der Postfix [https://www.postfix.org/smtp.8.html smtp(8) ]-Client. Wenn Verbindungscaching aktiviert ist für ausgewählten Zielen, trennt der [https://www.postfix.org/smtp.8.html SMTP(8) ]-Client die Verbindung nicht unmittelbar nach einer Mail-Transaktion, sondern gibt die Verbindung zu der Verbindungs-Cache-Server, der die Verbindung offen hält für a begrenzte Zeit. Der [https://www.postfix.org/smtp.8.html smtp(8) ]-Client fährt mit einigen fort andere E-Mail-Zustellungsanforderung. Inzwischen kann das jeder [https://www.postfix.org/smtp.8.html smtp(8) ]-Prozess Fragen Sie den [https://www.postfix.org/scache.8.html scache(8) ]-Server nach dieser zwischengespeicherten Verbindung und verwenden Sie sie für die Postzustellung. Als Sicherheitsmaßnahme begrenzt Postfix die Anzahl wie oft eine Verbindung wiederverwendet werden kann. <br/>Beim Zustellen von E-Mails an ein Ziel mit mehreren E-Mail-Servern Verbindungs-Caching kann helfen, einen nicht antwortenden Server zu überspringen, und damit die Lieferung drastisch beschleunigen. Zwischenspeichern von SMTP-Verbindungen ist in Postfix-Version 2.2 und höher verfügbar. Mehr Informationen zu dieser Funktion finden Sie im [https://www.postfix.org/CONNECTION_CACHE_README.html CONNECTION_CACHE_README ]. | ||
{| | class="wikitable sortable" | {| | class="wikitable sortable" | ||
Zeile 200: | Zeile 233: | ||
| | | | | | ||
| | <tt>/-- </tt> | | | <tt>/-- </tt> | ||
| colspan="3" | [ | | colspan="3" | [https://www.postfix.org/smtp.8.html SMTP(8) ] | ||
| | <tt>--> </tt> | | | <tt>--> </tt> | ||
| | Internet | | | Internet | ||
|- | |- | ||
| | [ | | | [https://www.postfix.org/qmgr.8.html qmgr (8) ] | ||
| | | | | | ||
| | <tt>| | | | v </tt> | | | <tt>| | | | v </tt> | ||
| colspan="4" | | | colspan="4" | | ||
|- | |- | ||
| | | | | | ||
| | <tt>\-- </tt> | | | <tt>\-- </tt> | ||
| colspan="3" | [ | | colspan="3" | [https://www.postfix.org/smtp.8.html SMTP(8) ] | ||
| | | | | | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
| | | | | | ||
| | <tt>^ | </tt> | | | <tt>^ | </tt> | ||
Zeile 220: | Zeile 253: | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
| colspan="3" | [ | | colspan="3" | [https://www.postfix.org/scache.8.html schach(8) ] | ||
| colspan="2" | | | colspan="2" | | ||
|- | |- | ||
|} | |} | ||
Ein Postfix [ | Ein Postfix [https://www.postfix.org/smtp.8.html smtp(8) ]-Client kann eine TLS-verschlüsselte Verbindung wiederverwenden (mit " [https://www.postfix.org/postconf.5.html#smtp_tls_connection_reuse smtp_tls_connection_reuse ]<nowiki>= yes"). Dies kann stark reduzieren den Overhead des Verbindungsaufbaus und verbessert die Nachrichtenübermittlung Preise. Nachdem ein Postfix </nowiki>[https://www.postfix.org/smtp.8.html smtp(8) ]-Client eine Verbindung zu einem entfernten SMTP herstellt server und sendet Klartext-EHLO- und STARTTLS-Befehle, die [https://www.postfix.org/smtp.8.html smtp(8) ]Client fügt wie gezeigt einen [https://www.postfix.org/tlsproxy.8.html tlsproxy(8) ]-Prozess in die Verbindung ein unter. | ||
Nachdem die E-Mail-Transaktion abgeschlossen ist, wird der Postfix- [ | Nachdem die E-Mail-Transaktion abgeschlossen ist, wird der Postfix- [https://www.postfix.org/smtp.8.html smtp(8) ]-Client gibt die [https://www.postfix.org/smtp.8.html smtp(8) ]-to [https://www.postfix.org/tlsproxy.8.html -tlsproxy(8) ]-Verbindung zum [https://www.postfix.org/scache.8.html scache(8) ]Server, der die Verbindung für eine begrenzte Anzahl offen hält Zeit. Der [https://www.postfix.org/smtp.8.html smtp(8) ]-Client fährt mit einer anderen Mail-Zustellung fort Anfrage. Inzwischen kann jeder Postfix [https://www.postfix.org/smtp.8.html smtp(8) ]-Client den [https://www.postfix.org/scache.8.html scache(8) ]Server für diese zwischengespeicherte Verbindung und verwenden Sie sie für die E-Mail-Zustellung erneut. | ||
{| | class="wikitable sortable" | {| | class="wikitable sortable" | ||
Zeile 233: | Zeile 266: | ||
| | | | | | ||
| | <tt>/-- </tt> | | | <tt>/-- </tt> | ||
| colspan="3" | [ | | colspan="3" | [https://www.postfix.org/smtp.8.html SMTP(8) ] | ||
| | <tt>--> </tt> | | | <tt>--> </tt> | ||
| | [ | | | [https://www.postfix.org/tlsproxy.8.html tlsproxy(8) ] | ||
| | <tt>--> </tt> | | | <tt>--> </tt> | ||
| | Internet | | | Internet | ||
|- | |- | ||
| | [ | | | [https://www.postfix.org/qmgr.8.html qmgr (8) ] | ||
| | | | | | ||
| | <tt>| | | | v </tt> | | | <tt>| | | | v </tt> | ||
| colspan="6" | | | colspan="6" | | ||
|- | |- | ||
| | | | | | ||
| | <tt>\-- </tt> | | | <tt>\-- </tt> | ||
| colspan="3" | [ | | colspan="3" | [https://www.postfix.org/smtp.8.html SMTP(8) ] | ||
| | | | | | ||
| colspan="2" | | | colspan="2" | | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
| | | | | | ||
| | <tt>^ | </tt> | | | <tt>^ | </tt> | ||
Zeile 256: | Zeile 289: | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
| colspan="3" | [ | | colspan="3" | [https://www.postfix.org/scache.8.html schach(8) ] | ||
| colspan="4" | | | colspan="4" | | ||
|- | |- | ||
|} | |} | ||
* Die [ | * Die [https://www.postfix.org/showq.8.html showq(8) ]-Server listen den Status der Postfix-Warteschlange auf. Dies ist der Warteschlangenauflistungsdienst, der die Arbeit für [https://www.postfix.org/mailq.1.html mailq(1) erledigt ]und [https://www.postfix.org/postqueue.1.html Postqueue(1) ]-Befehle. | ||
{| | class="wikitable sortable" | {| | class="wikitable sortable" | ||
Zeile 267: | Zeile 300: | ||
| | Ausgabe | | | Ausgabe | ||
| | <tt><- </tt> | | | <tt><- </tt> | ||
| | [ | | | [https://www.postfix.org/mailq.1.html mailq (1) ][https://www.postfix.org/postqueue.1.html Post- Warteschlange(1) ] | ||
| | <tt><- </tt> | | | <tt><- </tt> | ||
| | [ | | | [https://www.postfix.org/showq.8.html showq(8) ] | ||
| | <tt><- </tt> | | | <tt><- </tt> | ||
| | Postfix Warteschlange | | | Postfix Warteschlange | ||
Zeile 275: | Zeile 308: | ||
|} | |} | ||
* Die [ | * Die [https://www.postfix.org/spawn.8.html spawn(8) ]-Server führen auf Anfrage Nicht-Postfix-Befehle aus, mit dem Client, der über Socket oder FIFO mit dem Befehl verbunden ist Standard-Eingabe-, Ausgabe- und Fehlerströme. Sie finden Beispiele für seine Verwendung im [https://www.postfix.org/SMTPD_POLICY_README.html SMTPD_POLICY_README ]. | ||
* Der [ | * Der [https://www.postfix.org/tlsmgr.8.html tlsmgr(8) ]-Server wird ausgeführt, wenn TLS (Transport Layer Sicherheit, früher bekannt als SSL) ist in Postfix [https://www.postfix.org/smtp.8.html smtp(8) aktiviert ]Client oder [https://www.postfix.org/smtpd.8.html smtpd(8) ]-Server. Dieser Prozess hat zwei Aufgaben: | ||
** Pflegen Sie den Pseudo-Zufallszahlengenerator (PRNG). wird verwendet, um die TLS-Engines im Postfix [ | ** Pflegen Sie den Pseudo-Zufallszahlengenerator (PRNG). wird verwendet, um die TLS-Engines im Postfix [https://www.postfix.org/smtp.8.html smtp(8) ]-Client oder [https://www.postfix.org/smtpd.8.html smtpd(8) ]Serverprozesse. Der Zustand dieses PRNG wird periodisch gespeichert eine Datei und wird gelesen, wenn [https://www.postfix.org/tlsmgr.8.html tlsmgr(8) ]startet. | ||
** Pflegen Sie den optionalen Postfix [ | ** Pflegen Sie den optionalen Postfix [https://www.postfix.org/smtp.8.html smtp(8) ]-Client oder [https://www.postfix.org/smtpd.8.html smtpd(8) ]Server-Caches mit TLS-Sitzungsschlüsseln. Gespeicherte Schlüssel können sich verbessern Leistung durch Reduzierung der Berechnungsmenge zu Beginn von eine TLS-Sitzung. | ||
TLS-Unterstützung ist in Postfix Version 2.2 und höher verfügbar. Informationen zur Postfix-TLS-Implementierung finden Sie in [ | TLS-Unterstützung ist in Postfix Version 2.2 und höher verfügbar. Informationen zur Postfix-TLS-Implementierung finden Sie in [https://www.postfix.org/TLS_README.html TLS_README ]dokumentieren. | ||
{| | class="wikitable sortable" | {| | class="wikitable sortable" | ||
|- | |- | ||
| | Netzwerk <tt>-> </tt> | | | Netzwerk <tt>-> </tt> | ||
| | [ | | | [https://www.postfix.org/smtpd.8.html smtpd(8) ] | ||
| colspan="2" | <tt><---Samen--- <-Sitzung-> </tt> | | colspan="2" | <tt><---Samen--- <-Sitzung-> </tt> | ||
| | [ | | | [https://www.postfix.org/tlsmgr.8.html tlsmgr(8) ] | ||
| colspan="3" | <tt>---Samen---> <-Sitzung-> </tt> | | colspan="3" | <tt>---Samen---> <-Sitzung-> </tt> | ||
| | [ | | | [https://www.postfix.org/smtp.8.html SMTP(8) ] | ||
| | <tt>-> </tt>Netzwerk | | | <tt>-> </tt>Netzwerk | ||
|- | |- | ||
Zeile 332: | Zeile 365: | ||
|} | |} | ||
* Der [ | * Der [https://www.postfix.org/verify.8.html verify(8) ]-Server überprüft, ob es sich um einen Absender oder Empfänger handelt Adresse zustellbar ist, bevor der [https://www.postfix.org/smtpd.8.html smtpd(8) ]-Server sie akzeptiert. Das [https://www.postfix.org/verify.8.html Der verify(8) ]-Server fragt einen Cache mit den Ergebnissen der Adressüberprüfung ab. Wenn kein Ergebnis gefunden wird, fügt der [https://www.postfix.org/verify.8.html verify(8) ]-Server eine Sonde ein Nachricht in die Postfix-Queue und verarbeitet die Statusaktualisierung ab ein Zustellungsagent oder Warteschlangenmanager. Dieser Vorgang ist in der [https://www.postfix.org/ADDRESS_VERIFICATION_README.html ADDRESS_VERIFICATION_README ]dokumentieren. Der [https://www.postfix.org/verify.8.html Verify(8) ]-Dienst ist mit der Postfix-Version verfügbar 2.1 und höher. | ||
{| | class="wikitable sortable" | {| | class="wikitable sortable" | ||
|- | |- | ||
| colspan="5" | | | colspan="5" | | ||
| | <tt>-> </tt> | | | <tt>-> </tt> | ||
| | Sonde Botschaft | | | Sonde Botschaft | ||
Zeile 349: | Zeile 382: | ||
| | Netzwerk | | | Netzwerk | ||
| | <tt>-> </tt> | | | <tt>-> </tt> | ||
| | [ | | | [https://www.postfix.org/smtpd.8.html smtpd(8) ] | ||
| | <tt><-> </tt> | | | <tt><-> </tt> | ||
| | [ | | | [https://www.postfix.org/verify.8.html verifizieren(8) ] | ||
| | | | | | ||
| | | | | | ||
Zeile 367: | Zeile 400: | ||
| | | | | | ||
|- | |- | ||
| colspan="4" | | | colspan="4" | | ||
| | <tt>^ | in </tt> | | | <tt>^ | in </tt> | ||
| | | | | | ||
Zeile 373: | Zeile 406: | ||
|| | || | ||
|- | |- | ||
| colspan="4" | | | colspan="4" | | ||
| colspan="2" | | | colspan="2" | | ||
|- | |- | ||
| colspan="4" | | | colspan="4" | | ||
| | Adresse Überprüfung Zwischenspeicher | | | Adresse Überprüfung Zwischenspeicher | ||
| colspan="6" | | | colspan="6" | | ||
Zeile 382: | Zeile 415: | ||
|} | |} | ||
* Der [ | * Der [https://www.postfix.org/postscreen.8.html postscreen(8) ]-Server kann Postfix "vor" gestellt werden [https://www.postfix.org/smtpd.8.html smtpd(8) ]-Prozesse. Sein Zweck ist es, Verbindungen von der zu akzeptieren Netzwerk und um zu entscheiden, mit welchen SMTP-Clients kommuniziert werden darf Postfix. Laut dem Jahresbericht 2008 von MessageLabs sind 81 % der alle E-Mails waren Spam und 90 % davon wurden von Botnets gesendet; bis 2010, diese Zahlen waren 92 % bzw. 95 %. Während [https://www.postfix.org/postscreen.8.html Postscreen(8) ]hält die Zombies fern, es bleiben mehr [https://www.postfix.org/smtpd.8.html smtpd(8) ]-Prozesse verfügbar für seriöse Kunden. <br/>[https://www.postfix.org/postscreen.8.html postscreen(8) ]verwaltet eine temporäre Zulassungsliste für Clients, die seine Tests bestehen; indem zugelassenen Clients erlaubt wird, Tests zu überspringen, [https://www.postfix.org/postscreen.8.html postscreen(8) ]minimiert seine Auswirkungen auf den legitimen E-Mail-Verkehr. <br/>Der [https://www.postfix.org/postscreen.8.html postscreen(8) ]-Server ist mit Postfix 2.8 und verfügbar später. Um die Implementierung einfach zu halten, [https://www.postfix.org/postscreen.8.html postscreen(8) ]-Delegates DNS Allow/Denylist-Lookups für [https://www.postfix.org/dnsblog.8.html dnsblog(8)-Serverprozesse ]und delegiert die TLS-Kryptografie/Entschlüsselung an [https://www.postfix.org/tlsproxy.8.html tlsproxy(8)-Serverprozesse ]. Diese Delegierung ist für den Remote-SMTP-Client unsichtbar. | ||
{| | class="wikitable sortable" | {| | class="wikitable sortable" | ||
Zeile 405: | Zeile 438: | ||
| | Zombie | | | Zombie | ||
| | <tt>- </tt> | | | <tt>- </tt> | ||
| | [ | | | [https://www.postfix.org/tlsproxy.8.html tlsproxy(8) ] | ||
| | <tt>- </tt> | | | <tt>- </tt> | ||
| | | | | | ||
Zeile 411: | Zeile 444: | ||
| | | | | | ||
| | <tt>- </tt> | | | <tt>- </tt> | ||
| | [ | | | [https://www.postfix.org/smtpd.8.html smtpd(8) ] | ||
|- | |- | ||
| colspan="3" | | | colspan="3" | | ||
Zeile 422: | Zeile 455: | ||
| | Sonstiges | | | Sonstiges | ||
| | <tt>--- </tt> | | | <tt>--- </tt> | ||
| | [ | | | [https://www.postfix.org/postscreen.8.html Postscreen(8) ] | ||
| colspan="4" | | | colspan="4" | | ||
|- | |- | ||
Zeile 438: | Zeile 471: | ||
| | | | | | ||
| | <tt>- </tt> | | | <tt>- </tt> | ||
| | [ | | | [https://www.postfix.org/smtpd.8.html smtpd(8) ] | ||
|- | |- | ||
| colspan="3" | | | colspan="3" | | ||
Zeile 450: | Zeile 483: | ||
|} | |} | ||
* Der [ | * Der [https://www.postfix.org/postlogd.8.html postlogd(8) ]-Server bietet eine Alternative zu Syslog Protokollierung, die die Standardeinstellung bleibt. Diese Funktion ist verfügbar mit Postfix Version 3.4 oder höher und unterstützt die folgenden Modi: | ||
** Protokollierung in Datei, die ein Usability-Problem mit adressiert MacOS und eliminiert Informationsverluste, die durch systemd-Ratenbegrenzungen verursacht werden. | ** Protokollierung in Datei, die ein Usability-Problem mit adressiert MacOS und eliminiert Informationsverluste, die durch systemd-Ratenbegrenzungen verursacht werden. | ||
Zeile 456: | Zeile 489: | ||
|- | |- | ||
| | Befehle oder Dämonen | | | Befehle oder Dämonen | ||
| colspan="3" | | | colspan="3" | | ||
| | | | | | ||
| | | | | | ||
Zeile 462: | Zeile 495: | ||
| | | | | | ||
| | <tt>-> </tt> | | | <tt>-> </tt> | ||
| | [ | | | [https://www.postfix.org/postlogd.8.html postlogd(8) ] | ||
| | <tt>-> </tt> | | | <tt>-> </tt> | ||
| | /Pfad/zur/Datei | | | /Pfad/zur/Datei | ||
|- | |- | ||
| colspan="5" | | | colspan="5" | | ||
|- | |- | ||
|} | |} | ||
Zeile 475: | Zeile 508: | ||
|- | |- | ||
| | Befehle oder Dämonen | | | Befehle oder Dämonen | ||
| colspan="3" | | | colspan="3" | | ||
| | stdout geerbt von "postfix start-fg" | | | stdout geerbt von "postfix start-fg" | ||
|- | |- | ||
| | <tt>-> </tt> | | | <tt>-> </tt> | ||
| | [ | | | [https://www.postfix.org/postlogd.8.html postlogd(8) ] | ||
| | <tt>-> </tt> | | | <tt>-> </tt> | ||
|- | |- | ||
| colspan="4" | | | colspan="4" | | ||
|- | |- | ||
|} | |} | ||
Siehe [ | Siehe [https://www.postfix.org/MAILLOG_README.html MAILLOG_README ]für Details und Einschränkungen. | ||
[[Kategorie:Postfix]] | [[Kategorie:Postfix/Architektur]] |
Aktuelle Version vom 7. April 2025, 14:39 Uhr
topic - Kurzbeschreibung
Beschreibung
Installation
Aufruf
Argumente
Optionen
Umgebung
Rückgabewert
Konfiguration
Dateien
Anwendung
Sicherheit
Dokumentation
RFC
Man-Page
Info-Pages
Siehe auch
Links
Projekt
Weblinks
TMP
Postfix hinter den Kulissen
Die Artikel Postfix/Empfang und Postfix/Zustellung geben einen Überblick, wie Postfix-Server verarbeitet das Senden und Empfangen von E-Mails.
- Diese Serverprozesse verlassen sich auf andere Serverprozesse, die Dinge hinter den Kulissen tun.
- Der Text Im Folgenden wird versucht, jeden Dienst in seinem eigenen Kontext zu visualisieren.
- Wie Davor sind Namen gefolgt von einer Zahl Postfix-Befehle oder Server Programme, während nicht nummerierte Namen innerhalb schattierter Bereiche darstellen Postfix-Warteschlangen.
- Der residente Master(8) -Server ist der Supervisor, der behält ein Auge auf das Wohlergehen des Mailsystems Postfix.
- Es ist typisch beim Systemstart mit dem Befehl "postfix start" gestartet und läuft weiter, bis das System ausfällt.
- Der Master(8) -Server ist verantwortlich für das Starten von Postfix-Serverprozessen zum Empfangen und E-Mail-Zustellung und für den Neustart von Servern, die vorzeitig beendet werden wegen irgendwelchen problemen.
- Der Master(8) -Server ist ebenfalls verantwortlich zum Durchsetzen der Serverprozess-Zählerlimits, wie in der angegeben master.cf Konfigurationsdatei
- Das Bild unten gibt die Programmhierarchie beim Start von Postfix.
- Nur ein Teil der Post Verarbeitung von Daemon-Prozessen werden angezeigt.
postfix(1) | ||||||||||||
| | | ||||||||||||
Postfix-Skript(1) | ||||||||||||
|
| |
|
|||||||||||
postsuper(1) | Meister(8) | Postlog(1) | ||||||||||
|
| |
|
|||||||||||
smtpd(8) | qmgr (8) | lokal(8) |
- Der anvil(8) -Server implementiert die Client-Verbindung und Anforderungsrate Begrenzung für alle smtpd(8) -Server. Das TUNING_README Dokument bietet Anleitungen zum Umgang mit fehlerhaften SMTP-Clients. Das anvil(8) ist in Postfix Version 2.2 und höher verfügbar.
Netzwerk | -> | smtpd(8) | <-> | Amboss(8) |
- Die bounce(8) , defer(8) und trace(8) werden jeweils verwaltet ihre eigenen Warteschlangen-Verzeichnisbäume mit Protokolldateien pro Nachricht. Postfix verwendet diese Informationen beim Senden von "fehlgeschlagen", "verzögert" oder "erfolgreich" Benachrichtigungen über den Zustellstatus an den Absender.
Der Trace(8) -Dienst implementiert auch die Unterstützung für Postfix "Mail senden -bv" und "sendmail -v" Befehle, die Berichte darüber erzeugen, wie Postfix liefert Mail und ist mit Postfix Version 2.1 verfügbar und später. Siehe DEBUG_README zum Beispiel.
aufräumen(8) | -> | qmgr (8) Postfix Warteschlange | -> | Lieferung Agenten | ||
^ | | | in | | in | ||||
(Nicht-) Lieferung Notiz | <- | prall(8) aufschieben(8) Spur(8) | <- | Warteschlange Ich würde, Empfänger, Status | ||
|
||||||
Pro- Botschaft logfiles |
- Die flush(8) -Server führen Protokolle pro Ziel und Implementieren Sie sowohl ETRN als auch "sendmail -qRdestination", wie beschrieben im ETRN_README . Dies verschiebt ausgewählte Warteschlangendateien aus die Warteschlange zurück zur eingehenden Warteschlange und fordert deren Lieferung. Der flush(8) -Dienst ist mit der Postfix-Version verfügbar 1.0 und höher.
eingehend ^ aufgeschoben | ||||||||||
^ | | ||||||||||
smtpd(8) sendmail(1) nach(1) | - | Ziel spülen | -> | bündig(8) | <- | Aufgeschoben Ziel, Warteschlange Ich würde | - | Lieferung Agenten, qmgr (8) | ||
|
||||||||||
Pro Ziel- nation Protokolle |
- Die Proxymap(8) -Server bieten Read-Only und Read-Write Tabellensuche Dienst für Postfix-Prozesse. Dies überwindet Chroot-Einschränkungen, reduziert die Anzahl der offenen Nachschlagetabellen, indem eine geöffnete gemeinsam genutzt wird Tabelle zwischen mehreren Prozessen und implementiert Single-Updater Tische.
- Der scache(8) -Server verwaltet den Verbindungs-Cache für der Postfix smtp(8) -Client. Wenn Verbindungscaching aktiviert ist für ausgewählten Zielen, trennt der SMTP(8) -Client die Verbindung nicht unmittelbar nach einer Mail-Transaktion, sondern gibt die Verbindung zu der Verbindungs-Cache-Server, der die Verbindung offen hält für a begrenzte Zeit. Der smtp(8) -Client fährt mit einigen fort andere E-Mail-Zustellungsanforderung. Inzwischen kann das jeder smtp(8) -Prozess Fragen Sie den scache(8) -Server nach dieser zwischengespeicherten Verbindung und verwenden Sie sie für die Postzustellung. Als Sicherheitsmaßnahme begrenzt Postfix die Anzahl wie oft eine Verbindung wiederverwendet werden kann.
Beim Zustellen von E-Mails an ein Ziel mit mehreren E-Mail-Servern Verbindungs-Caching kann helfen, einen nicht antwortenden Server zu überspringen, und damit die Lieferung drastisch beschleunigen. Zwischenspeichern von SMTP-Verbindungen ist in Postfix-Version 2.2 und höher verfügbar. Mehr Informationen zu dieser Funktion finden Sie im CONNECTION_CACHE_README .
/-- | SMTP(8) | --> | Internet | |||
qmgr (8) | | | | | v | |||||
\-- | SMTP(8) | |||||
^ | | ||||||
schach(8) |
Ein Postfix smtp(8) -Client kann eine TLS-verschlüsselte Verbindung wiederverwenden (mit " smtp_tls_connection_reuse = yes"). Dies kann stark reduzieren den Overhead des Verbindungsaufbaus und verbessert die Nachrichtenübermittlung Preise. Nachdem ein Postfix smtp(8) -Client eine Verbindung zu einem entfernten SMTP herstellt server und sendet Klartext-EHLO- und STARTTLS-Befehle, die smtp(8) Client fügt wie gezeigt einen tlsproxy(8) -Prozess in die Verbindung ein unter.
Nachdem die E-Mail-Transaktion abgeschlossen ist, wird der Postfix- smtp(8) -Client gibt die smtp(8) -to -tlsproxy(8) -Verbindung zum scache(8) Server, der die Verbindung für eine begrenzte Anzahl offen hält Zeit. Der smtp(8) -Client fährt mit einer anderen Mail-Zustellung fort Anfrage. Inzwischen kann jeder Postfix smtp(8) -Client den scache(8) Server für diese zwischengespeicherte Verbindung und verwenden Sie sie für die E-Mail-Zustellung erneut.
/-- | SMTP(8) | --> | tlsproxy(8) | --> | Internet | |||
qmgr (8) | | | | | v | |||||||
\-- | SMTP(8) | |||||||
^ | | ||||||||
schach(8) |
- Die showq(8) -Server listen den Status der Postfix-Warteschlange auf. Dies ist der Warteschlangenauflistungsdienst, der die Arbeit für mailq(1) erledigt und Postqueue(1) -Befehle.
Ausgabe | <- | mailq (1) Post- Warteschlange(1) | <- | showq(8) | <- | Postfix Warteschlange |
- Die spawn(8) -Server führen auf Anfrage Nicht-Postfix-Befehle aus, mit dem Client, der über Socket oder FIFO mit dem Befehl verbunden ist Standard-Eingabe-, Ausgabe- und Fehlerströme. Sie finden Beispiele für seine Verwendung im SMTPD_POLICY_README .
- Der tlsmgr(8) -Server wird ausgeführt, wenn TLS (Transport Layer Sicherheit, früher bekannt als SSL) ist in Postfix smtp(8) aktiviert Client oder smtpd(8) -Server. Dieser Prozess hat zwei Aufgaben:
- Pflegen Sie den Pseudo-Zufallszahlengenerator (PRNG). wird verwendet, um die TLS-Engines im Postfix smtp(8) -Client oder smtpd(8) Serverprozesse. Der Zustand dieses PRNG wird periodisch gespeichert eine Datei und wird gelesen, wenn tlsmgr(8) startet.
- Pflegen Sie den optionalen Postfix smtp(8) -Client oder smtpd(8) Server-Caches mit TLS-Sitzungsschlüsseln. Gespeicherte Schlüssel können sich verbessern Leistung durch Reduzierung der Berechnungsmenge zu Beginn von eine TLS-Sitzung.
TLS-Unterstützung ist in Postfix Version 2.2 und höher verfügbar. Informationen zur Postfix-TLS-Implementierung finden Sie in TLS_README dokumentieren.
Netzwerk -> | smtpd(8) | <---Samen--- <-Sitzung-> | tlsmgr(8) | ---Samen---> <-Sitzung-> | SMTP(8) | -> Netzwerk | |||||||||||
|
| |
|
||||||||||||||||
smtpd Sitzung Zwischenspeicher | PRNG Zustand Datei | smtp Sitzung Zwischenspeicher |
- Der verify(8) -Server überprüft, ob es sich um einen Absender oder Empfänger handelt Adresse zustellbar ist, bevor der smtpd(8) -Server sie akzeptiert. Das Der verify(8) -Server fragt einen Cache mit den Ergebnissen der Adressüberprüfung ab. Wenn kein Ergebnis gefunden wird, fügt der verify(8) -Server eine Sonde ein Nachricht in die Postfix-Queue und verarbeitet die Statusaktualisierung ab ein Zustellungsagent oder Warteschlangenmanager. Dieser Vorgang ist in der ADDRESS_VERIFICATION_README dokumentieren. Der Verify(8) -Dienst ist mit der Postfix-Version verfügbar 2.1 und höher.
-> | Sonde Botschaft | -> | Postfix Post Warteschlange | |||||||
Netzwerk | -> | smtpd(8) | <-> | verifizieren(8) | ||||||
| in | ||||||||||
<- | Sonde Status | <- | Postfix Lieferung Agenten | -> Lokal -> Netzwerk | ||||||
^ | in | ||||||||||
Adresse Überprüfung Zwischenspeicher |
- Der postscreen(8) -Server kann Postfix "vor" gestellt werden smtpd(8) -Prozesse. Sein Zweck ist es, Verbindungen von der zu akzeptieren Netzwerk und um zu entscheiden, mit welchen SMTP-Clients kommuniziert werden darf Postfix. Laut dem Jahresbericht 2008 von MessageLabs sind 81 % der alle E-Mails waren Spam und 90 % davon wurden von Botnets gesendet; bis 2010, diese Zahlen waren 92 % bzw. 95 %. Während Postscreen(8) hält die Zombies fern, es bleiben mehr smtpd(8) -Prozesse verfügbar für seriöse Kunden.
postscreen(8) verwaltet eine temporäre Zulassungsliste für Clients, die seine Tests bestehen; indem zugelassenen Clients erlaubt wird, Tests zu überspringen, postscreen(8) minimiert seine Auswirkungen auf den legitimen E-Mail-Verkehr.
Der postscreen(8) -Server ist mit Postfix 2.8 und verfügbar später. Um die Implementierung einfach zu halten, postscreen(8) -Delegates DNS Allow/Denylist-Lookups für dnsblog(8)-Serverprozesse und delegiert die TLS-Kryptografie/Entschlüsselung an tlsproxy(8)-Serverprozesse . Diese Delegierung ist für den Remote-SMTP-Client unsichtbar.
Zombie | ||||||||
\ | ||||||||
Zombie | - | tlsproxy(8) | - | - | smtpd(8) | |||
\ | / | |||||||
Sonstiges | --- | Postscreen(8) | ||||||
/ | \ | |||||||
Sonstiges | - | - | smtpd(8) | |||||
/ | ||||||||
Zombie |
- Der postlogd(8) -Server bietet eine Alternative zu Syslog Protokollierung, die die Standardeinstellung bleibt. Diese Funktion ist verfügbar mit Postfix Version 3.4 oder höher und unterstützt die folgenden Modi:
- Protokollierung in Datei, die ein Usability-Problem mit adressiert MacOS und eliminiert Informationsverluste, die durch systemd-Ratenbegrenzungen verursacht werden.
Befehle oder Dämonen | |||||
-> | postlogd(8) | -> | /Pfad/zur/Datei | ||
- Protokollierung auf stdout, wodurch eine Syslog-Abhängigkeit beseitigt wird wenn Postfix in einem Container läuft.
Befehle oder Dämonen | stdout geerbt von "postfix start-fg" | |||
-> | postlogd(8) | -> | ||
Siehe MAILLOG_README für Details und Einschränkungen.