Benutzer-Werkzeuge

Webseiten-Werkzeuge


tachtler:postfix_centos_7_-_postscreen_einsetzen

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
tachtler:postfix_centos_7_-_postscreen_einsetzen [2015/09/25 19:04] – [Tests] klaustachtler:postfix_centos_7_-_postscreen_einsetzen [2018/08/25 07:30] (aktuell) – [postscreen_dnsbl_sites] klaus
Zeile 3: Zeile 3:
 [[http://www.postfix.org/|{{:tachtler:index:postfix-48x48.png }}]] [[http://www.postfix.org/|Postfix]] ist Wietse Venema's Mail-Server, welcher bei "IBM research" als Alternative zum ehemals weit verbreiteten Programm [[http://www.sendmail.org|Sendmail]] entwickelt wurde. [[http://www.postfix.org/|Postfix]] erhebt den Anspruch ein schneller, einfach zu administrierender und sicherer Mail-Server zu sein. [[http://www.postfix.org/|{{:tachtler:index:postfix-48x48.png }}]] [[http://www.postfix.org/|Postfix]] ist Wietse Venema's Mail-Server, welcher bei "IBM research" als Alternative zum ehemals weit verbreiteten Programm [[http://www.sendmail.org|Sendmail]] entwickelt wurde. [[http://www.postfix.org/|Postfix]] erhebt den Anspruch ein schneller, einfach zu administrierender und sicherer Mail-Server zu sein.
  
-Der [[http://www.postfix.org/|Postfix]] ''postscreen''-Daemon bietet zusätzlichen Schutz vor Mail-Server Überlastung. Ein [http://www.postfix.org/|Postfix]] ''postscreen''-Prozess kann mehrere eingehende SMTP-Verbindungen gleichzeitig verwalten, und entscheidet, welche Clients eine Verbindung zum [[http://www.postfix.org/|Postfix]] SMTP-Server-Prozess letztendlich aufbauen dürfen. Dadurch ist es Möglich, dass weitere SMTP-Server-Prozesse nicht 1:1 unnötig durch unerwünschten e-Mail-Verkehr gebunden werden und so weiterhin ausreichend [[http://www.postfix.org/|Postfix]] SMTP-Server-Prozess für die einlieferung erwünschter e-Mail zur Verfügung stehen, so dass eine Verzögerung des Beginns einer Serverüberlastung möglicherweise verhindert werden kann.+Der [[http://www.postfix.org/|Postfix]] ''postscreen''-Daemon bietet zusätzlichen Schutz vor Mail-Server Überlastung. Ein [[http://www.postfix.org/|Postfix]] ''postscreen''-Prozess kann mehrere eingehende SMTP-Verbindungen gleichzeitig verwalten, und entscheidet, welche Clients eine Verbindung zum [[http://www.postfix.org/|Postfix]] SMTP-Server-Prozess letztendlich aufbauen dürfen. Dadurch ist es Möglich, dass weitere SMTP-Server-Prozesse nicht 1:1 unnötig durch unerwünschten e-Mail-Verkehr gebunden werden und so weiterhin ausreichend [[http://www.postfix.org/|Postfix]] SMTP-Server-Prozess für die einlieferung erwünschter e-Mail zur Verfügung stehen, so dass eine Verzögerung des Beginns einer Serverüberlastung möglicherweise verhindert werden kann.
  
 Der [[http://www.postfix.org/|Postfix]] ''postscreen''-Daemon sollten __nicht__ auf Ports betrieben werden, auf denen e-Mails von Endbenutzer-Clients (MUAs) empfangen werden, wie dies z.B mit [[tachtler:postfix_centos_7#port_submission|Postfix CentOS 7 - Port submission]] (Port: 587) der Fall wäre.  Wenn Endbenutzer-Clients (MUAs) e-Mails über z.B. [[tachtler:postfix_centos_7#port_submission|Postfix CentOS 7 - Port submission]] (Port: 587) einliefern, wird eine **Client-Authentifizierung** erforderlich, welche der [[http://www.postfix.org/|Postfix]] ''postscreen''-Daemon **__nicht__ durchführen kann**. Der [[http://www.postfix.org/|Postfix]] ''postscreen''-Daemon sollten __nicht__ auf Ports betrieben werden, auf denen e-Mails von Endbenutzer-Clients (MUAs) empfangen werden, wie dies z.B mit [[tachtler:postfix_centos_7#port_submission|Postfix CentOS 7 - Port submission]] (Port: 587) der Fall wäre.  Wenn Endbenutzer-Clients (MUAs) e-Mails über z.B. [[tachtler:postfix_centos_7#port_submission|Postfix CentOS 7 - Port submission]] (Port: 587) einliefern, wird eine **Client-Authentifizierung** erforderlich, welche der [[http://www.postfix.org/|Postfix]] ''postscreen''-Daemon **__nicht__ durchführen kann**.
Zeile 37: Zeile 37:
 Password: Password:
 </code> </code>
 +
 +===== Konfiguration =====
 +
 +==== postscreen_reject_footer ====
 +
 +^ Information    ^ Beschreibung                                              ^
 +| Dokumentation  | [[http://www.postfix.org/postconf.5.html#postscreen_reject_footer]] |
 +| Defaultwert    | <code>postscreen_reject_footer = $smtpd_reject_footer</code> |
 +| **Neuer Wert** | <code>postscreen_reject_footer = \c. (postscreen) For assistance, contact YOUR postmaster or 
 +administrator. He can achieve OUR postmaster via email: <postmaster@tachtler.net>. In any 
 +case, please provide the following information in your problem report: This error message, 
 +time ($localtime), client ($client_address), port ($client_port) and server ($server_name).</code> |
 +| Beschreibung   | Optionale zusätzliche Angaben, die an jede [[http://www.postfix.org|Postfix]] ''postscreen'' Daemon **4xx** oder **5xx-Antwort** angehängt werden. \\ \\ :!: **HINWEIS** - Der obige Text dient dazu, in der [[http://www.postfix.org|Postfix]] LOG-Datei, leichter Datensätze für eine fehlgeschlagene SMTP-Sitzung zu finden. Der Text selbst ist **__nicht__ in der __eigenen__ LOG-Datei** des [[http://www.postfix.org|Postfix]] SMTP-Server protokolliert. |
 +
 +Nachfolgende Tabelle zeigt optionale Variablen, welche in den Text mit eingebaut werden können:
 +
 +^ Variable           ^ Beschreibung ^
 +| ''client_address'' | Die Client-IP-Adresse, die in der LOG-Datei protokolliert wird. |
 +| ''client_port''    | Der Client-TCP-Port, der in der LOG-Datei protokolliert wird. |
 +| ''localtime''      | Die **lokale** Server Zeit (Mmm dd hh:mm:ss), die in der LOG-Datei protokolliert wird. |
 +| ''server_name''    | Der Hostname (aus ''myhostname'') des Servers. |
  
 ===== Schnelltests: /etc/postfix/main.cf ===== ===== Schnelltests: /etc/postfix/main.cf =====
Zeile 122: Zeile 143:
 </code> </code>
  
-Hier kommt es auf das **Minuszeichen/Trennstrich** zwischen SMTP-Code und Hostnamen an:+Hier kommt es auf das **Minuszeichen/Trennstrich __zwischen__ SMTP-Code und Hostnamen** an:
 <code> <code>
 220-mx1.tachtler.net... 220-mx1.tachtler.net...
Zeile 159: Zeile 180:
 | Dokumentation  | [[http://www.postfix.org/postconf.5.html#postscreen_dnsbl_sites]] | | Dokumentation  | [[http://www.postfix.org/postconf.5.html#postscreen_dnsbl_sites]] |
 | Defaultwert    | <code>postscreen_dnsbl_sites = </code> | | Defaultwert    | <code>postscreen_dnsbl_sites = </code> |
-| **Neuer Wert** | <code bash>postscreen_dnsbl_sites = zen.spamhaus.org*2,+| **Neuer Wert** | <code bash>postscreen_dnsbl_sites =          
 +        zen.spamhaus.org*2
 +        bl.mailspike.net*1,
         bl.spamcop.net*1,         bl.spamcop.net*1,
-        b.barracudacentral.org*1</code> |+        swl.spamhaus.org*-2, 
 +        b.barracudacentral.org*1 
 +</code> |
 | Beschreibung   | Der Parameter gibt eine Liste von DNS-Blocklist-Server mit optionaler Filter und Gewichtsfaktoren (positive Gewichte für Blacklisting, negativ für Whitelisting) an. Diese Server werden parallel mit der umgekehrten Client IP-Adresse abgefragt. | | Beschreibung   | Der Parameter gibt eine Liste von DNS-Blocklist-Server mit optionaler Filter und Gewichtsfaktoren (positive Gewichte für Blacklisting, negativ für Whitelisting) an. Diese Server werden parallel mit der umgekehrten Client IP-Adresse abgefragt. |
 | interner Link  | [[tachtler:postfix_centos_7_-_postscreen_einsetzen#postscreen_dnsbl_action|Postfix CentOS 7 - Postscreen einsetzen - Tests "vor" SMTP-Server: 220 - /etc/postfix/main.cf - postscreen_dnsbl_action]] \\ [[tachtler:postfix_centos_7_-_postscreen_einsetzen#postscreen_dnsbl_threshold|Postfix CentOS 7 - Postscreen einsetzen - Tests "vor" SMTP-Server: 220 - /etc/postfix/main.cf - postscreen_dnsbl_threshold]] \\ [[tachtler:postfix_centos_7_-_postscreen_einsetzen#postscreen_dnsbl_whitelist_threshold|Postfix CentOS 7 - Postscreen einsetzen - Tests "vor" SMTP-Server: 220 - /etc/postfix/main.cf - postscreen_dnsbl_whitelist_threshold]] | | interner Link  | [[tachtler:postfix_centos_7_-_postscreen_einsetzen#postscreen_dnsbl_action|Postfix CentOS 7 - Postscreen einsetzen - Tests "vor" SMTP-Server: 220 - /etc/postfix/main.cf - postscreen_dnsbl_action]] \\ [[tachtler:postfix_centos_7_-_postscreen_einsetzen#postscreen_dnsbl_threshold|Postfix CentOS 7 - Postscreen einsetzen - Tests "vor" SMTP-Server: 220 - /etc/postfix/main.cf - postscreen_dnsbl_threshold]] \\ [[tachtler:postfix_centos_7_-_postscreen_einsetzen#postscreen_dnsbl_whitelist_threshold|Postfix CentOS 7 - Postscreen einsetzen - Tests "vor" SMTP-Server: 220 - /etc/postfix/main.cf - postscreen_dnsbl_whitelist_threshold]] |
 +
 +:!: **HINWEIS** - Die Nutzung der **DNSBL** - ''b.barracudacentral.org'' - **erfordert eine Anmeldung** unter nachfolgendem externen Link:
 +  * [[http://barracudacentral.org/account/register|BarracudaCentral.org - Account - Register]]
  
 ==== postscreen_dnsbl_threshold ==== ==== postscreen_dnsbl_threshold ====
Zeile 342: Zeile 370:
 angelegt und aufgebaut wird! angelegt und aufgebaut wird!
  
-===== Tests =====+===== Erster Test =====
  
 Nachfolgende Log-Einträge sollten nun bei der **ersten** Einlieferung einer e-Mail in etwa erscheinen: Nachfolgende Log-Einträge sollten nun bei der **ersten** Einlieferung einer e-Mail in etwa erscheinen:
Zeile 348: Zeile 376:
 Sep 25 18:39:47 server60 postfix/postscreen[6218]: CONNECT from [217.91.103.190]:48590 to [192.168.1.60]:25 Sep 25 18:39:47 server60 postfix/postscreen[6218]: CONNECT from [217.91.103.190]:48590 to [192.168.1.60]:25
 Sep 25 18:39:53 server60 postfix/tlsproxy[6222]: CONNECT from [217.91.103.190]:48590 Sep 25 18:39:53 server60 postfix/tlsproxy[6222]: CONNECT from [217.91.103.190]:48590
-Sep 25 18:39:54 server60 postfix/tlsproxy[6222]: Anonymous TLS connection established from [217.91.103.190]:48590: TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)+Sep 25 18:39:54 server60 postfix/tlsproxy[6222]: Anonymous TLS connection established from 
 +[217.91.103.190]:48590: TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)
 Sep 25 18:39:55 server60 postfix/postscreen[6218]: NOQUEUE: reject: RCPT from [217.91.103.190]:48590: 450 Sep 25 18:39:55 server60 postfix/postscreen[6218]: NOQUEUE: reject: RCPT from [217.91.103.190]:48590: 450
 4.3.2 Service currently unavailable; from=<michael@nausch.orge>, to=<klaus@tachtler.net>, proto=ESMTP, 4.3.2 Service currently unavailable; from=<michael@nausch.orge>, to=<klaus@tachtler.net>, proto=ESMTP,
Zeile 371: Zeile 400:
 </code> </code>
  
-**__Nachfolgende folgen die Erläuterungen zu den Log-Einträgen__**:+**__Nachfolgend die Erläuterungen zu den Log-Einträgen__**:
  
-  * <code>01: Sep 25 18:39:47 server60 postfix/postscreen[6218]: CONNECT from [217.91.103.190]:48590 to [192.168.1.60]:25 +  * <code>Sep 25 18:39:47 server60 postfix/postscreen[6218]: CONNECT from [217.91.103.190]:48590 to 
-02: Sep 25 18:39:53 server60 postfix/tlsproxy[6222]: CONNECT from [217.91.103.190]:48590 +[192.168.1.60]:25</code>
-03: Sep 25 18:39:54 server60 postfix/tlsproxy[6222]: Anonymous TLS connection established from [217.91.103.190]:48590: TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits) +
-04: Sep 25 18:39:55 server60 postfix/postscreen[6218]: NOQUEUE: reject: RCPT from [217.91.103.190]:48590: 450 4.3.2 Service currently unavailable; from=<michael@nausch.orge>, to=<klaus@tachtler.net>, proto=ESMTP, helo=<mx01.nausch.org> +
-05: Sep 25 18:39:55 server60 postfix/postscreen[6218]: PASS NEW [217.91.103.190]:48590 +
-06: Sep 25 18:39:55 server60 postfix/postscreen[6218]: DISCONNECT [217.91.103.190]:48590 +
-07: Sep 25 18:39:55 server60 postfix/tlsproxy[6222]: DISCONNECT [217.91.103.190]:48590 +
-</code>+
  
-Zeile 01: Es wird eine Verbindung auf Port 25 von ''mx01.nausch.org'' aufgebaut. \\ +Es wurde eine Verbindung auf Port 25 von ''mx01.nausch.org'' aufgebaut. 
-Zeile 02: Die Verbindung wird via STARTTLS fortgesetzt. \\ + 
-Zeile 03: Die Verbindung wird akzeptiert und der TLS-Handshake war erfolgreich. \\ +  * <code>Sep 25 18:39:53 server60 postfix/tlsproxy[6222]: CONNECT from [217.91.103.190]:48590</code> 
-**Zeile 04:** Die Verbindung wird abgelehnt, da hier die Prüfungen durchgeführt wurden, welche einen neuen Verbindungsaufbau erfordern! \\ + 
-**Zeile 05:** Der [[http://www.postfix.org/|Postfix]] ''postscreen''-Daemon merkt sich in der Datei ''/var/lib/postfix/postscreen_cache'' den Verbindungsversuch. \\ +Die Verbindung wurde via STARTTLS fortgesetzt. 
-Zeile 06: Die Verbindung wird abgebaut. \\ + 
-Zeile 07die TLS-Verbindung wird ebenfalls abgebaut. \\+  * <code>Sep 25 18:39:54 server60 postfix/tlsproxy[6222]: Anonymous TLS connection established from 
 +[217.91.103.190]:48590: TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)</code> 
 + 
 +Die Verbindung wurde akzeptiert und der TLS-Handshake war erfolgreich. 
 + 
 +  <code>Sep 25 18:39:55 server60 postfix/postscreen[6218]: NOQUEUE: reject: RCPT from [217.91.103.190]:48590: 
 +450 4.3.2 Service currently unavailable; from=<michael@nausch.orge>, to=<klaus@tachtler.net>, proto=ESMTP, 
 +helo=<mx01.nausch.org></code> 
 + 
 +**Die Verbindung wurde abgelehnt, da hier die Prüfungen durchgeführt wurden, welche einen neuen Verbindungsaufbau erfordern!** 
 + 
 +  * <code>Sep 25 18:39:55 server60 postfix/postscreen[6218]: PASS NEW [217.91.103.190]:48590</code> 
 + 
 +**Der [[http://www.postfix.org/|Postfix]] ''postscreen''-Daemon merkte sich in der Datei ''/var/lib/postfix/postscreen_cache'' den Verbindungsversuch.** 
 + 
 +  * <code>Sep 25 18:39:55 server60 postfix/postscreen[6218]: DISCONNECT [217.91.103.190]:48590</code> 
 + 
 +Die Verbindung wurde abgebaut. 
 + 
 +  * <code>Sep 25 18:39:55 server60 postfix/tlsproxy[6222]: DISCONNECT [217.91.103.190]:48590</code> 
 + 
 +Die TLS-Verbindung wurde ebenfalls abgebaut.
  
   * <code>Sep 25 18:40:36 server60 postfix/smtpd[6224]: connect from mx01.nausch.org[217.91.103.190]   * <code>Sep 25 18:40:36 server60 postfix/smtpd[6224]: connect from mx01.nausch.org[217.91.103.190]
Zeile 405: Zeile 449:
 Aufgrund dessen, dass sich der [[http://www.postfix.org/|Postfix]] ''postscreen''-Daemon den vorherigen Verbindungsversuch in der Datei ''/var/lib/postfix/postscreen_cache'' gemekt hat, diesen also **temporär** ge**whitelistet** hat, kann nun die Einlieferung (wie es auch ohne den [[http://www.postfix.org/|Postfix]] ''postscreen''-Daemon wäre) durchgeführt werden. Aufgrund dessen, dass sich der [[http://www.postfix.org/|Postfix]] ''postscreen''-Daemon den vorherigen Verbindungsversuch in der Datei ''/var/lib/postfix/postscreen_cache'' gemekt hat, diesen also **temporär** ge**whitelistet** hat, kann nun die Einlieferung (wie es auch ohne den [[http://www.postfix.org/|Postfix]] ''postscreen''-Daemon wäre) durchgeführt werden.
  
 +Mit nachfolgendem Befehl kann der Inhalt der Datei, 
 +  * ''/var/lib/postfix/postscreen_cache''
 +in dem sich der [[http://www.postfix.org/|Postfix]] ''postscreen''-Daemon alle Verbindungsversuche merkt, aufgelistet werden:
 +<code>
 +# postmap -s btree:/var/lib/postfix/postscreen_cache
 +217.91.103.190 1443285593;1443202793;1445791195;1445791195;1445791195
 +_LAST_CACHE_CLEANUP_COMPLETED_ 1443190262
 +</code>
 +
 +Einträge können mit nachfolgendem Befehl gelöscht werden:
 +<code>
 +# postmap -d 217.91.103.190 btree:/var/lib/postfix/postscreen_cache
 +</code>
  
  
tachtler/postfix_centos_7_-_postscreen_einsetzen.1443200697.txt.gz · Zuletzt geändert: 2015/09/25 19:04 von klaus