[Postfixbuch-users] Spamwelle die dreihunderzweiundvierzigste?!

Thomas Krieger postfixusers at home.tom-krieger.de
Mi Aug 29 21:38:40 CEST 2007


Am Mittwoch, 29. August 2007 20:28 schrieb Sandy Drobic:
> Thomas Krieger wrote:
> > Hallo zusammen,
> >
> >> ich möchte mal in die Runde fragen, ob derzeit noch jemand massiv mit
> >> offenen Verbindungen/Botnet-Attacken zu kämpfen hat?
> >>
> >> Etliche Clients, viele ohne PTR, viele aus Dial-In-Netzen versuchen
> >> derzeit irgendeinen Müll einzuliefern. Dank einigen bewährten
> >> Restriktionen werden sie zwar nach einigen Sekunden abgewiesen,
> >> "verstopfen" mir trotzdem die begrenzten smtpds.
> >>
> >> Block per Firewall fast unmöglich, da immer unterschiedliche
> >> IP-Adressen.
> >
> > ich habe seit ca. 12:00 Uhr am Montag das Problem. Massiv viele Mails aus
> > Dialup-Bereichen von ständig wechselnden IPs. Die verstopfen nur die
> > smtpd. Heute gegen 11:00 Uhr wurde es noch einmal schlimmer.
> >
> > Ich habe gestern und heute ca. 330.00 Rejects und ca. 24.00 ausgelieferte
> > Mails.
>
> Das grenzt in der Tat schon an einen DDOS-Angriff bei über 1000 Rejects
> pro Minute. :-/
>
> Ich nehme an, dass du smtpd_delay_reject auf "no" gestellt hast, um die
> Dialin-Rechner direkt loszuwerden?

Anfangs nein. Später habe ich das dann auf no gesetzt.
>
> > Ich habe gestern ein kleines böses Skript, dass die IPs ohne PTR in
> > iptables Regeln umwandelt und dynamisch in die Firewall einfügt, laufen
> > lassen. Das hat nichts genutzt. Nach 1 Stunde ca. 4000 IPs geblockt. Ich
> > habe dann mal eine Stunde lang nur mitzählen lassen. Die meisten IPs
> > kommen tatsächlich nur einmal vor.
>
> Ja, ich denke auch, das dies keine Lösung ist. Für dich kommt
> wahrscheinlich nur ein lokaler Spiegel einer RBL in Frage, mit der du
> eingehende IPs direkt checken und rejecten kannst.

Eigentlich nicht. ich verwende für die RBLs den policyd-weight. Allerdings 
kommen 80% der Emails nicht soweit. Die meisten fliegen über dialip 
Blockliste raus. Dann fallen viele über reject_unknown_client mit 450 raus. 
Der policyd-weight und damit die RBLs kommen nicht allzu oft zum Einsatz.
>
> Wieviele smtpd sind denn bei dir simultan in Gebrauch wegen dieser
> Zombies? Wieviele hast du als max gesetzt?

zuerst hatte ich 100 smtpd laufen. Das hat zu normalen Zeiten dick gereicht. 
Da lag das Maximum der parallel aktiven smtpd zwischen 80 und 790. 
Heute bin ich über 300 nach 500 auf 1000 gegangen. Ich weiß, das Maximum der 
parallel aktiven smtpd lag dann bei ca. 600. Ich habe das minütlich per ps 
und grep ausgewertet und in ein File geschrieben. Allerdings habe ich die 
Queues für Virenscanner und Spamchecks nicht größer gemacht. Eine Auswertung 
des gestrigen Logs hat ergeben, das über 90% der Mails einfach raus fliegen 
und gar nicht erst zum DATA kommen. Damit denke ich kann ich das riskieren, 
die Maschine läuft ohne große Probleme mit akzeptabler Last. Im Monitoring 
ist nichts zu erkennen, dass es zu problemen gekommen wäre.

Der Server ist Mailserver für ca. 1500 Domains. Es läuft ein bind 8.4 Sklave 
für meine gehosteten Domains. Der bind bearbeitet auch die dns requests des 
postfix.

Eine Auswertung des Logfiles vom postfix hat mich heute aber etwas 
nachdenklich gemacht: ich habe viele connect from unknown im log. Diverse 
Tests haben ergeben, dass sich einige der "unknowns" trotzdem per DNS 
auflösen lassen, ein viel größerer Teil allerdings nicht, da scheint kein PTR 
zu existieren. Zumindest habe ich das mit zwei anderen DNS aus dem Internet 
verifiziert. Es sieht also so aus, dass ich ggf. ein DNS Problem habe. Die 
Firewall auf der Büchse scheidet aus, da im Log keine Einträge bezüglich DNS 
zu finden sind (alles was mit drop oder reject abgewiesen wird, wird auch 
geloggt). Es wird nichts geblockt. 
Es ist zwar etwas OT, aber hat jemand einen Tipp oder Link zum Thema 
Performance Tuning von bind? Meine Bücher zum Thema Bind gehen hier nur auf 
die Maintenance-Intervalle ein.
Ich denke aber, da die meisten IPs nur einmal auftauchen, werde ich hier wenig 
erreichen können, da der erste Zugriff für eine IP/Domain immer der teuerste 
ist. Tests mit dig haben ergeben, dass der erste Zugriff zur Auflösung einer 
IP/Domain zwischen 30 und 50 msec dauert. Wenn der Eintrag gechached ist, 
benötigt die Auflösung 1 ms. Hat jemand Erfahrungswerte, ob die Zeiten gut, 
schlecht oder gar miserabel sind?

Servus

Thomas



Mehr Informationen über die Mailingliste Postfixbuch-users