SpamAssassin und URIBL: Query blocked

spamassassin-350Beim Betrieb eines eigenen Mailservers in Verbindung mit der Apache-Software SpamAssassin können einige Stolperfallen auftreten.

Mein eigener Mailserver hat gestern viele Mails fälschlicherweise als Spam markiert und mit einer kurzen Meldung den Spam-Score erhöht.

ADMINISTRATOR NOTICE: The query to URIBL was blocked.  See https://wiki.apache.org/spamassassin/DnsBlocklists#dnsbl-block for more information.

Hintergrund der Meldung

Die genannte URIBL ist eine Blacklist, die den Content einer Mail auf bestimmte URLs prüft und die Mail entsprechend als SPAM einstuft.

Hintergrund dieser Meldung ist, dass viele – auch die URIBL – nach dem „Free for some“-Prinzip arbeiten, was soviel heißt, dass die Liste für Nutzer mit wenigen Anfragen im Monat kostenfrei nutzbar ist und Nutzer mit vielen Anfragen entsprechende Gebühren zahlen müssen.

Mein Mailaufkommen täglich ist ziemlich gering, da ich der einzige User auf dem Mailserver bin – trotzdem wurde ich von der Liste blockiert, da ich als DNS-Server in der resolv.conf die Google-DNS-Server (8.8.8.8 und 8.8.4.4) eingetragen hatte und die Anfragen an die Liste somit von Google-IPs ausgingen.

Problemlösung: lokaler DNS-Cache

Ich habe meine DNS-Server auf die von Hetzner abgeändert, was leider aber noch immer zu einer Fehlermeldung führte.

Auch von Hetzner gehen also zu viele Anfragen an die URIBL raus, weshalb ich eine andere Lösung nutzen musste: ein lokaler DNS-Cache mit dnsmasq.

Installation von dnsmasq

Die Installation gestaltet sich unter Debian denkbar einfach und ist mit

erledigt.

Konfiguration von dnsmasq

Zuerst verschieben wir die ausführlich kommentierte Konfigurationsdatei, damit wir mit einer leeren Datei arbeiten können:

Die Datei /etc/dnsmasq.conf erstellen wir nun mit folgendem Inhalt

und verschieben die /etc/resolv.conf an die in der Konfiguration genannten Stelle /etc/resolv.conf.dnsmasq. Die DNS-Optionen in dieser Datei sind die Upstream-DNS-Server für dnsmasq.

Die Datei /etc/resolv.conf erstellen wir nun mit einer Zeile

und bringen unserem System so bei, den lokalen DNS-Server zu nutzen.

Nun starten wir den dnsmasq noch neu

und sollten in der Ausgabe von

in der drittletzten Zeile unseren DNS-Server sehen können:

Setzen wir nun unseren Befehl zur Abfrage der URIBL erneut ab, sollten wir eine korrekte Antwort erhalten:

Ist dies nicht der Fall, muss geprüft werden, ob das System den korrekten DNS-Server (127.0.0.1) nutzt.

1 Gedanke zu “SpamAssassin und URIBL: Query blocked

Schreibe einen Kommentar