Come appare il messaggio
554 5.7.1 Service unavailable; Client host [203.0.113.10] blocked using zen.spamhaus.orgCause frequenti
- Una casella o un form web compromesso ha inviato spam tramite il tuo server.
- L'IP è in un range dinamico (Spamhaus PBL) e non dovrebbe consegnare direttamente.
- IP condiviso: un altro cliente sullo stesso IP ha causato il listing.
- Sul tuo server: le query DNSBL passano da resolver pubblici (8.8.8.8), Spamhaus risponde con codici di errore e ogni mail viene rifiutata.
Verifica
- Controlla l'IP su Spamhaus (ottetti invertiti)
dig +short 10.113.0.203.zen.spamhaus.org - Trova nei log i rifiuti per blocklist
journalctl -u postfix --since today | grep -i 'blocked using' - Trova gli account con troppi login/invii
journalctl -u postfix --since today | grep -o 'sasl_username=[^ ,]*' | sort | uniq -c | sort -rn | head - Quale resolver usi per le query DNSBL?
cat /etc/resolv.conf
Soluzione
- Prima ferma la sorgente: blocca l'account, cambia la password, proteggi il form, cancella lo spam dalla coda.
- Solo dopo chiedi il delisting al gestore della lista, altrimenti arriva subito il listing successivo.
- Con un listing PBL invia tramite uno smarthost con IP pulito o usa un IP statico con PTR corretto.
- Per le tue query DNSBL usa un resolver locale (es. Unbound) invece dei DNS pubblici.
- Introduci limiti di invio per account, così un account rubato non può spedire migliaia di mail.
Domande frequenti
Cosa significa la risposta 127.255.255.254 da Spamhaus?
Non è un listing ma un errore: la query è arrivata da un resolver pubblico o aperto, a cui Spamhaus non risponde.
Quanto ci vuole per il delisting?
Per Spamhaus SBL/XBL di solito da minuti a qualche ora dalla richiesta, se lo spam è cessato. Alcune liste scadono da sole dopo qualche giorno.