Spam-Schutz · 18 min read · Feb 04, 2026
Blockierung internationaler Spam-Botnetze mit einem Postfix-Plugin
Dieser Artikel enthält eine Analyse und Lösung zur Blockierung internationaler SPAM-Botnetze sowie ein Tutorial zur Installation des Anti-Spam-Plugins für die Postfix-Firewall - postfwd im Postfix MTA.
Einführung
Eine der wichtigsten und schwierigsten Aufgaben für jedes Unternehmen, das Mail-Dienste anbietet, ist es, von den Mail-Blacklists fernzubleiben.
Wenn eine Mail-Domain in einer der Mail-Domain-Blacklists erscheint, werden andere Mail-Server aufhören, ihre E-Mails zu akzeptieren und weiterzuleiten. Dies wird die Domain praktisch von der Mehrheit der Mail-Anbieter ausschließen und verhindert, dass die Kunden des Anbieters E-Mails senden können. Es gibt nur eine Sache, die ein Mail-Anbieter danach tun kann: die Blacklist-Anbieter um die Entfernung von der Liste bitten oder die IP-Adressen und Domainnamen seiner Mail-Server ändern.
In eine Mail-Blacklist zu gelangen, ist sehr einfach, wenn ein Mail-Anbieter keinen Schutz gegen Spammer hat. Es reicht ein kompromittiertes Kunden-Mail-Konto aus, von dem ein Hacker anfängt, Spam zu versenden, um in einer Blacklist zu erscheinen.
Es gibt mehrere Möglichkeiten, wie Hacker Spam von kompromittierten Mail-Konten versenden. In diesem Artikel möchte ich Ihnen zeigen, wie man internationale Botnet-Spammer vollständig mildern kann, die sich dadurch auszeichnen, dass sie sich von mehreren IP-Adressen aus in Mail-Konten einloggen, die sich in mehreren Ländern weltweit befinden.
Wie internationale Botnetze funktionieren
Hacker, die ein internationales Botnet für Spam verwenden, arbeiten sehr effizient und sind schwer zu verfolgen. Ich begann im Oktober 2016 mit der Analyse des Verhaltens eines solchen internationalen Spam-Botnets und implementierte ein Plugin für die Postfix-Firewall - postfwd, das alle Spammer aus internationalen Botnetzen intelligent sperrt.
Der erste Schritt war die Analyse des Verhaltens eines internationalen Spam-Botnets, die durch die Verfolgung eines kompromittierten Mail-Kontos durchgeführt wurde. Ich erstellte eine einfache Bash-Einzeiler, um die SASL-Login-IP-Adressen des kompromittierten Mail-Kontos aus den postfwd-Login-Mail-Logs auszuwählen.
Die Daten in der folgenden Tabelle wurden 90 Minuten nach der Kompromittierung eines Mail-Kontos erfasst und enthalten diese Attribute:
- IP-Adressen, von denen der Hacker sich in das Konto eingeloggt hat ( ip_address)
- Entsprechende Ländercodes der IP-Adressen aus der GeoIP-Datenbank ( state_code)
- Anzahl der SASL-Logins, die der Hacker von einer IP-Adresse aus durchgeführt hat ( login_count)
+-----------------+------------+-------------+
| ip_address | state_code | login_count |
+-----------------+------------+-------------+
| 41.63.176.___ | AO | 8 |
| 200.80.227.___ | AR | 41 |
| 120.146.134.___ | AU | 18 |
| 79.132.239.___ | BE | 15 |
| 184.149.27.___ | CA | 1 |
| 24.37.20.___ | CA | 13 |
| 70.28.77.___ | CA | 21 |
| 70.25.65.___ | CA | 23 |
| 72.38.177.___ | CA | 24 |
| 174.114.121.___ | CA | 27 |
| 206.248.139.___ | CA | 4 |
| 64.179.221.___ | CA | 4 |
| 184.151.178.___ | CA | 40 |
| 24.37.22.___ | CA | 51 |
| 209.250.146.___ | CA | 66 |
| 209.197.185.___ | CA | 8 |
| 47.48.223.___ | CA | 8 |
| 70.25.41.___ | CA | 81 |
| 184.71.9.___ | CA | 92 |
| 84.226.27.___ | CH | 5 |
| 59.37.9.___ | CN | 6 |
| 181.143.131.___ | CO | 24 |
| 186.64.177.___ | CR | 6 |
| 77.104.244.___ | CZ | 1 |
| 78.108.109.___ | CZ | 18 |
| 185.19.1.___ | CZ | 58 |
| 95.208.250.___ | DE | 1 |
| 79.215.89.___ | DE | 15 |
| 47.71.223.___ | DE | 23 |
| 31.18.251.___ | DE | 27 |
| 2.164.183.___ | DE | 32 |
| 79.239.97.___ | DE | 32 |
| 80.187.103.___ | DE | 54 |
| 109.84.1.___ | DE | 6 |
| 212.97.234.___ | DK | 49 |
| 190.131.134.___ | EC | 42 |
| 84.77.172.___ | ES | 1 |
| 91.117.105.___ | ES | 10 |
| 185.87.99.___ | ES | 14 |
| 95.16.51.___ | ES | 15 |
| 95.127.182.___ | ES | 16 |
| 195.77.90.___ | ES | 19 |
| 188.86.18.___ | ES | 2 |
| 212.145.210.___ | ES | 38 |
| 148.3.169.___ | ES | 39 |
| 95.16.35.___ | ES | 4 |
| 81.202.61.___ | ES | 45 |
| 88.7.246.___ | ES | 7 |
| 81.36.5.___ | ES | 8 |
| 88.14.192.___ | ES | 8 |
| 212.97.161.___ | ES | 9 |
| 193.248.156.___ | FR | 5 |
| 82.34.32.___ | GB | 1 |
| 86.180.214.___ | GB | 11 |
| 81.108.174.___ | GB | 12 |
| 86.11.209.___ | GB | 13 |
| 86.150.224.___ | GB | 15 |
| 2.102.31.___ | GB | 17 |
| 93.152.88.___ | GB | 18 |
| 86.178.68.___ | GB | 19 |
| 176.248.121.___ | GB | 2 |
| 2.97.227.___ | GB | 2 |
| 62.49.34.___ | GB | 2 |
| 79.64.78.___ | GB | 20 |
| 2.126.140.___ | GB | 22 |
| 87.114.222.___ | GB | 23 |
| 188.29.164.___ | GB | 24 |
| 82.11.14.___ | GB | 26 |
| 81.168.46.___ | GB | 29 |
| 86.136.125.___ | GB | 3 |
| 90.199.85.___ | GB | 3 |
| 86.177.93.___ | GB | 31 |
| 82.32.186.___ | GB | 4 |
| 79.68.153.___ | GB | 46 |
| 151.226.42.___ | GB | 6 |
| 2.123.234.___ | GB | 6 |
| 90.217.211.___ | GB | 6 |
| 212.159.148.___ | GB | 68 |
| 88.111.94.___ | GB | 7 |
| 77.98.186.___ | GB | 9 |
| 41.222.232.___ | GH | 4 |
| 176.63.29.___ | HU | 30 |
| 86.47.237.___ | IE | 10 |
| 37.46.22.___ | IE | 4 |
| 95.83.249.___ | IE | 4 |
| 109.79.69.___ | IE | 6 |
| 79.176.100.___ | IL | 13 |
| 122.175.34.___ | IN | 19 |
| 114.143.5.___ | IN | 26 |
| 115.112.159.___ | IN | 4 |
| 79.62.179.___ | IT | 11 |
| 79.53.217.___ | IT | 19 |
| 188.216.54.___ | IT | 2 |
| 46.44.203.___ | IT | 2 |
| 80.86.57.___ | IT | 2 |
| 5.170.192.___ | IT | 27 |
| 80.23.42.___ | IT | 3 |
| 89.249.177.___ | IT | 3 |
| 93.39.141.___ | IT | 31 |
| 80.183.6.___ | IT | 34 |
| 79.25.107.___ | IT | 35 |
| 81.208.25.___ | IT | 39 |
| 151.57.154.___ | IT | 4 |
| 79.60.239.___ | IT | 42 |
| 79.47.25.___ | IT | 5 |
| 188.216.114.___ | IT | 7 |
| 151.31.139.___ | IT | 8 |
| 46.185.139.___ | JO | 9 |
| 211.180.177.___ | KR | 22 |
| 31.214.125.___ | KW | 2 |
| 89.203.17.___ | KW | 3 |
| 94.187.138.___ | KW | 4 |
| 209.59.110.___ | LC | 18 |
| 41.137.40.___ | MA | 12 |
| 189.211.204.___ | MX | 5 |
| 89.98.64.___ | NL | 6 |
| 195.241.8.___ | NL | 9 |
| 195.1.82.___ | NO | 70 |
| 200.46.9.___ | PA | 30 |
| 111.125.66.___ | PH | 1 |
| 89.174.81.___ | PL | 7 |
| 64.89.12.___ | PR | 24 |
| 82.154.194.___ | PT | 12 |
| 188.48.145.___ | SA | 8 |
| 42.61.41.___ | SG | 25 |
| 87.197.112.___ | SK | 3 |
| 116.58.231.___ | TH | 4 |
| 195.162.90.___ | UA | 5 |
| 108.185.167.___ | US | 1 |
| 108.241.56.___ | US | 1 |
| 198.24.64.___ | US | 1 |
| 199.249.233.___ | US | 1 |
| 204.8.13.___ | US | 1 |
| 206.81.195.___ | US | 1 |
| 208.75.20.___ | US | 1 |
| 24.149.8.___ | US | 1 |
| 24.178.7.___ | US | 1 |
| 38.132.41.___ | US | 1 |
| 63.233.138.___ | US | 1 |
| 68.15.198.___ | US | 1 |
| 72.26.57.___ | US | 1 |
| 72.43.167.___ | US | 1 |
| 74.65.154.___ | US | 1 |
| 74.94.193.___ | US | 1 |
| 75.150.97.___ | US | 1 |
| 96.84.51.___ | US | 1 |
| 96.90.244.___ | US | 1 |
| 98.190.153.___ | US | 1 |
| 12.23.72.___ | US | 10 |
| 50.225.58.___ | US | 10 |
| 64.140.101.___ | US | 10 |
| 66.185.229.___ | US | 10 |
| 70.63.88.___ | US | 10 |
| 96.84.148.___ | US | 10 |
| 107.178.12.___ | US | 11 |
| 170.253.182.___ | US | 11 |
| 206.127.77.___ | US | 11 |
| 216.27.83.___ | US | 11 |
| 72.196.170.___ | US | 11 |
| 74.93.168.___ | US | 11 |
| 108.60.97.___ | US | 12 |
| 205.196.77.___ | US | 12 |
| 63.159.160.___ | US | 12 |
| 204.93.122.___ | US | 13 |
| 206.169.117.___ | US | 13 |
| 208.104.106.___ | US | 13 |
| 65.28.31.___ | US | 13 |
| 66.119.110.___ | US | 13 |
| 67.84.164.___ | US | 13 |
| 69.178.166.___ | US | 13 |
| 71.232.229.___ | US | 13 |
| 96.3.6.___ | US | 13 |
| 205.214.233.___ | US | 14 |
| 38.96.46.___ | US | 14 |
| 67.61.214.___ | US | 14 |
| 173.233.58.___ | US | 141 |
| 64.251.53.___ | US | 15 |
| 73.163.215.___ | US | 15 |
| 24.61.176.___ | US | 16 |
| 67.10.184.___ | US | 16 |
| 173.14.42.___ | US | 17 |
| 173.163.34.___ | US | 17 |
| 104.138.114.___ | US | 18 |
| 23.24.168.___ | US | 18 |
| 50.202.9.___ | US | 19 |
| 96.248.123.___ | US | 19 |
| 98.191.183.___ | US | 19 |
| 108.215.204.___ | US | 2 |
| 50.198.37.___ | US | 2 |
| 69.178.183.___ | US | 2 |
| 74.190.39.___ | US | 2 |
| 76.90.131.___ | US | 2 |
| 96.38.10.___ | US | 2 |
| 96.60.117.___ | US | 2 |
| 96.93.6.___ | US | 2 |
| 74.69.197.___ | US | 21 |
| 98.140.180.___ | US | 21 |
| 50.252.0.___ | US | 22 |
| 69.71.200.___ | US | 22 |
| 71.46.59.___ | US | 22 |
| 74.7.35.___ | US | 22 |
| 12.191.73.___ | US | 23 |
| 208.123.156.___ | US | 23 |
| 65.190.29.___ | US | 23 |
| 67.136.192.___ | US | 23 |
| 70.63.216.___ | US | 23 |
| 96.66.144.___ | US | 23 |
| 173.167.128.___ | US | 24 |
| 64.183.78.___ | US | 24 |
| 68.44.33.___ | US | 24 |
| 23.25.9.___ | US | 25 |
| 24.100.92.___ | US | 25 |
| 107.185.110.___ | US | 26 |
| 208.118.179.___ | US | 26 |
| 216.133.120.___ | US | 26 |
| 75.182.97.___ | US | 26 |
| 107.167.202.___ | US | 27 |
| 66.85.239.___ | US | 27 |
| 71.122.125.___ | US | 28 |
| 74.218.169.___ | US | 28 |
| 76.177.204.___ | US | 28 |
| 216.165.241.___ | US | 29 |
| 24.178.50.___ | US | 29 |
| 63.149.147.___ | US | 29 |
| 174.66.84.___ | US | 3 |
| 184.183.156.___ | US | 3 |
| 50.233.39.___ | US | 3 |
| 70.183.165.___ | US | 3 |
| 71.178.212.___ | US | 3 |
| 72.175.83.___ | US | 3 |
| 74.142.22.___ | US | 3 |
| 98.174.50.___ | US | 3 |
| 98.251.168.___ | US | 3 |
| 206.74.148.___ | US | 30 |
| 24.131.201.___ | US | 30 |
| 50.80.199.___ | US | 30 |
| 69.251.49.___ | US | 30 |
| 108.6.53.___ | US | 31 |
| 74.84.229.___ | US | 31 |
| 172.250.78.___ | US | 32 |
| 173.14.75.___ | US | 32 |
| 216.201.55.___ | US | 33 |
| 40.130.243.___ | US | 33 |
| 164.58.163.___ | US | 34 |
| 70.182.187.___ | US | 35 |
| 184.170.168.___ | US | 37 |
| 198.46.110.___ | US | 37 |
| 24.166.234.___ | US | 37 |
| 65.34.19.___ | US | 37 |
| 75.146.12.___ | US | 37 |
| 107.199.135.___ | US | 38 |
| 206.193.215.___ | US | 38 |
| 50.254.150.___ | US | 38 |
| 69.54.48.___ | US | 38 |
| 172.8.30.___ | US | 4 |
| 24.106.124.___ | US | 4 |
| 65.127.169.___ | US | 4 |
| 71.227.65.___ | US | 4 |
| 71.58.72.___ | US | 4 |
| 74.9.236.___ | US | 4 |
| 12.166.108.___ | US | 40 |
| 174.47.56.___ | US | 40 |
| 66.76.176.___ | US | 40 |
| 76.111.90.___ | US | 41 |
| 96.10.70.___ | US | 41 |
| 97.79.226.___ | US | 41 |
| 174.79.117.___ | US | 42 |
| 70.138.178.___ | US | 42 |
| 64.233.225.___ | US | 43 |
| 97.89.203.___ | US | 43 |
| 12.28.231.___ | US | 44 |
| 64.235.157.___ | US | 45 |
| 76.110.237.___ | US | 45 |
| 71.196.10.___ | US | 46 |
| 173.167.177.___ | US | 49 |
| 24.7.92.___ | US | 49 |
| 68.187.225.___ | US | 49 |
| 184.75.77.___ | US | 5 |
| 208.91.186.___ | US | 5 |
| 71.11.113.___ | US | 5 |
| 75.151.112.___ | US | 5 |
| 98.189.112.___ | US | 5 |
| 69.170.187.___ | US | 51 |
| 97.64.182.___ | US | 51 |
| 24.239.92.___ | US | 52 |
| 72.211.28.___ | US | 53 |
| 66.179.44.___ | US | 54 |
| 66.188.47.___ | US | 55 |
| 64.60.22.___ | US | 56 |
| 73.1.95.___ | US | 56 |
| 75.140.143.___ | US | 58 |
| 24.199.140.___ | US | 59 |
| 216.240.53.___ | US | 6 |
| 216.26.16.___ | US | 6 |
| 50.242.1.___ | US | 6 |
| 65.83.137.___ | US | 6 |
| 68.119.102.___ | US | 6 |
| 68.170.224.___ | US | 6 |
| 74.94.231.___ | US | 6 |
| 96.64.21.___ | US | 6 |
| 71.187.41.___ | US | 60 |
| 184.177.173.___ | US | 61 |
| 75.71.114.___ | US | 61 |
| 75.82.232.___ | US | 61 |
| 97.77.161.___ | US | 63 |
| 50.154.213.___ | US | 65 |
| 96.85.169.___ | US | 67 |
| 100.33.70.___ | US | 68 |
| 98.100.71.___ | US | 68 |
| 24.176.214.___ | US | 69 |
| 74.113.89.___ | US | 69 |
| 204.116.101.___ | US | 7 |
| 216.216.68.___ | US | 7 |
| 65.188.191.___ | US | 7 |
| 69.15.165.___ | US | 7 |
| 74.219.118.___ | US | 7 |
| 173.10.219.___ | US | 71 |
| 97.77.209.___ | US | 72 |
| 173.163.236.___ | US | 73 |
| 162.210.13.___ | US | 79 |
| 12.236.19.___ | US | 8 |
| 208.180.242.___ | US | 8 |
| 24.221.97.___ | US | 8 |
| 40.132.97.___ | US | 8 |
| 50.79.227.___ | US | 8 |
| 64.130.109.___ | US | 8 |
| 66.80.57.___ | US | 8 |
| 74.68.130.___ | US | 8 |
| 74.70.242.___ | US | 8 |
| 96.80.61.___ | US | 81 |
| 74.43.153.___ | US | 83 |
| 208.123.153.___ | US | 85 |
| 75.149.238.___ | US | 87 |
| 96.85.138.___ | US | 89 |
| 208.117.200.___ | US | 9 |
| 208.68.71.___ | US | 9 |
| 50.253.180.___ | US | 9 |
| 50.84.132.___ | US | 9 |
| 63.139.29.___ | US | 9 |
| 70.43.78.___ | US | 9 |
| 74.94.154.___ | US | 9 |
| 50.76.82.___ | US | 94 |
+-----------------+------------+-------------+
In der nächsten Tabelle sehen wir die Verteilung der IP-Adressen nach Ländern:
+--------+
| 214 US |
| 28 GB |
| 17 IT |
| 15 ES |
| 15 CA |
| 8 DE |
| 4 IE |
| 3 KW |
| 3 IN |
| 3 CZ |
| 2 NL |
| 1 UA |
| 1 TH |
| 1 SK |
| 1 SG |
| 1 SA |
| 1 PT |
| 1 PR |
| 1 PL |
| 1 PH |
| 1 PA |
| 1 NO |
| 1 MX |
| 1 MA |
| 1 LC |
| 1 KR |
| 1 JO |
| 1 IL |
| 1 HU |
| 1 GH |
| 1 FR |
| 1 EC |
| 1 DK |
| 1 CR |
| 1 CO |
| 1 CN |
| 1 CH |
| 1 BE |
| 1 AU |
| 1 AR |
| 1 AO |
+--------+
Basierend auf diesen Tabellen können mehrere Fakten abgeleitet werden, anhand derer wir unser Plugin entworfen haben:
- Spam wurde von einem Botnet verbreitet. Dies wird durch Logins von einer großen Anzahl von Client-IP-Adressen angezeigt.
- Spam wurde mit einer niedrigen Frequenz von Nachrichten verbreitet, um Ratenlimits zu vermeiden.
- Spam wurde von IP-Adressen aus mehreren Ländern (mehr als 30 Länder nach wenigen Minuten) verbreitet, was auf ein internationales Botnet hinweist.
Aus diesen Tabellen wurden die Statistiken der verwendeten IP-Adressen, der Anzahl der Logins und der Länder, aus denen die Benutzer eingeloggt waren, entnommen:
- Gesamtzahl der Logins 7531.
- Gesamtzahl der verwendeten IP-Adressen 342.
- Gesamtzahl der einzigartigen Länder 41.
Verteidigung gegen Botnet-Spammer
Die Lösung für dieses Spam-Verhalten bestand darin, ein Plugin für die Postfix-Firewall - postfwd zu erstellen. Postfwd ist ein Programm, das verwendet werden kann, um Benutzer durch Ratenlimits, durch die Verwendung von Mail-Blacklists und durch andere Mittel zu blockieren.
Wir haben das Plugin entworfen und implementiert, das die Anzahl der einzigartigen Länder zählt, aus denen ein Benutzer sich über die SASL-Authentifizierung in sein Konto eingeloggt hat. Dann können Sie in der Postfwd-Konfiguration Limits für die Anzahl der Länder festlegen, und nachdem das Limit überschritten wurde, erhält der Benutzer einen ausgewählten SMTP-Code-Antwort und wird daran gehindert, E-Mails zu senden.
Ich benutze dieses Plugin in einem mittelgroßen Internetanbieter-Unternehmen seit 6 Monaten, und derzeit hat das Plugin automatisch über 50 kompromittierte Benutzer ohne jegliches Eingreifen von der Administratorseite erfasst. Ein weiterer interessanter Fakt nach 6 Monaten Nutzung ist, dass nach dem Auffinden eines Spammers und dem Senden des SMTP-Codes 544 (Host nicht gefunden - nicht im DNS) an das kompromittierte Konto (direkt von postfwd gesendet) die Botnets aufgehört haben, zu versuchen, sich in die kompromittierten Konten einzuloggen. Es scheint, dass die Botnet-Spam-Anwendung intelligent ist und keine Botnet-Ressourcen verschwenden möchte. Das Senden anderer SMTP-Codes hat das Botnet nicht davon abgehalten, es weiter zu versuchen.
Das Plugin ist auf dem GitHub meines Unternehmens verfügbar - https://github.com/Vnet-as/postfwd-anti-geoip-spam-plugin
Installation
In diesem Teil werde ich Ihnen ein grundlegendes Tutorial geben, wie Sie Postfix mit Postfwd zum Laufen bringen und wie Sie das Plugin installieren und eine Postfwd-Regel hinzufügen, um es zu verwenden. Die Installation wurde auf Debian 8 Jessie getestet und durchgeführt. Anleitungen für Teile dieser Installation sind auch auf der GitHub-Projektseite verfügbar.
Zuerst installieren und konfigurieren Sie Postfix mit SASL-Authentifizierung. Es gibt viele großartige Tutorials zur Installation und Konfiguration von Postfix, daher werde ich direkt mit der Installation von Postfwd fortfahren.
Das nächste, was Sie tun müssen, nachdem Sie Postfix mit SASL-Authentifizierung installiert haben, ist die Installation von postfwd. Auf Debian-Systemen können Sie dies mit dem APT-Paketmanager tun, indem Sie den folgenden Befehl ausführen (dies wird auch automatisch einen Benutzer postfw und die Datei /etc/default/postfwd erstellen, die wir mit der richtigen Konfiguration für den Autostart aktualisieren müssen).
apt-get install postfwd- Jetzt fahren wir mit dem Herunterladen des Git-Projekts mit unserem Postfwd-Plugin fort:
apt-get install git
git clone https://github.com/Vnet-as/postfwd-anti-geoip-spam-plugin /etc/postfix/postfwd-anti-geoip-spam-plugin
chown -R postfw:postfix /etc/postfix/postfwd-anti-geoip-spam-plugin/- Wenn Sie Git nicht haben oder nicht verwenden möchten, können Sie die Roh-Plugin-Datei herunterladen:
mkdir /etc/postfix/postfwd-anti-geoip-spam-plugin
wget https://raw.githubusercontent.com/Vnet-as/postfwd-anti-geoip-spam-plugin/master/postfwd-anti-spam.plugin -O /etc/postfix/postfwd-anti-geoip-spam-plugin/postfwd-anti-spam.plugin
chown -R postfw:postfix /etc/postfix/postfwd-anti-geoip-spam-plugin/- Aktualisieren Sie dann die Postfwd-Standardkonfiguration in der /etc/default/postfwd-Datei und fügen Sie den Plugin-Parameter ‘ –plugins /etc/postfix/postfwd-anti-geoip-spam-plugin/postfwd-anti-spam.plugin’ hinzu:
sed -i 's/STARTUP=0/STARTUP=1/' /etc/default/postfwd # Auto-Startup
sed -i 's/ARGS="--summary=600 --cache=600 --cache-rdomain-only --cache-no-size"/#ARGS="--summary=600 --cache=600 --cache-rdomain-only --cache-no-size"/' /etc/default/postfwd # Alte Startparameter auskommentieren
echo 'ARGS="--summary=600 --cache=600 --cache-rdomain-only --cache-no-size --plugins /etc/postfix/postfwd-anti-geoip-spam-plugin/postfwd-anti-spam.plugin"' >> /etc/default/postfwd # Neue Startparameter hinzufügen- Jetzt erstellen Sie eine grundlegende postfwd-Konfigurationsdatei mit der Anti-Spam-Botnet-Regel:
cat <<_EOF_ >> /etc/postfix/postfwd.cf
# Anti-Spam-Botnet-Regel
# Dieses Beispiel zeigt, wie man die E-Mail-Adresse, die durch sasl_username definiert ist, auf maximal 5 verschiedene Länder beschränken kann, andernfalls werden sie daran gehindert, Nachrichten zu senden.
id=COUNTRY_LOGIN_COUNT ; \
sasl_username=~^(.+)$ ; \
incr_client_country_login_count != 0 ; \
action=dunno
id=BAN_BOTNET ; \
sasl_username=~^(.+)$ ; \
client_uniq_country_login_count > 5 ; \
action=rate(sasl_username/1/3600/554 Ihr Mail-Konto wurde kompromittiert. Bitte ändern Sie Ihr Passwort sofort nach dem nächsten Login.)
_EOF_- Aktualisieren Sie die Postfix-Konfigurationsdatei /etc/postfix/main.cf, um den Richtliniendienst am Standard-Postfwd-Port 10040 (oder einem anderen Port gemäß der Konfiguration in /etc/default/postfwd) zu verwenden. Ihre Konfiguration sollte die folgende Option in der smtpd_recipient_restrictions-Zeile haben. Beachten Sie, dass die folgende Einschränkung ohne andere Einschränkungen wie eine der reject_unknown_recipient_domain oder reject_unauth_destination nicht funktioniert.
echo 'smtpd_recipient_restrictions = check_policy_service inet:127.0.0.1:12525' >> /etc/postfix/main.cf- Installieren Sie die Abhängigkeiten des Plugins:
apt-get install -y libgeo-ip-perl libtime-piece-perl libdbd-mysql-perl libdbd-pg-perlInstallieren Sie eine MySQL- oder PostgreSQL-Datenbank und konfigurieren Sie einen Benutzer, der im Plugin verwendet wird.
Aktualisieren Sie den Datenbankverbindungsteil im Plugin, um auf Ihre Datenbank-Backend-Konfiguration zu verweisen. Dieses Beispiel zeigt die MySQL-Konfiguration für einen Benutzer testuser und die Datenbank test.
# my $driver = "Pg";
my $driver = "mysql";
my $database = "test";
my $host = "127.0.0.1";
my $port = "3306";
# my $port = "5432";
my $dsn = "DBI:$driver:database=$database;host=$host;port=$port";
my $userid = "testuser";
my $password = "password";- Jetzt starten Sie den postfix und postfwd-Dienst neu.
service postfix restart && service postfwd restartErhalte neue Beiträge in deinem Posteingang.
Kein Spam. Jederzeit abmelden.