Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| centos:mail_c7:mta_4 [03.11.2014 20:24. ] – [SMTP Recipient Restrictions] django | centos:mail_c7:mta_4 [22.07.2020 20:13. ] (aktuell) – [Reject-Regeln] django | ||
|---|---|---|---|
| Zeile 15: | Zeile 15: | ||
| In der Vergangenheit, | In der Vergangenheit, | ||
| - | Wir werden daher bei den nun folgendem Beispiel zur Konfiguration unter **CentOS 7** einen, auf den ersten ungewöhnlichen Schritt unternehmen und die **main.cf** beiseite legen und eine eigene anlegen. folgende vier Schritte sind hierzu | + | Wir werden daher bei den nun folgendem Beispiel zur Konfiguration unter **CentOS 7** einen, auf den ersten ungewöhnlichen Schritt unternehmen und die **main.cf** beiseite legen und eine eigene anlegen; folgende vier Schritte sind hierzu |
| - Wir stoppen den vorhandenen Postfix-SMTP-Server. < | - Wir stoppen den vorhandenen Postfix-SMTP-Server. < | ||
| - Anschließend wechseln wir in das Konfigurationsverzeichnis // | - Anschließend wechseln wir in das Konfigurationsverzeichnis // | ||
| - | - Nun löschen | + | - Nun löschen |
| - **löschen** < | - **löschen** < | ||
| - **verschieben** < | - **verschieben** < | ||
| Zeile 40: | Zeile 40: | ||
| # | # | ||
| - | Wir werden später die einzelnen Konfigurationsoptionen strukturieren, | + | Wir werden später die einzelnen Konfigurationsoptionen strukturieren, |
| ==== Installations- und Konfigurations Informationen ==== | ==== Installations- und Konfigurations Informationen ==== | ||
| Zeile 245: | Zeile 245: | ||
| # default: unbekannte Empfänger sollen abgewiesen und nicht mit einem | # default: unbekannte Empfänger sollen abgewiesen und nicht mit einem | ||
| # temporären Fehler 450 abgewiesen werden. | # temporären Fehler 450 abgewiesen werden. | ||
| - | unknown_local_recipient_reject_code = 550 | + | # default: |
| + | # unverified_recipient_reject_code = 450 | ||
| + | # | ||
| # Django : 2014-10-15 - Soll bei einem unbekanntem Ziel der genaue Tabellenname | # Django : 2014-10-15 - Soll bei einem unbekanntem Ziel der genaue Tabellenname | ||
| Zeile 273: | Zeile 275: | ||
| </ | </ | ||
| ==== Routing ==== | ==== Routing ==== | ||
| - | In der Section | + | In der Sektion |
| <WRAP center round tip> | <WRAP center round tip> | ||
| - | Auch wenn es für einen kleinen Server erst einmal als Overkill erscheinen mag, den IMAP-Server via **LMTP** anzusprechen, | + | Auch wenn es für einen kleinen Server erst einmal als Overkill erscheinen mag, den IMAP-Server via **LMTP** anzusprechen, |
| </ | </ | ||
| # vim / | # vim / | ||
| <code bash>################################################################################ | <code bash>################################################################################ | ||
| - | ## ROUTING | + | ## ROUTING |
| # | # | ||
| # Django : 2014-10-15 - Relayhost: Alle Nachrichten werden an den Relayhost | # Django : 2014-10-15 - Relayhost: Alle Nachrichten werden an den Relayhost | ||
| Zeile 391: | Zeile 393: | ||
| # smtp_destination_rate_delay = $default_destination_rate_delay | # smtp_destination_rate_delay = $default_destination_rate_delay | ||
| # virtual_destination_rate_delay = $default_destination_rate_delay | # virtual_destination_rate_delay = $default_destination_rate_delay | ||
| - | # Ausgehende Nachrichten des MAilinglistenservers | + | # Ausgehende Nachrichten des Mailinglistenservers |
| # setzen | # setzen | ||
| smtp_destination_rate_delay = 150s | smtp_destination_rate_delay = 150s | ||
| </ | </ | ||
| + | <WRAP center round important 90%> | ||
| + | **WICHTIG**: | ||
| + | </ | ||
| + | |||
| ==== Rückmeldungen beeinflussen und individualisieren ==== | ==== Rückmeldungen beeinflussen und individualisieren ==== | ||
| In der Section **RÜCKMELDUNGEN BEEINFLUSSEN UND INDIVIDUALISIEREN** können wir festlegen, welche Informationen unser Mailserver unterdrücken und weitergeben soll. Auch eine Individualisierung auf Mailserverbetreiberebene sind möglich. | In der Section **RÜCKMELDUNGEN BEEINFLUSSEN UND INDIVIDUALISIEREN** können wir festlegen, welche Informationen unser Mailserver unterdrücken und weitergeben soll. Auch eine Individualisierung auf Mailserverbetreiberebene sind möglich. | ||
| Zeile 445: | Zeile 451: | ||
| # default: disable_vrfy_command = no | # default: disable_vrfy_command = no | ||
| disable_vrfy_command = yes | disable_vrfy_command = yes | ||
| + | |||
| + | # Django : 2015-10-08 - Fehlercode bei Verwendung der Option | ||
| + | # reject_plaintext_session beim Einsatz von verpflichtender | ||
| + | # TLS-Transportverschlüsselung. | ||
| + | # https:// | ||
| + | # default: plaintext_reject_code = 450 | ||
| + | # plaintext_reject_code = 571 | ||
| </ | </ | ||
| - | Da wir ja nicht nur englischsprachige Nutzer haben, die bei unserem MX Post abliefern dürfen, möchten wir unter Umständen auch individuelle Bouncemessages verwenden. In der Section | + | Da wir ja nicht nur englischsprachige Nutzer haben, die bei unserem MX Post abliefern dürfen, möchten wir unter Umständen auch individuelle Bouncemessages verwenden. In der Sektion |
| # cd / | # cd / | ||
| Zeile 458: | Zeile 471: | ||
| Bevor wir uns nun die einzelnen Lookup-Tabellen genauer ansehen, werfen wir noch einen Blick in die nachfolgende Übersicht um festzustellen, | Bevor wir uns nun die einzelnen Lookup-Tabellen genauer ansehen, werfen wir noch einen Blick in die nachfolgende Übersicht um festzustellen, | ||
| - | <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 | + | |
| - | + | ||
| - | </ | + | |
| Am Anfang der Definition unserer Lookup-Tabellen setzen wir noch zwei (Adress-)Listenspezifische Werte. Statt der Defaultmäßigen Tabellen im **hash**-Format setzen wir auf die wesentlich performanteren **btree**-Tabellen. | Am Anfang der Definition unserer Lookup-Tabellen setzen wir noch zwei (Adress-)Listenspezifische Werte. Statt der Defaultmäßigen Tabellen im **hash**-Format setzen wir auf die wesentlich performanteren **btree**-Tabellen. | ||
| Zeile 1269: | Zeile 1027: | ||
| | **5xx**// | | **5xx**// | ||
| | **WARN**// | | **WARN**// | ||
| + | | **restriction** | ||
| Zeile 1289: | Zeile 1047: | ||
| # Postfix die ASCII-Konfigurationsdatei direkt auswertet! | # Postfix die ASCII-Konfigurationsdatei direkt auswertet! | ||
| # | # | ||
| + | # | ||
| + | # | ||
| </ | </ | ||
| Zeile 1338: | Zeile 1098: | ||
| # die zugehörige Datenbank erzeugt werden. | # die zugehörige Datenbank erzeugt werden. | ||
| # | # | ||
| + | # | ||
| </ | </ | ||
| Zeile 2621: | Zeile 2382: | ||
| virusalert@nausch.org | virusalert@nausch.org | ||
| postmaster@nausch.org | postmaster@nausch.org | ||
| + | |||
| + | === virtual_alias files in Verbindung mit postfixadmin === | ||
| + | Verwalten wir die Domänen und Nutzerkonten mit Hilfe von **[[centos: | ||
| + | |||
| + | < | ||
| + | # das mySQL-Datenbankbackend (Verwaltung mit Hilfe von postfixadmin) | ||
| + | # default: virtual_mailbox_domains = $virtual_mailbox_maps | ||
| + | # virtual_alias_maps = $virtual_maps | ||
| + | # virtual_mailbox_maps = | ||
| + | virtual_mailbox_domains = proxy: | ||
| + | |||
| + | virtual_alias_maps = proxy: | ||
| + | proxy: | ||
| + | proxy: | ||
| + | |||
| + | virtual_mailbox_maps = proxy: | ||
| + | proxy: | ||
| + | |||
| + | Die zugehörigen Dateien, haben dann folgende Inhalte. | ||
| + | == mysql_virtual_domains_maps.cf == | ||
| + | # vim / | ||
| + | <file bash / | ||
| + | # Definition der Datenbankanbindung zur Abfrage der virtuellen Domaenen | ||
| + | # | ||
| + | user = postfix_user | ||
| + | password = rbgsDK39DeM2b2btx9iMHfzd | ||
| + | hosts = mariadb.dmz.nausch.org | ||
| + | dbname = postfix | ||
| + | query = SELECT domain FROM domain WHERE domain=' | ||
| + | </ | ||
| + | |||
| + | == mysql_virtual_alias_maps.cf == | ||
| + | # vim / | ||
| + | <file bash / | ||
| + | # Definition der Datenbankanbindung zur Abfrage der virtual Alias Maps | ||
| + | # | ||
| + | user = postfix_user | ||
| + | password = rbgsDK39DeM2b2btx9iMHfzd | ||
| + | hosts = mariadb.dmz.nausch.org | ||
| + | dbname = postfix | ||
| + | query = SELECT goto FROM alias WHERE address=' | ||
| + | </ | ||
| + | |||
| + | == mysql_virtual_alias_domain_maps.cf == | ||
| + | # vim / | ||
| + | <file bash / | ||
| + | # Definition der Datenbankanbindung zur Abfrage der virtual Alias Domain Maps | ||
| + | # | ||
| + | user = postfix_user | ||
| + | password = rbgsDK39DeM2b2btx9iMHfzd | ||
| + | hosts = mariadb.dmz.nausch.org | ||
| + | dbname = postfix | ||
| + | query = SELECT goto FROM alias, | ||
| + | | ||
| + | AND alias_domain.active=' | ||
| + | </ | ||
| + | |||
| + | == mysql_virtual_alias_domain_catchall_maps.cf == | ||
| + | # vim / | ||
| + | <file bash / | ||
| + | # Definition der Datenbankanbindung zur Abfrage der virtual Alias Domain Catchall Maps | ||
| + | # | ||
| + | user = postfix_user | ||
| + | password = rbgsDK39DeM2b2btx9iMHfzd | ||
| + | hosts = mariadb.dmz.nausch.org | ||
| + | dbname = postfix | ||
| + | query = SELECT goto FROM alias, | ||
| + | | ||
| + | AND alias_domain.active=' | ||
| + | </ | ||
| + | |||
| + | == mysql_virtual_mailbox_maps.cf == | ||
| + | # vim / | ||
| + | <file bash / | ||
| + | # Definition der Datenbankanbindung zur Abfrage der virtual Mailbox Maps | ||
| + | # | ||
| + | user = postfix_user | ||
| + | password = rbgsDK39DeM2b2btx9iMHfzd | ||
| + | hosts = mariadb.dmz.nausch.org | ||
| + | dbname = postfix | ||
| + | query = SELECT maildir FROM mailbox WHERE username=' | ||
| + | </ | ||
| + | |||
| + | == mysql_virtual_alias_domain_mailbox_maps.cf == | ||
| + | # vim / | ||
| + | <file bash / | ||
| + | # Definition der Datenbankanbindung zur Abfrage der virtual Alias Domain Mailbox Maps | ||
| + | # | ||
| + | user = postfix_user | ||
| + | password = rbgsDK39DeM2b2btx9iMHfzd | ||
| + | hosts = mariadb.dmz.nausch.org | ||
| + | dbname = postfix | ||
| + | query = SELECT maildir FROM mailbox, | ||
| + | AND mailbox.username = CONCAT(' | ||
| + | | ||
| + | </ | ||
| ==== bcc ==== | ==== bcc ==== | ||
| Zeile 2791: | Zeile 2648: | ||
| * **reject_rbl_client ix.dnsbl.manitu.net** Blockiert die eMail, wenn die Client-IP-Adresse bei **ix.dnsbl.manitu.net** geblacklistet ist. | * **reject_rbl_client ix.dnsbl.manitu.net** Blockiert die eMail, wenn die Client-IP-Adresse bei **ix.dnsbl.manitu.net** geblacklistet ist. | ||
| * **reject_rbl_client bl.spamcop.net** Blockiert die eMail, wenn die Client-IP-Adresse bei **bl.spamcop.net** geblacklistet ist. | * **reject_rbl_client bl.spamcop.net** Blockiert die eMail, wenn die Client-IP-Adresse bei **bl.spamcop.net** geblacklistet ist. | ||
| - | * **reject_rbl_client dnsbl.njabl.org** Blockiert die eMail, wenn die Client-IP-Adresse bei **dnsbl.njabl.org** geblacklistet ist. | ||
| * **reject_rhsbl_client multi.uribl.com** \\ Blockiert die eMail, sofern der Client-Hostname in der verwendeten **rhsbl_domain**(**RHSBL**)((**R**ight-**H**and **S**ided **B**lacklist)) gelistet ist. | * **reject_rhsbl_client multi.uribl.com** \\ Blockiert die eMail, sofern der Client-Hostname in der verwendeten **rhsbl_domain**(**RHSBL**)((**R**ight-**H**and **S**ided **B**lacklist)) gelistet ist. | ||
| + | * **reject_plaintext_session** \\ Liefert einen **REJECT**, wenn die Verbindung nicht TLS transportverschlüsselt ist. | ||
| ==== SMTP Recipient Restrictions ==== | ==== SMTP Recipient Restrictions ==== | ||
| Nachfolgende Definitionen fügen wir nun am Ende der // | Nachfolgende Definitionen fügen wir nun am Ende der // | ||
| Zeile 2841: | Zeile 2697: | ||
| # Backupserver (MX) erlauben | # Backupserver (MX) erlauben | ||
| - | permit_mx_backup | + | # |
| # alles andere an relaying verbieten | # alles andere an relaying verbieten | ||
| Zeile 2858: | Zeile 2714: | ||
| ==== SMTP Relay Restrictions ==== | ==== SMTP Relay Restrictions ==== | ||
| + | Nachfolgende Definitionen fügen wir nun am Ende der // | ||
| + | # vim / | ||
| + | < | ||
| + | |||
| + | ################################################################################ | ||
| + | ## SMTP RELAY RESTRICTIONS | ||
| + | # | ||
| + | # Django : 2014-10-27 - Definition, wer über unseren MX relayen darf oder nicht. | ||
| + | # http:// | ||
| + | # default: smtpd_relay_restrictions = permit_mynetworks, | ||
| + | # permit_sasl_authenticated, | ||
| + | # | ||
| + | smtpd_relay_restrictions = | ||
| + | # Unsere eigenen Nutzer zulassen-/ | ||
| + | | ||
| + | | ||
| + | # Backupserver (MX) erlauben | ||
| + | # | ||
| + | # alles andere an relaying verbieten, d.h. mit einem finalen error 550 abweisen | ||
| + | | ||
| + | </ | ||
| + | |||
| + | ===== main.cf ===== | ||
| + | Somit ergibt sich vorerst folgende Hauptkonfigurationsdatei // | ||
| + | # less / | ||
| + | <file bash / | ||
| + | # # | ||
| + | # Django : 2014-10-15 - Musterkonfiguration Postfix 2.11 unter CentOS 7 # | ||
| + | # # | ||
| + | ################################################################################ | ||
| + | |||
| + | ################################################################################ | ||
| + | ## INSTALLATIONS-KONFIGURATIONS INFORMATIONEN | ||
| + | # | ||
| + | # Folgende Default-Parameter werden benutzt, sobald eine neue Postfix-Version | ||
| + | # installiert wird. | ||
| + | # | ||
| + | # Django : 2014-10-31 - Vollständiger Pfad zum Postfix sendmail Programm, dem | ||
| + | # zu senmail kompatiblen sendmail Befehl. | ||
| + | # default: sendmail_path = / | ||
| + | sendmail_path = / | ||
| + | |||
| + | # Django : 2014-10-31 - Vollständiger Pfad zum Postfix newaliases Programm, dem | ||
| + | # zu sendmail kompatiblen Programm zum Anlegen der Alias Datenbanken. | ||
| + | # default: newaliases_path = / | ||
| + | newaliases_path = / | ||
| + | |||
| + | # Django : 2014-10-31 - Vollständiger Pfad zum Postfix qmail-Programm, | ||
| + | # sendmail kompatiblen Programm zum Anzeigen der Maile-Queues | ||
| + | # default: mailq_path = / | ||
| + | mailq_path = / | ||
| + | |||
| + | # Django : 2014-10-31 - Gruppe für die Befehle mail submission und queue | ||
| + | # management. Die Gruppe muss eine numerische eigene ID haben | ||
| + | # und darf nicht mit anderen Benutzeraccounts geteilt werden, | ||
| + | # auch nicht mit dem Postfix User! | ||
| + | # default: setgid_group = postdrop | ||
| + | setgid_group = postdrop | ||
| + | |||
| + | # Django : 2014-10-31 - Pfad für die Postfix Postfix HTML Dokumentation. | ||
| + | # default: html_directory | ||
| + | html_directory = no | ||
| + | |||
| + | # Django : 2014-10-31 - Pfad für die Postfix online man-pages. | ||
| + | # default: manpage_directory = / | ||
| + | manpage_directory = / | ||
| + | |||
| + | # Django : 2014-10-31 - Pfadangabe für die Postfix Beispielkonfigurationsdateien. | ||
| + | # Dieser Parameter ist obsolete seit Postfix 2.1. | ||
| + | # default: sample_directory = / | ||
| + | sample_directory = / | ||
| + | |||
| + | # Django : 2014-10-31 - Pfadangabe für die Postfix README Dateien. | ||
| + | # default: readme_directory = no | ||
| + | readme_directory = / | ||
| + | |||
| + | |||
| + | ################################################################################ | ||
| + | ## PFADANGABEN DER LOKALEN INSTALLATION | ||
| + | # | ||
| + | # Django : 2014-10-31 - Definition des Speicherortes für die Queue-Dateien von | ||
| + | # Postfix. Dies ist auch der root-Pfad, falls Postfix in einer | ||
| + | # chroot-Umgebung laufen sollte. In der Datei examples/ | ||
| + | # findet man bei Bedarf nützliche Hinweise und Beispiele, die | ||
| + | # beschreiben, | ||
| + | # betreiben kann. | ||
| + | # default: queue_directory = / | ||
| + | queue_directory = / | ||
| + | |||
| + | # Django : 2014-10-31 - Vollständiger Pfad zu allen postXXX-Programmen. | ||
| + | # default: command_directory = /usr/sbin | ||
| + | command_directory = /usr/sbin | ||
| + | |||
| + | # Django : 2014-10-31 Vollständiger Pfad zum Verzeichnis, | ||
| + | # postfix Daemon Programme (die z.B. auch in der master.cf | ||
| + | # aufgeführt sind) befinden. Das Verzeichnis muss root gehören! | ||
| + | # default: daemon_directory = / | ||
| + | daemon_directory = / | ||
| + | |||
| + | # Django : 2014-10-31 - Datenverzeichnis, | ||
| + | # ablegt, wie z.B. Caches, Zufallszahlen ect. pp. Das Verzeichnis | ||
| + | # muss dem nachfolgendem " | ||
| + | # default: data_directory = / | ||
| + | data_directory = / | ||
| + | |||
| + | |||
| + | ################################################################################ | ||
| + | ## RECHTE BEI QUEUES UND PROZESSEN | ||
| + | # | ||
| + | # Django : 2014-10-31 - Definition des Nutzers, unter dem die meisten Postfix | ||
| + | # Daemons laufen und mit dem die Queue-Dateien geschrieben werden. | ||
| + | # Die User muss unique sein, d.h. er darf weder einer anderen Gruppe | ||
| + | # noch einem Anderen User angehören, sowie fremde Dateirechte und | ||
| + | # Prozesse auf dem System besitzen! Also unbedingt einen separaten | ||
| + | # Nutzer verwenden! | ||
| + | # default: mail_owner = postfix | ||
| + | mail_owner = postfix | ||
| + | |||
| + | # Django : 2014-10-31 - Festlegung der Defaultrechte, | ||
| + | # Delivery Agent) verwendet werden, wenn dieser Nachrichten in eine | ||
| + | # externe Datei schreibt, oder einem anderen Befehl übergibt. | ||
| + | # Der Parameter wird auch verwendet, sollten keine userbezogenen | ||
| + | # Vorgaben vorhanden sein. | ||
| + | # Auf keinen Fall einen privilegierten Nutzer oder gar den Benutzer | ||
| + | # postfix verwenden! | ||
| + | # default: default_privs = nobody | ||
| + | default_privs = nobody | ||
| + | |||
| + | ################################################################################ | ||
| + | ## DEBUGGING | ||
| + | # | ||
| + | # Django : 2014-10-31 - Mit dem Parameter " | ||
| + | # um welchen Faktor der Logging-Level erhöht wird, wenn ein SMTP | ||
| + | # Client, ein Hostname oder eine IP-Adresse zu den Definitionen des | ||
| + | # nachfolgenden " | ||
| + | # default: debug_peer_level = 2 | ||
| + | debug_peer_level = 2 | ||
| + | |||
| + | # Django : 2014-10-31 : Definition einer Liste aus Netzwerk-Adressen, | ||
| + | # Namen, IP-Adressen oder entsprechender Postfix-Listen | ||
| + | # " | ||
| + | # erhöht werden soll. | ||
| + | # Bsp: debug_peer_list = 127.0.0.1 | ||
| + | # | ||
| + | # | ||
| + | # default: debug_peer_list = | ||
| + | |||
| + | # Django : 2014-10-13 - Debugger-Befehlszeile | ||
| + | # Die Option " | ||
| + | # das ausgeführt werden soll, sofern der Postfix Daemon mit der | ||
| + | # Option -D gestartet wurde. | ||
| + | # Am Ende der Befehlskette sollte man ein "... & sleep 5" anfügen, | ||
| + | # damit damit der Debugger genügend Zeit hat loszulegen, bevor das | ||
| + | # Programm aufgerufen wird. | ||
| + | # | ||
| + | # Da wir kein X-System auf unserem Mailserver installiert haben (wozu | ||
| + | # auch?), verwenden wir nachfolgendes Beispiel. Als Ergebnis erhalten | ||
| + | # wir damit eine Datei mit dem Namen des Prozesses und der zugehörigen | ||
| + | # ID, die im Konfigurationsverzeichnis abgespeichert wird. | ||
| + | # | ||
| + | debugger_command = | ||
| + | | ||
| + | echo where) | gdb $daemon_directory/ | ||
| + | > | ||
| + | |||
| + | |||
| + | ################################################################################ | ||
| + | ## ZUSTÄNDIGKEITEN, | ||
| + | # | ||
| + | # Django : 2014-10-15 - Hostname auf " | ||
| + | # default: myhostname = FQDN | ||
| + | myhostname = mx01.nausch.org | ||
| + | |||
| + | # Django : 2014-10-15 - Domainpart der lokal generierten Nachrichten gesetzt | ||
| + | # default: myorigin = $myhostname | ||
| + | myorigin = $mydomain | ||
| + | |||
| + | # Django : 2014-10-15 - Für welche Domains ist unser Mailserver zuständig, | ||
| + | # also final destination? | ||
| + | # auch noch Nachrichten für die beiden Sub-Domains lists.nausch.org | ||
| + | # (Mailman) und dmarc.nausch.org (DMARC-Reportmails) annehmen. | ||
| + | # default: mydestination = $myhostname, | ||
| + | mydestination = | ||
| + | $myhostname | ||
| + | localhost.$mydomain | ||
| + | localhost | ||
| + | lists.nausch.org | ||
| + | dmarc.nausch.org | ||
| + | |||
| + | # default: unbekannte Empfänger sollen abgewiesen und nicht mit einem | ||
| + | # temporären Fehler 450 abgewiesen werden. | ||
| + | unknown_local_recipient_reject_code = 550 | ||
| + | |||
| + | # Django : 2014-10-15 - Soll bei einem unbekanntem Ziel der genaue Tabellenname | ||
| + | # bei der Ablehnung genannt werden? | ||
| + | # default: show_user_unknown_table_name = yes | ||
| + | show_user_unknown_table_name = no | ||
| + | |||
| + | # Django : 2014-10-15 - auf allen Interfaces und Protokollen (IPv4 und IPv6) | ||
| + | # soll gelauscht werden | ||
| + | # default: inet_interfaces = all | ||
| + | # default: inet_protocols = all | ||
| + | |||
| + | # Django : 2014-10-15 - Grundsätzlich soll erst einmal unser Mailserver nur dem | ||
| + | # eigenen Host trauen, sonst niemanden! | ||
| + | # default: mynetworks_style = subnet | ||
| + | mynetworks_style = host | ||
| + | |||
| + | mynetworks = | ||
| + | 127.0.0.0/8 | ||
| + | [::1]/128 | ||
| + | 10.0.0.0/24 | ||
| + | 10.0.10.0/ | ||
| + | 130.185.109.34/ | ||
| + | 130.185.109.87/ | ||
| + | |||
| + | # Django : 2015-10-15 - Backup-Mailserver explizit erlauben | ||
| + | # default: permit_mx_backup_networks = | ||
| + | permit_mx_backup_networks = 88.217.171.167/ | ||
| + | |||
| + | |||
| + | ################################################################################ | ||
| + | ## ROUTING _ WEITERLEITEN VON NACHRICHTEN AN DAS EIGENTLICHE ZIEL | ||
| + | # | ||
| + | # Django : 2014-10-15 - Relayhost: Alle Nachrichten werden an den Relayhost | ||
| + | # smtp-out.dmz.nausch.org gesendet. | ||
| + | # default: relayhost = | ||
| + | # relayhost = [smtp-out.dmz.nausch.org] | ||
| + | |||
| + | # Django : 2014-10-15 - Backup-Relayhost: | ||
| + | # sein, soll sich unser MTA an den backup-relayhost | ||
| + | # smtp-backup.dmz.nausch.org senden | ||
| + | # default: smtp_fallback_relay = $fallback_relay | ||
| + | # smtp_fallback_relay = [smtp-backup.dmz.nausch.org] | ||
| + | |||
| + | # Django : 2014-10-15 - Relay Domains: Postfix als eingehendes Mailrelay vor | ||
| + | # einem anderen Server | ||
| + | # default: relay_domains = $mydestination | ||
| + | relay_domains = btree:/ | ||
| + | |||
| + | # Django : 2014-10-15 - Nachrichten für eine bestimmte Richtung sollen | ||
| + | # abweichend von den MX-Definitionen im DNS an dedizierte Ziele | ||
| + | # geroutet/ | ||
| + | # default: transport_maps = | ||
| + | transport_maps = btree:/ | ||
| + | |||
| + | # Django : 2014-10-15 - Definition zur Erreichbarkeit unseres MDA-Servers | ||
| + | # Dovecot-IMAP | ||
| + | # default: virtual_transport = virtual | ||
| + | virtual_transport = lmtp: | ||
| + | |||
| + | |||
| + | ################################################################################ | ||
| + | ## QUEUEING-VERHALTEN | ||
| + | # | ||
| + | # Django : 2014-10-18 - Queue-Lifetime auf 3 Tage heruntersetzen, | ||
| + | # die maximale Zeit, die der MX versuchen darf, eine Nachricht zuzu- | ||
| + | # stellen | ||
| + | # default: maximal_queue_lifetime = 5d | ||
| + | maximal_queue_lifetime = 3d | ||
| + | |||
| + | # Django : 2014-03-17- Bounce-Queue-Lifetime auf 3 Tage heruntersetzen, | ||
| + | # der MTA versuchen soll eine Bouncenachricht zuzustellen. | ||
| + | # default: bounce_queue_lifetime = 5d | ||
| + | bounce_queue_lifetime = 3d | ||
| + | |||
| + | |||
| + | ################################################################################ | ||
| + | ## NACHRICHTENGROESSE UND ZUSTELLVERSUCHE/ | ||
| + | # | ||
| + | # Django : 2014-10-18 Maximale Nachrichtengröße festlegen. Maximale Nachrichten- | ||
| + | # größe einer Nachricht incl. der Headerinformationen darf maximal | ||
| + | # 50 MB ( 52428800 = 50*1024*1024 ) betragen, darüber verweigert | ||
| + | # Postfix die Annahme. | ||
| + | # default: message_size_limit = 10240000 | ||
| + | message_size_limit = 52428800 | ||
| + | |||
| + | # Django : 2014-10-18 Maximale Mailboxgröße einer einzelnen Mailbox bzw. | ||
| + | # Maildir-Fiels. Der Wert darf nicht kleiner als die maximale | ||
| + | # Nachrichtengröße (message_size_limit) sein. | ||
| + | # default: mailbox_size_limit = 10240000 | ||
| + | mailbox_size_limit = 52428800 | ||
| + | |||
| + | # Django : 2010-10-28 - Rate Limiting (DOS-Attacken verhindern) maximale | ||
| + | # Zustellung limitieren (Kapitel 24 des Buches Postfix) | ||
| + | # (Kapitel 13.14 Rate-Limiting gegenüber Clients durchsetzen) | ||
| + | # Basiszeiteinheit für die Kalkulation der rate-limits | ||
| + | # default: anvil_rate_time_unit = 60s | ||
| + | # | ||
| + | # Maximale Anzahl gleichzeitiger Verbindungen pro einliefernenden Host | ||
| + | # default : smtpd_client_connection_count_limit = 50 | ||
| + | smtpd_client_connection_count_limit = 20 | ||
| + | # | ||
| + | # Maximale Anzahl von Verbindungsversuchen je definierter Zeiteinheit | ||
| + | # (anvil_rate_time_unit) pro einliefernden Host | ||
| + | # default: smtpd_client_connection_rate_limit = 0 | ||
| + | smtpd_client_connection_rate_limit = 20 | ||
| + | # | ||
| + | # Maximale Anzahl von erlaubten Empfänger Adressen je definierter | ||
| + | # Zeiteinheit (anvil_rate_time_unit) pro einliefernden Host | ||
| + | # default: smtpd_client_recipient_rate_limit = 0 | ||
| + | smtpd_client_recipient_rate_limit = 50 | ||
| + | # | ||
| + | # Maximale Anzahl von erlaubten Anzahl von eMails je definierter Zeit- | ||
| + | # einheit (anvil_rate_time_unit) pro einliefernden Host | ||
| + | # deafault: smtpd_client_message_rate_limit = 0 | ||
| + | smtpd_client_message_rate_limit = 50 | ||
| + | # | ||
| + | # Welche Cleints sollen vom Rate-Limeting ausgenommen werden? Per | ||
| + | # Default sind dies alle Clients aus dem eigenen Netzwerk $mynetworks | ||
| + | # default: smtpd_client_event_limit_exceptions = | ||
| + | # ${smtpd_client_connection_limit_exceptions: | ||
| + | # | ||
| + | # Wie oft soll der anvil-Daemon Statistikdaten ins Maillog schreiben? | ||
| + | # default: anvil_status_update_time = 600s | ||
| + | # | ||
| + | # Ausgehende Verbindungen der Delivery-Clients limitieren. Für jeden | ||
| + | # einzelnen Transport kann bei Bedarf eine eigene Rate definiert | ||
| + | # werden. | ||
| + | # default: default_destination_rate_delay = 0s | ||
| + | # error_destination_rate_delay = $default_destination_rate_delay | ||
| + | # lmtp_destination_rate_delay = $default_destination_rate_delay | ||
| + | # local_destination_rate_delay = $default_destination_rate_delay | ||
| + | # relay_destination_rate_delay = $default_destination_rate_delay | ||
| + | # retry_destination_rate_delay = $default_destination_rate_delay | ||
| + | # smtp_destination_rate_delay = $default_destination_rate_delay | ||
| + | # virtual_destination_rate_delay = $default_destination_rate_delay | ||
| + | # Ausgehende Nachrichten des MAilinglistenservers auf 2,5 Minuten | ||
| + | # setzen | ||
| + | smtp_destination_rate_delay = 150s | ||
| + | |||
| + | |||
| + | ################################################################################ | ||
| + | ## RÜCKMELDUNGEN BEEINFLUSSEN UND INDIVIDUALISIEREN | ||
| + | # | ||
| + | # Django : 2014-10-18 - Greeting Banner bei der 220er Begrüßung des MTA | ||
| + | smtpd_banner = $myhostname ESMTP $mail_name | ||
| + | |||
| + | # Django : 2014-10-16 - Extra-Footer bls zweite Zeiler jeder Fehlermeldungen | ||
| + | # anfügen | ||
| + | smtpd_reject_footer = \c. Contact your postmaster/ | ||
| + | |||
| + | # Django : 2014-10-16 - Anzeige des Tabellen-Namens, | ||
| + | # nicht gefunden wurde. Das unterdrücken macht unter Umständen die | ||
| + | # Fehlersuche etwas aufwändiger, | ||
| + | # im Grunde nichts an. | ||
| + | # default: show_user_unknown_table_name = yes | ||
| + | show_user_unknown_table_name = no | ||
| + | |||
| + | # Django : 2014-10-24 - Adressverifikationsdetails unterdrücken | ||
| + | # Weder den numerischen SMTP-reply-Code, | ||
| + | # zurückgeben. Lediglich " | ||
| + | # default: unverified_recipient_reject_reason = | ||
| + | unverified_recipient_reject_reason = Recipient address lookup failed | ||
| + | |||
| + | # Django : 2014-10-24 - Adressverifikationsdetails unterdrücken | ||
| + | # Weder den numerischen SMTP-reply-Code, | ||
| + | # zurückgeben. Lediglich " | ||
| + | # default: unverified_sender_reject_reason = | ||
| + | unverified_sender_reject_reason = Sender address lookup failed | ||
| + | |||
| + | # Django : 2014-10-18 Definition der benutzerspezifischen und individualisierten | ||
| + | # Bounce-Nachrichten mit deutsch- und englischsprachigen Texten aktiviert | ||
| + | # default: bounce_template_file = | ||
| + | bounce_template_file = / | ||
| + | |||
| + | # Django : 2014-10-18 - Delivery Status Notification (DSN) selectiv sperren | ||
| + | # oder freigeben | ||
| + | # default: smtpd_discard_ehlo_keyword_address_maps = | ||
| + | smtpd_discard_ehlo_keyword_address_maps = cidr:/ | ||
| + | |||
| + | # Django : 2014-10-18 - SMTP-Kommando VRFY sperren, mit dem eine einfache und | ||
| + | # schnelle Addressverifizierung möglich ist. | ||
| + | # default: disable_vrfy_command = no | ||
| + | disable_vrfy_command = yes | ||
| + | |||
| + | # Django : 2015-10-08 - Fehlercode bei Verwendung der Option | ||
| + | # reject_plaintext_session beim Einsatz von verpflichtender | ||
| + | # TLS-Transportverschlüsselung. | ||
| + | # https:// | ||
| + | # default: plaintext_reject_code = 450 | ||
| + | # plaintext_reject_code = 573 | ||
| + | |||
| + | |||
| + | ################################################################################ | ||
| + | ## LOOKUP-TABELLEN | ||
| + | # | ||
| + | # Django : 2014-10-15 - default Datenbank Typ für die Befehle newaliases, | ||
| + | # postalias und postmap auf das performantere btree umgestellt. | ||
| + | # default default_database_type = hash | ||
| + | default_database_type = btree | ||
| + | |||
| + | # Django : 2014-10-15 - Trennzeichen zwischen Usernamen und Adresserweiterung | ||
| + | # default: recipient_delimiter = | ||
| + | recipient_delimiter = + | ||
| + | |||
| + | # Django : 2014-10-15 - Alias-Tabelle für die Zustellung von lokalen Nachrichten | ||
| + | # durch den MDA (Mail Delivery Agent) " | ||
| + | # Tabelle / | ||
| + | # notwendig! | ||
| + | # default: alias_maps = hash:/ | ||
| + | alias_maps = hash:/ | ||
| + | # btree:/ | ||
| + | alias_database = hash:/ | ||
| + | |||
| + | # Django : 2014-10-15 - Optionale Lookup Tabelle mit allen gültigen Empfängern | ||
| + | # der in $relay_domains aufgeführten Domains | ||
| + | # default: relay_recipient_maps = | ||
| + | relay_recipient_maps = | ||
| + | # | ||
| + | # | ||
| + | |||
| + | # Django : 2014-10-15 - virtuelle Mail-Domains und Mailboxen mit Anbindung an | ||
| + | # das mySQL-Datenbankbackend (Verwaltung mit Hilfe von postfixadmin) | ||
| + | # default: virtual_mailbox_domains = $virtual_mailbox_maps | ||
| + | # virtual_alias_maps = $virtual_maps | ||
| + | # virtual_mailbox_maps = | ||
| + | virtual_mailbox_domains = proxy: | ||
| + | |||
| + | virtual_alias_maps = proxy: | ||
| + | proxy: | ||
| + | proxy: | ||
| + | # | ||
| + | virtual_mailbox_maps = proxy: | ||
| + | proxy: | ||
| + | |||
| + | # Django : 2014-10-15 - BCC-Adress Lookup Tabelle mit deren Hilfe Nachrichten | ||
| + | # einzelner oder mehrerer Empfänger automatisch an einen weiteren | ||
| + | # Empfänger geschickt werden. | ||
| + | # default: recipient_bcc_maps = | ||
| + | recipient_bcc_maps = btree:/ | ||
| + | |||
| + | # Django : 2014-10-15 - BCC-Adress Lookup Tabelle mit deren Hilfe Nachrichten | ||
| + | # einzelner oder mehrerer Absender automatisch an einen weiteren | ||
| + | # Empfänger geschickt werden. | ||
| + | sender_bcc_maps = btree:/ | ||
| + | |||
| + | # Django : 2014-10-16 - SMTP Lookup Tabelle mit deren Hilfe eMail-Adressen der | ||
| + | # Empfänger im SMTP-Envelope und im Header der eMail beim Verlassen | ||
| + | # des MTA via SMTP umgeschrieben werden können. | ||
| + | # default: smtp_generic_maps = | ||
| + | smtp_generic_maps = btree:/ | ||
| + | |||
| + | # Django : 2014-10-16 - LMTP Lookup Tabelle mit deren Hilfe eMail-Adressen der | ||
| + | # Empfänger im SMTP-Envelope und im Header der eMail beim Verlassen | ||
| + | # des MTA zum MDA via LMTP umgeschrieben werden können. | ||
| + | # default: smtp_generic_maps = | ||
| + | lmtp_generic_maps = btree:/ | ||
| + | |||
| + | # Django : 2014-10-16 - Lookup-Tabelle zum Umschreibungen von Absender-eMail- | ||
| + | # -Adressen im SMTP-Envelop und/oder im Header der eMail. | ||
| + | # default: sender_canonical_maps = | ||
| + | sender_canonical_maps = btree:/ | ||
| + | # SRS - Sender Rewriting Scheme mit postsrsd | ||
| + | # | ||
| + | # Definition welche Adressen umgeschrieben werden sollen | ||
| + | # default: sender_canonical_classes = envelope_sender, | ||
| + | sender_canonical_classes = envelope_sender | ||
| + | |||
| + | # Django : 2014-10-16 - Lookup-Tabelle zum Umschreibungen von Empfänger-eMail- | ||
| + | # -Adressen im SMTP-Envelop und/oder im Header der eMail. | ||
| + | # default: recipient_canonical_maps = | ||
| + | recipient_canonical_maps = btree:/ | ||
| + | # SRS - Sender Rewriting Scheme mit postsrsd | ||
| + | # | ||
| + | # Definition welche Adressen umgeschrieben werden sollen | ||
| + | # default: recipient_canonical_classes = envelope_recipient, | ||
| + | recipient_canonical_classes = envelope_recipient | ||
| + | |||
| + | # Django : 2014-10-16 - Lookup-Tabelle zum Aktivieren von " | ||
| + | # an den Absender einer eMail über nicht existierende eMail-Adressen | ||
| + | # mit Angabe der neu zu nutzenden eMailadresse des Empfängers. | ||
| + | # default: relocated_maps = | ||
| + | relocated_maps = btree:/ | ||
| + | |||
| + | # 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: | ||
| + | |||
| + | |||
| + | ################################################################################ | ||
| + | ## SMTP RECIPIENT RESTRICTIONS | ||
| + | # | ||
| + | # Django : 2014-10-29 - Schutz unserer Empfänger mit Hilfe der Recipient | ||
| + | # Restrictions | ||
| + | # default: smtpd_recipient_restrictions = | ||
| + | smtpd_recipient_restrictions = | ||
| + | # Postmaster, abuse und andere aufgaben- oder funktionsgebundene | ||
| + | # eMail-Adressen (Role-Accounts) whitelisten | ||
| + | | ||
| + | |||
| + | # Black- und Whitelisting | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | |||
| + | # Unsere eigenen Nutzer zulassen-/ | ||
| + | # (Kapitel 8.2.2 Relaying erlauben und verbieten) | ||
| + | | ||
| + | | ||
| + | |||
| + | # RBL überprüfen | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | |||
| + | # Greylisting via postgrey checken via Unix-Socket | ||
| + | # (Kapitel 9.2.5 postgrey installieren) | ||
| + | # check_policy_service unix: | ||
| + | |||
| + | # Policyd-Weight check over TCP-Connection | ||
| + | # (Kapitel 9.3 policyd-weight installieren) | ||
| + | # check_client_access btree:/ | ||
| + | # check_policy_service inet: | ||
| + | |||
| + | # Dynamische Prüfung auf existente Relay-Empfänger | ||
| + | # (Kapitel 12.2.2 Dynamische Empfänger-Verifizierung) | ||
| + | | ||
| + | |||
| + | # Backupserver (MX) erlauben | ||
| + | | ||
| + | |||
| + | # alles andere an relaying verbieten | ||
| + | # (Kapitel 8.2.2 Relaying erlauben und verbieten) | ||
| + | | ||
| + | |||
| + | # Quota-Status-Policy-Daemon am Dovecot-Backend-System | ||
| + | # Dovecotbuch (ISBN 978-3-95539-74-7) Seite 219 ff. | ||
| + | # (Kapitel 11.11 "Der Quota-Policy-Server für Postfix" | ||
| + | | ||
| + | |||
| + | # Zu guter Letzt alles durchlassen, | ||
| + | # beanstandet wurde | ||
| + | | ||
| + | |||
| + | |||
| + | ################################################################################ | ||
| + | ## SMTP RELAY RESTRICTIONS | ||
| + | # | ||
| + | # Django : 2014-10-27 - Definition, wer über unseren MX relayen darf oder nicht. | ||
| + | # http:// | ||
| + | # default: smtpd_relay_restrictions = permit_mynetworks, | ||
| + | # permit_sasl_authenticated, | ||
| + | # | ||
| + | smtpd_relay_restrictions = | ||
| + | # Unsere eigenen Nutzer zulassen-/ | ||
| + | | ||
| + | | ||
| + | # Backupserver (MX) erlauben | ||
| + | | ||
| + | # alles andere an relaying verbieten, d.h. mit einem finalen error 550 abweisen | ||
| + | | ||
| + | </ | ||
| + | ===== Konfiguration aktivieren ===== | ||
| + | Zur Aktivierung unserer Konfiguration benutzen wir **systemctl**. | ||
| + | # systemctl restart postfix | ||
| + | |||
| + | Da keine Rückmeldung erfolgte können wir davon ausgehen, dass alle unsere Konfigurationsoptionen unseren Wünschen entsprechend gesetzt wurden. | ||
| + | |||
| + | Wir können aber auch den Status unseres Mailservers abfragen. | ||
| + | # systemctl status postfix | ||
| + | < | ||
| + | | ||
| + | | ||
| + | Process: 3222 ExecStop=/ | ||
| + | Process: 3206 ExecReload=/ | ||
| + | Process: 3236 ExecStart=/ | ||
| + | Process: 3234 ExecStartPre=/ | ||
| + | Process: 3231 ExecStartPre=/ | ||
| + | Main PID: 3309 (master) | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | |||
| + | Nov 03 22:35:17 vml000087.dmz.nausch.org systemd[1]: Starting Postfix Mail Transport Agent... | ||
| + | Nov 03 22:35:18 vml000087.dmz.nausch.org postfix/ | ||
| + | Nov 03 22:35:18 vml000087.dmz.nausch.org systemd[1]: Started Postfix Mail Transport Agent. | ||
| + | </ | ||
| + | |||
| + | ====== Links ====== | ||
| + | * **⇐ [[centos: | ||
| + | * **⇒ [[centos: | ||
| + | * **[[centos: | ||
| + | * **[[wiki: | ||
| + | * **[[http:// | ||
| + | |||
| + | |||