Vai al contenuto

Impostazioni cookie

Scelga per ogni tipo quali cookie consente. Può modificare la sua scelta in qualsiasi momento tramite Impostazioni cookie in fondo a ogni pagina. Informativa sulla privacy

Necessari

Sempre attivi

Servono per accedere, conservare il carrello e ricordare le sue scelte. Sono sempre attivi.

Quali cookie?
  • weboke_sessie, weboke_klant, weboke_remember: la sua sessione e la permanenza dell'accesso
  • weboke_basket: il suo carrello
  • wkBtwIncl: visualizzazione dei prezzi con o senza IVA
  • wok_cookies: la sua scelta sui cookie, 12 mesi

Misurano quale annuncio porta a una visita o a un ordine, così non paghiamo annunci che non funzionano.

Quali cookie?
  • Google Ads tramite Google Tag Manager (_gcl_au, _gcl_aw), fino a 90 giorni
  • OpenAI Ads, annunci in ChatGPT
  • wok_aff: tramite quale partner è arrivato da noi (programma di affiliazione), 60 giorni

4,6

Paese e lingua

Ogni paese ha il suo sito, con i prezzi e l'IVA di quel paese.

Vedi

Modulo 4 · 4.3

DKIM nella pratica: selector, chiavi e servizi

Modulo 4: Recapitabilità: SPF, DKIM e DMARC nella pratica · Tempo di lettura: 12 minuti

Obiettivo della lezione: Al termine di questa lezione sarà in grado di analizzare un'intestazione DKIM-Signature, configurare DKIM con il proprio dominio per ogni servizio di invio, verificare se un selector funziona e spiegare come sostituire le chiavi in modo sicuro.

Concetti chiave: DKIM-Signature, d= (dominio firmatario), s= (selector), h= (intestazioni firmate), bh= e b=, canonicalizzazione (c=), <selector>._domainkey.<dominio>, TXT con p= o CNAME verso il servizio, lunghezza della chiave 2048 bit (RFC 8301), segmenti di 255 caratteri, ed25519 (RFC 8463), sostituzione della chiave, p= vuoto (revocata), DKIM e reindirizzamento

Perché DKIM è il più importante dei tre

SPF indica quali server possono inviare posta, ma si rompe in caso di reindirizzamento e guarda al Return-Path, che presso molti servizi non è il Suo. DKIM inserisce una firma nel messaggio stesso. Questa firma sopravvive al reindirizzamento (finché il messaggio non viene modificato) ed è collegata a un dominio che Lei stesso sceglie. Per questo motivo DKIM è spesso, nella pratica, l'unico meccanismo che fa superare il DMARC a newsletter, fatture generate da un programma di contabilità e posta reindirizzata.

Le basi (come la chiave è inserita nel DNS, cos'è un selector) sono spiegate nel corso DNS, lezione 4.4. Qui andiamo oltre: cosa contiene esattamente una firma, e come si configura DKIM per ogni servizio?

Analizzare una firma

Apra le intestazioni di un'email che ha ricevuto (lezione 1.5). In alto, se il messaggio è firmato, trova qualcosa del genere:

DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=example.com; s=x;
	t=1762588800; h=from:to:subject:date:message-id:mime-version:content-type;
	bh=2jUSOH9NhtVGCQWNr9BrIAPreKQjO6Sn7XIkfJVOzv8=;
	b=Gm7yW3q...lunga sequenza di caratteri...Qx9A==
TagSignificato
v=1Versione di DKIM
a=rsa-sha256Algoritmo: chiave RSA, SHA-256. Possibile anche: ed25519-sha256
c=relaxed/relaxedCanonicalizzazione: quanto rigorosamente vengono trattate piccole modifiche (spazi, maiuscole nei nomi delle intestazioni), per le intestazioni e per il testo. relaxed è l'impostazione comune ed è più tollerante rispetto a simple
d=example.comIl dominio firmatario. Questo dominio risponde del messaggio. Il DMARC lo confronta con l'indirizzo Da
s=xIl selector: quale chiave di quel dominio è stata usata
t=Momento della firma (secondi dal 1970)
h=Quali intestazioni sono state firmate. from deve sempre esserci
bh=Un'impronta digitale (hash) del testo del messaggio
b=La firma stessa

Il destinatario recupera la chiave pubblica da <s>._domainkey.<d>, qui quindi x._domainkey.example.com, e verifica se b= corrisponde alle intestazioni di h= e all'impronta bh=. Se lungo il percorso viene modificata anche una sola lettera nel testo o in un'intestazione firmata, la verifica fallisce.

In Authentication-Results vede il risultato, ad esempio dkim=pass header.d=example.com header.s=x. Un messaggio può avere più firme, ad esempio una del Suo dominio e una del servizio stesso. Per il DMARC conta solo una firma il cui d= corrisponde al Suo dominio Da.

Ogni servizio il proprio selector

Un dominio può avere molte chiavi DKIM contemporaneamente, ciascuna sotto un proprio selector. È proprio questo lo scopo: ogni servizio che invia posta per Suo conto firma con una chiave propria.

MittenteSelector (esempio)Come appare nel DNS
Server di posta di hostingx oppure defaultTXT con la chiave, creato dal pannello
Microsoft 365selector1, selector2due record CNAME verso Microsoft
Google Workspacegoogle (predefinito)TXT con una chiave che fa creare nella console di amministrazione
Servizio di newsletterad esempio k2, k3, mte1di solito record CNAME verso il servizio

TXT o CNAME?

  • Con un record TXT inserisce Lei stesso la chiave pubblica nel Suo DNS. Se il servizio vuole una nuova chiave, deve modificare il record.
  • Con un record CNAME fa puntare il selector verso un nome presso il servizio, ad esempio k2._domainkey.example.com CNAME dkim2.mailer.example. Il servizio gestisce quindi la chiave autonomamente e può sostituirla senza che Lei debba fare nulla. Per questo i grandi servizi scelgono il CNAME, e spesso ne usano due: così possono alternare tra una chiave attiva e una nuova.

Attenzione: un CNAME non può coesistere con un altro record sullo stesso nome. Se esiste già un TXT su selector1._domainkey, lo rimuova.

L'elemento più importante: attivare DKIM presso il servizio

Presso molti servizi, DKIM con il Suo dominio non è attivo per impostazione predefinita. In tal caso firmano con il proprio dominio (d=mailer.example). Il messaggio è sì firmato, ma non allineato con il Suo indirizzo Da. Per il DMARC questo non conta. Nella gestione del servizio si chiama spesso "verifica del dominio", "verifica dominio", "autenticazione" o "dominio mittente personalizzato". Solo dopo aver impostato i record E averlo attivato nel servizio, questo firmerà con d=example.com.

Chiavi: lunghezza, segmenti e algoritmo

  • Lunghezza. L'RFC 8301 stabilisce: almeno 1024 bit, e i mittenti dovrebbero usare almeno 2048 bit. Usi 2048. Una chiave di 512 bit viene considerata non valida dai destinatari.
  • Segmenti di 255 caratteri. Un record TXT è composto da sequenze di caratteri di massimo 255 caratteri. Una chiave a 2048 bit è lunga circa 400 caratteri e non entra in un'unica sequenza. Il record è quindi composto da due o più sequenze consecutive ("v=DKIM1; k=rsa; p=MIIBIj..." "...IDAQAB"), che il destinatario unisce. La maggior parte dei pannelli lo fa automaticamente. Se qualcosa va storto, ottiene una chiave troncata e ogni firma fallisce. Copi quindi sempre una chiave per intero, senza spazi extra o virgolette nel mezzo.
  • ed25519 (RFC 8463) è un algoritmo più moderno con chiavi brevi. Non tutti i destinatari lo verificano ancora. Chi lo usa firma quindi con due firme: una RSA e una ed25519.

Sostituire una chiave

È opportuno sostituire una chiave di tanto in tanto, e sicuramente se sospetta che la chiave privata sia trapelata (ad esempio dopo un attacco al server o l'uscita di un amministratore). Proceda così:

  1. Crei una nuova chiave sotto un nuovo selector, ad esempio s2026, e inserisca la chiave pubblica nel DNS.
  2. Attenda che il record sia visibile ovunque (il TTL, vedere corso DNS lezione 6.1).
  3. Faccia firmare il server con il nuovo selector.
  4. Lasci la vecchia chiave ancora per qualche giorno: la posta già in transito o che viene verificata nuovamente vi fa ancora riferimento.
  5. Revochi la vecchia chiave svuotando p= (v=DKIM1; p=), oppure rimuova il record.

Presso i servizi con record CNAME, è il servizio stesso a occuparsene.

Cosa fa fallire DKIM

  • Il messaggio viene modificato lungo il percorso: una mailing list che inserisce [nomelista] nell'oggetto o aggiunge un piè di pagina, un antivirus che incolla una riga sotto il messaggio, un server di reindirizzamento che converte la formattazione.
  • Chiave errata o troncata nel DNS.
  • Il selector non esiste: un errore di battitura nel nome, oppure selector1._domainkey.example.com.example.com (il nome di dominio duplicato, perché il pannello lo aggiunge già da solo).
  • Chiave revocata (p= vuoto) mentre il server firma ancora con quel selector.

Verificare se funziona

  1. Invii un'email dal servizio verso un indirizzo presso Gmail o Outlook.com.
  2. Apra le intestazioni e cerchi DKIM-Signature: annoti d= e s=.
  3. Guardi in Authentication-Results se compare dkim=pass, e se header.d= è il Suo dominio.
  4. Cerchi il selector: dig TXT s._domainkey.example.com (oppure con uno strumento online). Deve esserci un p= con una chiave lunga, oppure un CNAME che porta a tale record.

Nella pratica: come si presenta in un pannello

Con un pacchetto di hosting di WebOké, DKIM è attivo per impostazione predefinita, con il selector x: il record si chiama x._domainkey.<ilSuodominio>. In DirectAdmin lo trova in Amministrazione DNS; se il Suo DNS è presso un altro fornitore, copi quel record lì. In Mio WebOké la scheda Imposta E-Mail mostra quale valore deve essere presente e se viene trovato. Presso altri fornitori il selector ha un nome diverso (default, mail, dkim), ma lo trova allo stesso modo: nel pannello o nel s= di un messaggio firmato.

Riepilogo

  • DKIM è il controllo che sopravvive al reindirizzamento e che collega ogni servizio al Suo dominio; per il DMARC conta solo una firma con il Suo dominio in d=.
  • Nella DKIM-Signature trova d= (dominio) e s= (selector); la chiave si trova in <s>._domainkey.<d>.
  • Ogni servizio riceve un selector proprio; i record CNAME permettono al servizio di sostituire le chiavi autonomamente. Attivi DKIM con il Suo dominio anche effettivamente presso il servizio.
  • Usi 2048 bit; faccia attenzione alle chiavi troncate durante la copia.
  • Sostituisca una chiave con un nuovo selector e revochi quella vecchia solo in seguito.

Quiz

1. In una DKIM-Signature compare d=mailer.example; s=k1, mentre l'indirizzo Da è info@example.com. Cosa significa questo per il DMARC?



2. Perché servizi come Microsoft 365 usano due record CNAME per DKIM?



3. Dopo aver copiato una chiave DKIM nel Suo DNS, ogni firma fallisce. La chiave nel DNS è lunga 255 caratteri. Qual è la probabile causa?



4. Una mailing list inserisce [membri] davanti all'oggetto. La Sua firma aveva firmato subject. Cosa succede al Suo DKIM presso il destinatario finale?



5. Qual è l'ordine sicuro per sostituire una chiave DKIM?



Esercizio

Esercizio Z4.3: Verificare un selector DKIM. Invii un'email dal Suo dominio (o da un servizio che invia per Suo conto) verso un proprio indirizzo presso un altro fornitore. Apra le intestazioni e inserisca i valori di d= e s= dalla DKIM-Signature, e cosa compare in Authentication-Results accanto a dkim=. Il programma cerca il selector in tempo reale, segue un eventuale CNAME, verifica la chiave (presenza, non vuota, lunghezza) e Le dice se d= è allineato con il dominio che Lei indica come mittente.

Esercizio Z4.3: Verificare un selector DKIM

Prenda d= e s= dall'intestazione DKIM-Signature di un'email del Suo dominio (o di un servizio che invia email per Suo conto).





Quello che inserisce e quello che rileviamo non vengono salvati. Il Suo browser ricorda le Sue risposte e se ha superato l'esercizio. Se ha effettuato l'accesso, conserviamo in I miei corsi solo il fatto che l'esercizio era (quasi) corretto; anche lì può eliminarlo.

Per approfondire

I passaggi descritti in questi articoli valgono per i pannelli di WebOké; presso altri fornitori il funzionamento è simile.

Un momento…

Configuri i suoi domini

Per ogni dominio imposti i nameserver, il collegamento al suo hosting e chi ne diventa l'intestatario.

Caricamento dei suoi domini…