Hallo,
wir experimentieren hier schon ne Zeit lang mit Spamdyke
(www.spamdyke.org) was ein Addon für Qmail ist. Es sitzt im Prinzip als
Filter vor Qmail-smtpd und bekommt die komplette SMTP
Kommunikation mit. Je nach Konfiguration macht es Checks und bricht
die SMTP Verbindung ab wenn gewisse Kriterien zutreffen.
Spamdyke ist ein tolles Tool um einige weitere Checks hinzuzufügen und
bestimmte Verbindungen schon abzulehnen bevor sie von Qmail weiter
bearbeitet werden. Das spart einiges an Serverlast.
Wir nutzen momentan sehr wenige der verfügbaren Optionen, wollen
das aber nach und nach weiter ausbauen. Momentan blocken wir leere
RDNS Einträge, nicht auflösbare RDNS Einträge und Absenderadressen die
keinen eigenen MX Eintrag besitzen. Hierzu hänge ich ein Beispiel Config
File an. Nach und nach werde ich weitere Optionen von Spamdyke
testen und in dieses Howto einarbeiten wenn sie sich bewähren....
Die Installation läuft wie folgt ab:
cd /root
wget http://www.spamdyke.org/releases/spamdyke-4.3.1.tgz
tar xvfz spamdyke-4.3.1.tgz
cd spamdyke-4.3.1/spamdyke
./configure
make
cp spamdyke /usr/local/bin/
mkdir /etc/spamdyke.d
Nun liegt das Spamdyke Binary am richtigen Platz und es ist an der Zeit
Spamdyke in das Qmail-smtpd Startfile einzubauen. Bitte mit folgendem
Kommando das Startfile in nem Editor öffnen:
Nun direkt VOR /var/qmail/bin/qmail-smtpd folgendes einfügen:
"/usr/local/bin/spamdyke -f /etc/spamdyke.conf". Die komplette
Startzeile für QMail sieht bei mir dann so aus:
exec /usr/local/bin/softlimit -m 80000000 /usr/local/bin/tcpserver -x /etc/tcp.smtp.cdb -H -P -R -u $QMAILDUID -g $NOFILESGID -c 40 -v 0 smtp /var/qmail/bin/tcp-env relaylock /usr/local/bin/spamdyke -f /etc/spamdyke.conf /var/qmail/bin/qmail-smtpd $HOSTNAME /usr/local/pd-admin2/bin/checksmtppasswd /bin/true 2>&1 | /var/qmail/bin/splogger smtpd 3
Sehr gut. Nun legen wir noch mit "nano /etc/spamdyke.conf" die
/etc/spamdyke.conf an und füllen sie mit folgendem Inhalt:
log-level=info
local-domains-file=/var/qmail/control/rcpthosts
max-recipients=20
idle-timeout-secs=300
reject-empty-rdns
reject-unresolvable-rdns
greeting-delay-secs=5
reject-missing-sender-mx
dns-blacklist-entry=ix.dnsbl.manitu.net
dns-blacklist-entry=b.barracudecentral.org
dns-blacklist-entry=zen.spamhaus.org
dns-blacklist-entry=bl.spamcop.net
dns-whitelist-entry=list.dnswl.org
config-dir=/etc/spamdyke.d
Alles anzeigen
Nun muss noch Qmail neu gestartet werden. Um sicher zu gehen starte
ich es immer komplett neu:
Fertig. Nun sollten im Maillog Einträge von Spamdyke erscheinen. Nur als
Hinweis: DENIED_OTHER bedeutet dass ein Filter HINTER Spamdyke die
Mail abgelehnt hat. Zum Beispiel das PD-Admin Greylisting oder das
blocken von dynamischen IPs von PD-Admin.
Eine Erklärung der Configoptionen findet sich unter:
http://www.spamdyke.org/documentation/README.html#USAGE
Wäre super wenn wir evtl. etwas zusammen arbeiten und die
Konfiguration weiter ausfeilen könnten um in Zukunft noch mehr Spam
zu blocken bevor er Last auf dem Server verursachen kann. Vielleicht
wäre es für Herrn Bradler auch interessant Spamdyke in PD-Admin
einzubauen. Spamdyke besitzt ein sehr gutes Greylisting was pro Domain
gesteuert werden kann, weiterhin super konfigurierbare Black und
Whitelist Optionen.
18.05.2009: Downloadlinks aktualisiert auf Version 4.0.10
31.01.2012: Downloadlinks aktualisiert auf Version 4.3.1
28.08.2012: DNS Blacklists und Whiteslists in Default Config eingefügt