Test MX e STARTTLS
Le e-mail inviate al tuo dominio attraversano internet tra due server, e la crittografia su quel tratto è facoltativa per progetto. Questo test bussa a ciascuno dei tuoi server in entrata e riporta cosa verrebbe offerto a un mittente.
Come un messaggio trova il tuo server
Quando qualcuno scrive a anna@example.com, il suo server di posta cerca i record MX di example.com. Ogni record indica un server e gli assegna un numero. Il numero più basso viene provato per primo e gli altri sono di riserva. Il server mittente apre poi una connessione sulla porta 25 e le due macchine parlano in SMTP, un protocollo del 1982 che invia tutto come testo leggibile.
La crittografia è arrivata dopo, come upgrade all’interno della stessa conversazione. Il server ricevente elenca STARTTLS tra le sue capacità, il mittente risponde con la stessa parola, e da lì la sessione è protetta da TLS, la tecnologia dietro HTTPS. Se la parola non è nella lista, il messaggio viaggia in chiaro.
Cosa fa il test sulla porta 25
Per un massimo di cinque server MX, in ordine di priorità, risolve il primo indirizzo IPv4 e simula l’inizio di una consegna:
S: 220 mx1.example.com ESMTP C: EHLO <our server> S: 250-mx1.example.com S: 250-SIZE 52428800 S: 250 STARTTLS C: STARTTLS S: 220 Ready to start TLS (TLS handshake, certificate read) C: QUIT
E si ferma lì. Non indica mai un mittente, un destinatario o un messaggio. Dall’handshake annota la versione TLS, il cifrario, l’emittente e la data di scadenza del certificato, se il certificato nomina l’host MX e se la sua catena porta a un’autorità affidabile.
Dopodiché cerca due record DNS e un file: il record TXT su _mta-sts, la policy su https://mta-sts.example.com/.well-known/mta-sts.txt e il record TXT su _smtp._tls.
Leggere i quattro riquadri
- Server
- Quanti host MX hanno risposto alla connessione. Un server di riserva muto riceve un avviso. Se nessuno risponde, i mittenti mettono in coda la tua posta e la restituiscono dopo qualche giorno.
- Crittografia
- «Parziale» significa che almeno un server raggiungibile non ha completato STARTTLS. È l’unico risultato qui che rende rosso l’intero esito mentre la posta continua ad arrivare.
- Certificati
- «Da rivedere» riguarda un certificato scaduto, autofirmato o emesso per un altro nome. TLS 1.0 e 1.1 sono segnalati a parte come obsoleti.
- MTA-STS
- Mostra la modalità trovata nel file di policy:
enforce,testingonone. Diventa rosso quando il record DNS esiste ma il file non si può recuperare, non ha la riga della modalità o tralascia uno dei tuoi host MX.
Un dominio senza MX, o con il record «null MX» 0 ., viene indicato come dominio che non riceve posta. Per un dominio che serve solo un sito web, è una configurazione valida.
Perché un certificato non valido riceve comunque posta, e come MTA-STS cambia le cose
Lo STARTTLS semplice è opportunistico. La maggior parte dei mittenti cifra quando può e non verifica il certificato. Così chi controlla il percorso di rete può cancellare la riga STARTTLS dalla risposta e leggere tutto. MTA-STS chiude questa falla. Pubblichi, via HTTPS, l’elenco dei tuoi host MX e la regola secondo cui devono presentare un certificato valido. Gmail e Outlook.com la applicano quando ti inviano posta.
Il file di policy è lungo quattro righe:
version: STSv1 mode: testing mx: mx1.example.com max_age: 604800
Servilo dal sottodominio mta-sts con un certificato HTTPS valido, poi aggiungi due record TXT:
_mta-sts.example.com. TXT "v=STSv1; id=20260115" _smtp._tls.example.com. TXT "v=TLSRPTv1; rua=mailto:tls-reports@example.com"
Resta in testing finché i report TLS-RPT giornalieri non tornano senza errori, poi passa a enforce e cambia il valore di id perché i mittenti ricarichino la policy. Con la posta in hosting come Google Workspace o Microsoft 365, i certificati MX sono compito del provider. La policy è l’unica parte che devi pubblicare tu.
Il test parla da un solo server, in IPv4, al primo indirizzo di ogni MX. Non verifica DANE (record TLSA), la consegna in IPv6, il filtro antispam né l’esistenza di una determinata casella. Un server di posta che limita i chiamanti sconosciuti può respingerci e accettare comunque i mittenti reali.
Domande frequenti
Qual è la differenza tra STARTTLS e SSL/TLS sulla porta 465?
La porta 25 tra server parte sempre in chiaro e passa alla cifratura con il comando STARTTLS. La porta 465 è cifrata dal primo byte. I programmi di posta la usano per inviare i messaggi al proprio provider, e non si usa mai tra provider. Anche la porta 587 è per i programmi di posta e usa STARTTLS.
Le e-mail sono cifrate in transito per impostazione predefinita?
Di solito sì, ma niente lo garantisce. I grandi provider riferiscono che ben oltre il 90% della loro posta da server a server usa TLS. Ogni passaggio decide per conto suo, e senza MTA-STS o DANE un mittente ripiega sul testo in chiaro quando la crittografia non viene offerta.
Mi serve un certificato di un’autorità pubblica sul mio server di posta?
La posta arriva anche con un certificato autofirmato, perché la maggior parte dei mittenti non lo verifica. Ti servirà un certificato affidabile che nomini l’host MX non appena pubblichi MTA-STS in modalità enforce. Con Let’s Encrypt non costa nulla.
Quanti record MX dovrebbe avere un dominio?
Uno basta quando punta a un provider che gestisce più macchine dietro quel nome. Se gestisci un server tuo, due o più ti danno una riserva. Un MX di backup con un filtro antispam più debole è una porta sul retro nota, quindi tieni ogni MX allo stesso livello di protezione.
Perché il test dice che un server è irraggiungibile se ricevo posta?
Il server può essere lento a rispondere (rinunciamo alla connessione dopo 8 secondi), può limitare gli host sconosciuti oppure può avere solo un indirizzo IPv6. Controlla il nome MX con una ricerca dei record DNS e riprova tra qualche minuto.