TL;DR
- Cosa imparerai: Come verificare se il tuo dominio email è configurato come open relay, come leggere i log SMTP per individuare attività sospette, e come bloccare l'abuso del tuo server prima che i criminali lo usino per lo spam.
- Tempo richiesto: 30-45 minuti per la verifica iniziale, poi monitoraggio periodico.
- Difficoltà: Media. Servono accesso admin al server email e ai log DNS.
IL PROBLEMA
Stai dormendo tranquillo e il tuo server email sta mandando spam a 50.000 destinatari. Non sei tu a farlo — qualcuno lo sta usando come relay aperto.
È successo a PCPJack, un threat actor che ha accidentalmente esposto online i propri tool, log e file C2. I ricercatori hanno scoperto una rete di 230 nodi cloud usati come relay email per inviare spam e phishing a nome di domini rubati. Il dettaglio divertente? Il criminale ha lasciato aperta la porta di casa.
Ma il punto non è ridere del malvivente distratto. Il punto è: come fai a sapere che non stai già contribuendo alla stessa rete?
Un open relay è un server email che accetta email da chiunque e le inoltra a qualsiasi destinatario, senza verificare che il mittente sia autorizzato a usarlo. Quando un server è configurato così, diventa il bersaglio perfetto per spammer e phisher. E spesso il sysadmin non se ne accorge finché non riceve 500 segnalazioni di spam o — peggio — il blocco delle liste RBL.
Se il tuo dominio finisce in una lista nera, prepareti a dire addio alla deliverability. Le email legittime non arrivano più. Il CEO urla, il cliente chiede spiegazioni, e tu devi spiegare che il server è stato abusato per tre giorni.
Questa guida ti mostra come capire se il tuo server è un open relay e come chiuderlo prima che qualcuno lo usi come PCPJack ha fatto con i suoi 230 nodi.
PREREQUISITI
Prima di iniziare, assicurati di avere:
- Accesso admin al server email (Exchange, Postfix, Sendmail, etc.) o al pannello del provider cloud
- Accesso ai log SMTP del server — di solito in /var/log/mail.log o tramite il centro admin
- Accesso al pannello DNS del dominio — per verificare record SPF, DKIM, DMARC
- Un client terminal per testare la connettività SMTP (telnet, netcat, o swaks)
Se usi un provider gestito (Office 365, Google Workspace, MailSniper), hai meno controllo diretto ma puoi comunque verificare i log di invio dal pannello admin.
STEP-BY-STEP
Step 1: Verifica se il tuo server è un open relay
Il modo più diretto è testarlo da fuori. Puoi usare il tool online MXToolbox (gratuito) oppure farlo manualmente.
Per test manuale:
# Connettiti al tuo server SMTP
telnet tuodominio.com 25
# Se il server risponde, prova a inviare senza autenticazione
EHLO test
MAIL FROM:<test@tuodominio.com>
RCPT TO:<destinatario@esterno.com>
DATA
Test email
.
QUIT
Se il server accetta RCPT TO verso un dominio esterno senza chiederti autenticazione, **hai un problema.
Il test con MXToolbox è più semplice:
- Vai su mxtoolbox.com/diagnostic
- Inserisci il tuo dominio
- Cerca "Open Relay" nel risultato
- Se è rosso, hai un relay aperto
Step 2: Controlla i log SMTP per attività sospette
I log sono la tua migliore amica. Cerca pattern anomali:
# Esempio per Postfix (Linux)
tail -n 5000 /var/log/mail.log | grep -i "relay"
# Cerca invii verso domini sconosciuti in gran quantità
grep "RCPT TO" /var/log/mail.log | cut -d'<' -f3 | cut -d'>' -f1 | sort | uniq -c | sort -rn | head -20
Cosa cercare:
- Spike improvvisi nel volume di email inviate
- Mittenti sconosciuti che usano il tuo server
- Destinatari in domini mai visti prima
- Tentativi di connessione da IP stranieri non autorizzati
Step 3: Verifica la configurazione SPF, DKIM e DMARC
Questi record DNS sono la prima linea di difesa. Se sono configurati male, il tuo dominio può essere facilmente spoofato.
SPF — Autorizza chi può inviare email per il tuo dominio:
v=spf1 include:_spf.google.com ~all
Il ~all (softfail) è meglio di -all (hardfail) per chi inizia, ma l'ideale è usare -all e testare bene.
DKIM — Aggiunge una firma crittografica alle email. Se non l'hai, il tuo server può essere usato per firmare email fasulle.
DMARC — Dice ai destinatari cosa fare se SPF e DKIM falliscono:
v=DMARC1; p=quarantine; rua=mailto:dmarc-reports@tuodominio.com
p=quarantine significa "metti in quarantena", p=reject è più aggressivo.
Step 4: Blocca l'accesso relay anonimo
Se usi Postfix, il file main.cf deve avere:
# Blocca relay senza autenticazione
smtpd_relay_restrictions = permit_mynetworks, reject
smtpd_sender_restrictions = permit_mynetworks, reject_sender_login_mismatch
# Limita chi può usare il server
mynetworks = 127.0.0.0/8, 10.0.0.0/8, 192.168.0.0/16
Se usi Exchange, vai in Receive Connectors e disabilita l'anonymous access per i connector esterni. Lascia solo i connector interni con autenticazione.
Step 5: Monitora le liste RBL
Se il tuo IP finisce in una lista nera (Spamhaus, SORBS, UCEPROTECT), le tue email vengono bloccate. Configura un allarme:
# Script semplice per controllare le RBL (da mettere in cron)
#!/bin/bash
DOMAIN="tuodominio.com"
IP=$(dig +short $DOMAIN A | tail -n1)
for list in spamhaus.org sorbs.net; do
result=$(dig +short ${IP}.${list} | grep ".")
if [ -n "$result" ]; then
echo "ATTENZIONE: $IP in $list" | mail -s "RBL Alert" admin@tuodominio.com
fi
done
Step 6: Abilita autenticazione SMTP strict
L'autenticazione deve essere obbligatoria per inviare email. Nessuna eccezioni.
Per Postfix:
# Richiedi autenticazione per tutti
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_tls_security_options = noanonymous
Per Office 365: vai nel centro admin, Exchange > Mail flow > Connectors e assicurati che solo gli utenti autenticati possano inviare.
VERIFICA
Dopo aver applicato le modifiche, verifica che tutto funzioni:
- Test Open Relay: Ripeti il test dello Step 1. Dovrebbe fallire — il server deve rifiutare email senza autenticazione.
- Test invio email: Invia un'email di test a un account esterno (es. Gmail) e verifica che arrivi. Controlla che gli header mostrino SPF=pass e DKIM=pass.
- Controlla i log: Dopo 24 ore, verifica che non ci siano più mittenti sconosciuti nei log.
- Test RBL: Controlla che il tuo IP non sia in nessuna lista nera con mxtoolbox.com/blacklist.
- DMARC report: Se hai configurato DMARC con rua, controlla i report settimanali. Ti mostrano chi sta inviando email a nome del tuo dominio — autorizzato o no.
TROUBLESHOOTING
Il server accetta ancora email senza autenticazione dopo la modifica
Riavvia il servizio SMTP. Su Postfix: systemctl restart postfix. Su Exchange: riavviai i servizi Transport.
SPF fallisce sempre anche se configurato bene
Il record potrebbe essere troppo lungo (più di 255 caratteri). Usa il meccanismo include: per dividere gli IP autorizzati. Verifica con dig tuodominio.com TXT.
Il dominio è già in una lista nera — come rimuoverlo?
Ogni lista ha una procedura diversa. Di solito:
- Vai sul sito della lista (es. spamhaus.org)
- Cerca "delist request"
- Compila il form con il tuo IP e motivo
- Aspetta 24-48 ore
Non ho accesso ai log del server — cosa faccio?
Se usi un provider cloud gestito, cerca nel pannello admin la sezione "Email Logs" o "Audit Logs". Se non trovi nulla, apri un ticket di supporto e chiedi conferma che il relay sia bloccato.
DMARC report mostra migliaia di tentativi da IP sconosciuti — è normale?
Dipende. Se sono pochi e vengono rifiutati, è OK. Se sono tanti e alcuni passano, il tuo SPF/DKIM è debole. Aumenta le restrizioni.
CONCLUSIONE
PCPJack ha lasciato esposta la propria infrastruttura e i ricercatori hanno scoperto 230 nodi di relay email. Il lesson? Anche i criminali sbagliano, ma tu non aspettare che qualcuno sbagli dal tuo lato.
Un open relay è come una porta di casa aperta con un cartello "entrate liberi". Qualcuno prima o poi entra. E quando entra, il danno è fatto.
La verifica è semplice: 30 minuti di test possono salvarti da giorni di casino, blacklist e chiamate furibonde del CEO.
Se non hai tempo di fare tutto manualmente o vuoi una soluzione che semplifica il monitoraggio, considera un servizio di protezione email che gestisca relay, autenticazione e monitoraggio RBL automaticamente. MailSniper offre queste funzionalità con dashboard dedicata e alert in tempo reale.
Il tuo server è un open relay? Fammi sapere nei commenti se il test ha rivelato sorprese.