La crittografia della posta inviata a te può essere disattivata di nascosto
Istruzioni generali. Apri questo articolo dal tuo report PageCheck per vederlo compilato con i server di posta del tuo dominio e i passaggi esatti del tuo provider DNS.
Che cos’è
La posta tra server di solito è cifrata, ma solo se entrambe le parti si accordano lungo il percorso, e un aggressore in mezzo può togliere questa offerta: la posta viene allora consegnata in chiaro e nessuno se ne accorge. MTA-STS è una piccola policy pubblica che dice ai server mittenti che i tuoi server di posta supportano sempre la cifratura, quindi non devono consegnare senza.
Cosa non va
example.com non ha una policy MTA-STS, quindi la cifratura delle e-mail inviate al dominio può essere disattivata di nascosto. La sua policy DMARC blocca già le e-mail falsificate a suo nome; questo è il passo successivo.
Come correggere
Inizia in modalità testing: i server mittenti si limitano a segnalare i problemi e consegnano comunque ogni messaggio, quindi non può andare storto nulla mentre verifichi la configurazione.
1. Scrivi il file di policy.
Salvalo come file di testo semplice chiamato mta-sts.txt. Deve elencare ogni server di posta (MX) del dominio:
mta-sts.txt
version: STSv1 mode: testing mx: mail.example.com max_age: 86400
2. Pubblicalo a un indirizzo tutto suo.
Il file deve aprirsi a https://mta-sts.example.com/.well-known/mta-sts.txt via HTTPS, con un certificato valido e senza alcun reindirizzamento: un reindirizzamento a www o al sito principale lo fa ignorare ai mittenti.
Se il tuo DNS è su Cloudflare, il posto più semplice è un Cloudflare Worker (gratuito): Workers & Pages → Create → Create Worker, chiamalo mta-sts, sostituisci il suo codice con quello qui sotto e fai Deploy. Poi nelle Settings del Worker → Domains & Routes → Add → Custom domain: mta-sts.example.com. Cloudflare crea il record DNS e il certificato.
Cloudflare Worker
export default {
async fetch() {
const policy = [
'version: STSv1',
'mode: testing',
'mx: mail.example.com',
'max_age: 86400',
].join('\r\n') + '\r\n';
return new Response(policy, { headers: { 'content-type': 'text/plain; charset=utf-8' } });
},
};
Sul tuo hosting: aggiungi il sottodominio mta-sts.example.com con un certificato SSL, crea al suo interno una cartella chiamata .well-known e caricaci mta-sts.txt.
- Plesk: Websites & Domains → Add Subdomain, poi SSL/TLS Certificates → Let's Encrypt, poi File Manager.
- cPanel: Domains → Create A New Domain, poi SSL/TLS Status → Run AutoSSL, poi File Manager.
3. Annuncia la policy nel DNS.
- Apri i record DNS del tuo dominio dove è gestito il suo DNS: di solito il registrar del dominio, l’hosting o Cloudflare.
- Aggiungi un record
TXTcon nome_mta-stse valorev=STSv1; id=1, poi salva.
4. Chiedi i report.
I server mittenti invieranno ogni giorno via e-mail un report di ogni consegna cifrata non riuscita. Crea prima la casella tls-reports@example.com (o usa un altro indirizzo che leggi).
- Apri i record DNS del tuo dominio dove è gestito il suo DNS: di solito il registrar del dominio, l’hosting o Cloudflare.
- Aggiungi un record
TXTcon nome_smtp._tlse valorev=TLSRPTv1; rua=mailto:tls-reports@example.com, poi salva.
5. Verifica.
Apri https://mta-sts.example.com/.well-known/mta-sts.txt: dovrebbe mostrare il file come testo semplice. Poi esegui di nuovo questo controllo: legge il file e confronta le sue righe mx con i tuoi server di posta.
6. Circa due settimane dopo: applicala. Quando i report non mostrano consegne non riuscite, passa il file alla modalità enforce con un max_age di una settimana:
mta-sts.txt
version: STSv1 mode: enforce mx: mail.example.com max_age: 604800
Poi cambia il record TXT _mta-sts in v=STSv1; id=2, così i mittenti scaricano il nuovo file. Ogni modifica successiva al file richiede un nuovo id e, quando cambiano i tuoi server di posta, aggiorna prima le righe mx.
Set up MTA-STS (RFC 8461) for the mail domain example.com, starting in testing mode, and TLS-RPT (RFC 8460) reporting. Its MX hosts (look them up first; this is a placeholder): mail.example.com. Steps: 1. Serve this policy at https://mta-sts.example.com/.well-known/mta-sts.txt over HTTPS with a valid certificate for mta-sts.example.com, status 200, Content-Type text/plain, no redirect: version: STSv1 mode: testing mx: mail.example.com max_age: 86400 Use the web host (a subdomain with its own certificate) or a static host. 2. Add the TXT record _mta-sts.example.com = "v=STSv1; id=1". 3. Add the TXT record _smtp._tls.example.com = "v=TLSRPTv1; rua=mailto:tls-reports@example.com" (make sure that mailbox exists). 4. Verify: curl -sv https://mta-sts.example.com/.well-known/mta-sts.txt (200, no redirect, the policy text) and dig TXT _mta-sts.example.com +short. 5. Tell me to come back in two weeks: if the TLS reports show no failures, switch to mode: enforce with max_age: 604800 and change the TXT record to "v=STSv1; id=2". Every mx line must match an MX host exactly or by a one-label wildcard (*.example.com); a missing one makes enforcing senders refuse mail. Resources: - MTA-STS, RFC 8461 (IETF): https://datatracker.ietf.org/doc/html/rfc8461 - TLS-RPT, RFC 8460 (IETF): https://datatracker.ietf.org/doc/html/rfc8460
Oggetto: example.com – configurare MTA-STS per la nostra posta Buongiorno, Un controllo del sito (PageCheck) ha rilevato che example.com non ha una policy MTA-STS, quindi la cifratura delle e-mail inviate a noi può essere disattivata di nascosto lungo il percorso. Vi chiedo di procedere in quest’ordine: 1. Pubblicare una policy MTA-STS in modalità testing a https://mta-sts.example.com/.well-known/mta-sts.txt (HTTPS, nessun reindirizzamento), con i nostri server di posta: mail.example.com. 2. Aggiungere il record TXT _mta-sts.example.com con il valore «v=STSv1; id=1». 3. Aggiungere il record TXT _smtp._tls.example.com con il valore «v=TLSRPTv1; rua=mailto:tls-reports@example.com», per i report delle consegne non riuscite. Dopo circa due settimane senza errori nei report, passare la policy alla modalità enforce. Risorse: - MTA-STS, RFC 8461 (IETF): https://datatracker.ietf.org/doc/html/rfc8461 - TLS-RPT, RFC 8460 (IETF): https://datatracker.ietf.org/doc/html/rfc8460 Grazie!
Controlla il tuo sito per sapere se ha questo problema. Controlla un sito