IP Adresse beim initialen Kontakt blocken

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

IP Adresse beim initialen Kontakt blocken

Frank Kirschner
Hallo zusammen,

Ich haben mir eine eigene DNS RBL aufgebaut, welche ich derzeit unter

smtpd_recipient_restrictions = .... reject_rbl_client rbl.intern, ...

nutze. Nun möchte ich die RBL aber schon beim initialen Kontakt, egal ob
über SMTP oder Submission abweisen.
Wäre da die Einbindung in smtpd_helo_restrictions der richtige Ort? Also:

smtpd_helo_restrictions = reject_rbl_client rbl.intern

Viele Grüße,
Frank


Reply | Threaded
Open this post in threaded view
|

AW: IP Adresse beim initialen Kontakt blocken

Uwe Drießen
Im Auftrag von Frank Kirschner

> Betreff: IP Adresse beim initialen Kontakt blocken
>
> Hallo zusammen,
>
> Ich haben mir eine eigene DNS RBL aufgebaut, welche ich derzeit unter
>
> smtpd_recipient_restrictions = .... reject_rbl_client rbl.intern, ...
>
> nutze. Nun möchte ich die RBL aber schon beim initialen Kontakt, egal ob
> über SMTP oder Submission abweisen.
> Wäre da die Einbindung in smtpd_helo_restrictions der richtige Ort? Also:
>
> smtpd_helo_restrictions = reject_rbl_client rbl.intern
>
> Viele Grüße,
> Frank

Öhm ja und warum willst du die IP bis Postfix lassen ?
Hat Postfix Langeweile ? :-)
 
Iptables (bzw. den neueren Ersatz) , IPset  

Ist eine Zeile und tausende Adressen, IP-Netze .....


Mit freundlichen Grüßen

Uwe Drießen
--
Software & Computer

Netzwerke, Server.
Wir vernetzen Sie und Ihre Rechner !

Uwe Drießen
Lembergstraße 33
67824 Feilbingert

Tel.: 06708660045

"wenn Digitalisierung den Aufwand im Vergleich zur Analogen Arbeitsweise dermaßen erhöht, das wir nur noch am PC sitzen müssten,
 dann wird es Zeit sich zu überlegen zur Analogen Arbeitsweise zurückzukehren"
"Programmierer müssen lernen wie Menschen denken. "



Reply | Threaded
Open this post in threaded view
|

Re: IP Adresse beim initialen Kontakt blocken

Gunther Nitzsche
In reply to this post by Frank Kirschner
Hi,

Dafür wäre imho postscreen der richtige Ansatz. Der blockt schon vor
Aufbau der postfix-Verbindung.

Ansonsten würde ich das in
smtpd_client_restrictions setzen.

Gruß
Gunther

Am 30.10.2020 um 11:02 schrieb Frank Kirschner:

> Hallo zusammen,
>
> Ich haben mir eine eigene DNS RBL aufgebaut, welche ich derzeit unter
>
> smtpd_recipient_restrictions = .... reject_rbl_client rbl.intern, ...
>
> nutze. Nun möchte ich die RBL aber schon beim initialen Kontakt, egal ob
> über SMTP oder Submission abweisen.
> Wäre da die Einbindung in smtpd_helo_restrictions der richtige Ort? Also:
>
> smtpd_helo_restrictions = reject_rbl_client rbl.intern
>
> Viele Grüße,
> Frank
>
>

--
NetCologne Systemadministration

NetCologne Gesellschaft für Telekommunikation mbH
Am Coloneum 9 ; 50829 Köln
Geschäftsführer:
 Timo von Lepel
Vorsitzender des Aufsichtsrats:
 Dr. Andreas Cerbe
HRB 25580, AG Köln
Reply | Threaded
Open this post in threaded view
|

Re: IP Adresse beim initialen Kontakt blocken

Frank Kirschner
In reply to this post by Frank Kirschner
> Am 30.10.2020 um 12:45 schrieb [hidden email]:
>
>> Moin,
>>
>> wie ermittelst Du denn diese Adressen?
>>
> Hallo Sebastian,
>
> wir haben hier mehrere öffentliche Dienst. (www, smtp, imap ..)
> Dort werden die Logfiles mit fail2ban analysiert, das Ergebnis melden
> wir u.a. an abuseipdb
> und loggen das in eine interne Datenbank. Ein eigenes Programm sammelt
> zyklisch Informationen
> zu den IP Adressen: daraus werden Vektoren erstellt:
> - welche IP wie oft welchen Dienst nicht konform nutzt
> - auf wem die IP registriert ist z.B. Shodan.io
> - in wie weit zusammenhängende Subnetze aus den einzelnen IP's
> generiert werden
> - gibt es zu verschiedenen IP identische Anfragen, z.B. fragt eine IP
> einen SMTP Server nach "GET HTTP1.0" was ja sinnfrei ist
> Parallel dazu werden aus öffentlich verfügbaren Datenbanken z.B.
> abuseipdb Informationen abgefragt; aus dem allen errechnet
> sich ein Risiko Scoring. Dies wird immer zur IP gespeichert und die
> zeitliche Entwicklung des Scorings protokolliert.
>
> Aktuell werden IP's ab einem bestimmten Level in die jeweilige
> Firewall der Server hinterlegt, was asynchron erfolgt.
> Hier habe ich rbldnsd aufgesetzt, welches aktuell Postfix dann die
> Info liefert und einen entsprechenden Link in die abgelehnte Email
> einbaut, wo man um Reputation bitten kann.
>
> Zukünftig soll erst einmal eine Info erfolgen, ab einem bestimmten
> Level (DDOS) dann ein Firewall block.
>
> lg Frank
>

Reply | Threaded
Open this post in threaded view
|

Re: IP Adresse beim initialen Kontakt blocken

Patrick Ben Koetter-2
In reply to this post by Frank Kirschner
Frank,

* Frank Kirschner <[hidden email]>:
> Hallo zusammen,
>
> Ich haben mir eine eigene DNS RBL aufgebaut, welche ich derzeit unter
>
> smtpd_recipient_restrictions = .... reject_rbl_client rbl.intern, ...
>
> nutze. Nun möchte ich die RBL aber schon beim initialen Kontakt, egal ob
> über SMTP oder Submission abweisen.
> Wäre da die Einbindung in smtpd_helo_restrictions der richtige Ort? Also:

noch früher kommen in der Session die smtpd_client_restrictions zum Zuge,
aber, die Frage ist IMO welche Ziele Du mit der RBL verfolgen möchtest.

Wenn Du einfach blocken willst, dann nutze die IPs in einer Firewall-Regel,
denn dann dringen sie nicht bis zur Applikation durch.

Wenn Du sie in der Applikation blocken willst, dann bietet die Gruppe der
Connection Filter mit den postscreen-Mechanismen den frühesten Zeitpunkt.

Dann kommen die Session-Filter und Du kannst mit smtpd_client_restrictions am
ehesten blocken. Innerhalb der Gruppe kommen dann die weiteren
smtpd_$PHASE_restrictions, wobei $PHASE je einem weiteren Schritte in der
SMTP-Kommunikation zwischen Client und Server entspricht.

Dann sind MILTER-Programme dran von denen Du die Liste ggf. in rspamd oder
amavis einbinden könntest und zuletzt die Content Filter Gruppe.

Es hängt von Deinen Zielen ab. Je früher Du blockst, desto weniger Last für
den Server und Service. Je später, desto mehr zusätzliches Wissen können
Server und Services sammeln und so möglicherweise eine bessere Entscheidung
treffen.

Grüße

p@rick

--
[*] sys4 AG

https://sys4.de, +49 (89) 30 90 46 64
Schleißheimer Straße 26/MG,80333 München

Sitz der Gesellschaft: München, Amtsgericht München: HRB 199263
Vorstand: Patrick Ben Koetter, Marc Schiffbauer, Wolfgang Stief
Aufsichtsratsvorsitzender: Florian Kirstein

Reply | Threaded
Open this post in threaded view
|

Re: [ext] Re: IP Adresse beim initialen Kontakt blocken

Ralf Hildebrandt
* Patrick Ben Koetter <[hidden email]>:
> Dann kommen die Session-Filter und Du kannst mit smtpd_client_restrictions am
> ehesten blocken. Innerhalb der Gruppe kommen dann die weiteren
> smtpd_$PHASE_restrictions, wobei $PHASE je einem weiteren Schritte in der
> SMTP-Kommunikation zwischen Client und Server entspricht.

Aber Vorsicht: Wegen

smtpd_delay_reject = yes (default)

werden alle Rejects in der RCPT TO: Phase gemacht.

> Es hängt von Deinen Zielen ab. Je früher Du blockst, desto weniger Last für
> den Server und Service. Je später, desto mehr zusätzliches Wissen können
> Server und Services sammeln und so möglicherweise eine bessere Entscheidung
> treffen.

Stimmt. Die Option "smtpd_delay_reject" ist damals entstanden, weil
bei uns ein irrer Server kein frühes "nein" als Antwort akzeptieren
wollte...

--
Ralf Hildebrandt
  Geschäftsbereich IT | Abteilung Netzwerk
  Charité - Universitätsmedizin Berlin
  Campus Benjamin Franklin
  Hindenburgdamm 30 | D-12203 Berlin
  Tel. +49 30 450 570 155 | Fax: +49 30 450 570 962
  [hidden email] | https://www.charite.de
           
Reply | Threaded
Open this post in threaded view
|

Re: IP Adresse beim initialen Kontakt blocken

André Peters
In reply to this post by Patrick Ben Koetter-2
Gibt wohl auch einen Trigger für den Milter pre-DATA. Daran arbeitet Vsevolod von Rspamd mal mehr mal weniger. So könnte man Postscreen vielleicht komplett in Zukunft ablösen. Wobei Postscreen vermutlich NOCH eher auslöst.

> Am 02.11.2020 um 13:46 schrieb Patrick Ben Koetter <[hidden email]>:
>
> Frank,
>
> * Frank Kirschner <[hidden email]>:
>> Hallo zusammen,
>>
>> Ich haben mir eine eigene DNS RBL aufgebaut, welche ich derzeit unter
>>
>> smtpd_recipient_restrictions = .... reject_rbl_client rbl.intern, ...
>>
>> nutze. Nun möchte ich die RBL aber schon beim initialen Kontakt, egal ob
>> über SMTP oder Submission abweisen.
>> Wäre da die Einbindung in smtpd_helo_restrictions der richtige Ort? Also:
>
> noch früher kommen in der Session die smtpd_client_restrictions zum Zuge,
> aber, die Frage ist IMO welche Ziele Du mit der RBL verfolgen möchtest.
>
> Wenn Du einfach blocken willst, dann nutze die IPs in einer Firewall-Regel,
> denn dann dringen sie nicht bis zur Applikation durch.
>
> Wenn Du sie in der Applikation blocken willst, dann bietet die Gruppe der
> Connection Filter mit den postscreen-Mechanismen den frühesten Zeitpunkt.
>
> Dann kommen die Session-Filter und Du kannst mit smtpd_client_restrictions am
> ehesten blocken. Innerhalb der Gruppe kommen dann die weiteren
> smtpd_$PHASE_restrictions, wobei $PHASE je einem weiteren Schritte in der
> SMTP-Kommunikation zwischen Client und Server entspricht.
>
> Dann sind MILTER-Programme dran von denen Du die Liste ggf. in rspamd oder
> amavis einbinden könntest und zuletzt die Content Filter Gruppe.
>
> Es hängt von Deinen Zielen ab. Je früher Du blockst, desto weniger Last für
> den Server und Service. Je später, desto mehr zusätzliches Wissen können
> Server und Services sammeln und so möglicherweise eine bessere Entscheidung
> treffen.
>
> Grüße
>
> p@rick
>
> --
> [*] sys4 AG
>
> https://sys4.de, +49 (89) 30 90 46 64
> Schleißheimer Straße 26/MG,80333 München
>
> Sitz der Gesellschaft: München, Amtsgericht München: HRB 199263
> Vorstand: Patrick Ben Koetter, Marc Schiffbauer, Wolfgang Stief
> Aufsichtsratsvorsitzender: Florian Kirstein
>
Reply | Threaded
Open this post in threaded view
|

Re: [ext] Re: IP Adresse beim initialen Kontakt blocken

Frank Kirschner
In reply to this post by Ralf Hildebrandt

Am 02.11.2020 um 14:00 schrieb Ralf Hildebrandt:

* Patrick Ben Koetter [hidden email]:
Dann kommen die Session-Filter und Du kannst mit smtpd_client_restrictions am
ehesten blocken. Innerhalb der Gruppe kommen dann die weiteren
smtpd_$PHASE_restrictions, wobei $PHASE je einem weiteren Schritte in der
SMTP-Kommunikation zwischen Client und Server entspricht.
Aber Vorsicht: Wegen 

smtpd_delay_reject = yes (default) 

werden alle Rejects in der RCPT TO: Phase gemacht.

Es hängt von Deinen Zielen ab. Je früher Du blockst, desto weniger Last für
den Server und Service. Je später, desto mehr zusätzliches Wissen können
Server und Services sammeln und so möglicherweise eine bessere Entscheidung
treffen.
Stimmt. Die Option "smtpd_delay_reject" ist damals entstanden, weil
bei uns ein irrer Server kein frühes "nein" als Antwort akzeptieren
wollte...

Vielen Dank für die Hinweise und lehrreiche Diskussion an Euch.
Wie gesagt, aktuell blocke ich per iptables . Über meine eigene DNS RBL kann ich in der gebouncten Email
einen Hinweis mitgeben, falls es sich um ein falsch positiv handelt (ist bis jetzt seit einem Jahr noch nicht vorgekommen)
Das würde ich gern nutzen wollen.

In den iptables würde ich dann ein limit mit angeben (

connlimit --connlimit-above 10

), ab wann auf IP Ebene geblockt wird (für irre Server ;-))

Auf Grund von Ralf's Hinweis ( smtpd_delay_reject = yes (default) ) und der Annahme, dass es sich nicht um mehr als 10

Verbindungen von der gleichen IP handelt, könnte ich die Prüfung wohl auch in den smtpd_recipient_restrictions belassen?

Viele Grüße,
Frank