qmail begrenzt die Anzahl der pro Benutzer oder Domäne pro Stunde gesendeten E-Mails

qmail begrenzt die Anzahl der pro Benutzer oder Domäne pro Stunde gesendeten E-Mails

Ich hoste einen Mailserver für mehrere verschiedene Domänen. Vor kurzem wurde das Passwort eines der Benutzer erraten/gehackt und das Konto wurde verwendet, um mehrere hunderttausend Nachrichten zu versenden, bevor ich es bemerkte und es schließen konnte, woraufhin der gesamte Server auf die schwarze Liste gesetzt wurde.

Ich möchte in Qmail eine Begrenzung für die Rate ausgehender E-Mails pro Benutzer/Domäne/Zeit festlegen, konnte dafür bisher jedoch keine integrierte Funktion finden.

Alle Techniken, die Sie kennen, wären hilfreich. Eine Option, die ich gefunden habe, ist das Senden ausgehender E-Mails über SpamAssassin, aber ich mache mir Sorgen, dass legitime Nachrichten blockiert werden.

Antwort1

Es gibt eine ArtGaspedal-Patchfür Qmail verfügbar, das Ihrer Beschreibung entspricht. Ich bezweifle, dass es eine integrierte Funktionalität ohne Patchen von Qmail gibt, da Qmail, ähm, so wie es ist, perfekt codiert ist.

Bitte schauen Sie sichdiese Diskussion über verschiedene MTAs, insbesondere die Anmerkung zu Qmail. Bedenken Sie, dass diese Diskussion 6 Jahre alt ist und was damals über Qmail gesagt wurde, trifft noch mehr zu. Dies ist vielleicht nicht Teil Ihrer kurz- oder mittelfristigen Planung, aber Sie sollten eine Migration von Qmail in Betracht ziehen, insbesondere wenn Sie eine Reihe zufälliger Patches anwenden müssen, damit es das tut, was Sie möchten.

Hmm, die Diskussion darüber, wie man etwas Ähnliches in Postfix machen kann, besteht in der Verwendung desPolitikAdd-on. Ein Blick auf dieses Projekt lässt vermuten, dass es mit verschiedenen MTAs verwendet werden kann. Möglicherweise können Sie also Qmail davon überzeugen, es zu verwenden.

Antwort2

Es hat hervorragend geklappt, vielen Dank!

Sie sollten auch die nächste Zeile nach dem ersten grep einfügen:

grep "$(date +"%b %d")" /var/log/maillog| grep-Übermittlung:| awk -Fsuccess {'print $2'} |awk -F: {'print $1'} | sort | uniq -c | sort -n | grep -v (unbekannt) | awk {'print $1"|"$2'}

Sie können also auch einfache, unverschlüsselte SMTP-Übermittlungen blockieren.

Grüße!

Antwort3

Sie können mit Swatch auch ausgehende E-Mails überwachen. Wenn Swatch das Maximum an Qmail-Sends erkennt (z. B. Remote 30/30), erhalten Sie eine Warnung.

Sie können den TCPServer-Limits-Patch verwenden: Gibt TCPServer die Möglichkeit, Verbindungen abzulehnen, wenn die durchschnittliche Serverauslastung über einem bestimmten Wert liegt, wenn mehr als eine bestimmte Anzahl von Verbindungen von derselben IP-Adresse empfangen werden oder wenn mehr als eine bestimmte Anzahl von Verbindungen von Maschinen im selben Klasse-C-Block empfangen werden (d. h. die „ersten drei Zahlen“ in ihren IP-Adressen sind gleich. „1.2.3.4“ und „1.2.3.100“ befinden sich im selben Klasse-C-Block.)https://qmail.jms1.net/ucspi-tcp/

Antwort4

Fügen Sie außerdem diese Zeile hinzu, um Ihren Server vor lokal authentifizierten Benutzern zu schützen:

grep "$(date +"%b %_d")" /var/log/maillog |
grep auth: |
grep ALL |
grep '127.0.0.1' |
awk -Ffrom\: {'print $2'} |
awk -Fto\: {'print $1'} |
sort | uniq -c | sort -n | grep -v bounce |
awk {'print $1"|"$2'}

Grüße!

verwandte Informationen