Verso un Windows senza NTLM: IAKerb, LocalKDC e il futuro dell’autenticazione
Negli ambienti Windows, l’autenticazione non è solo un dettaglio tecnico ma un meccanismo che definisce la fiducia nei servizi e nei dispositivi. Per decenni il protocollo NT LAN Manager (NTLM) ha rappresentato il “piano B”: una soluzione di ripiego quando il metodo consigliato, Kerberos, non era disponibile. Negli ultimi mesi Microsoft ha iniziato un percorso di modernizzazione che mira a ridurre, fino a eliminare, la dipendenza da NTLM introducendo due componenti chiave: IAKerb e Local KDC.
L’obiettivo di questo articolo è spiegare perché NTLM è stato così importante, cosa offre Kerberos in più e come le nuove funzionalità cambieranno la gestione dell’autenticazione. Per chi amministra infrastrutture Active Directory (AD), si tratta di un cambiamento radicale che va preparato oggi.
Perché NTLM è ancora qui
NTLM è nato come protocollo challenge/response per autenticare utenti e computer su reti Windows e per sistemi standalone. Ne abbiamo parlato tantissimo qui su ICTPower. La documentazione di Microsoft ricorda che NTLM fornisce autenticazione, integrità e confidenzialità alle applicazioni ed è usato per autenticare utenti e computer in domini Windows o su sistemi isolati. Le credenziali NTLM sono basate sulla combinazione di dominio, nome utente e un hash a senso unico della password. La procedura non invia la password in chiaro: il server sfida il client con un numero casuale, il client calcola una risposta con l’hash della password e il controller di dominio verifica che la risposta sia corretta.
NTLM è rimasto vitale perché risolve alcuni casi in cui Kerberos, per come è stato concepito, non è adatto:
-
Account locali: le macchine non appartenenti a un dominio usano solo NTLM per l’autenticazione.
-
Assenza di connettività diretta al controller di dominio: se il client non può raggiungere un KDC, Kerberos non riesce a emettere il ticket.
-
Applicazioni legacy: molti software invocano direttamente NTLM invece di usare la modalità Negotiate, che dovrebbe scegliere Kerberos dove possibile.
-
Accessi tramite indirizzi IP: la risoluzione basata su Service Principal Name (SPN) richiede nomi DNS; chi accede tramite IP spesso ricade su NTLM.
Per anni le aziende hanno preferito accettare questo compromesso piuttosto che mappare e correggere tutte le dipendenze. NTLM è quindi diventato un protocollo invisibile: se qualcosa non funziona con Kerberos, il sistema ripiega su NTLM e tutto continua a funzionare, nascondendo i problemi.
I limiti di NTLM e i vantaggi di Kerberos
Kerberos è il protocollo di autenticazione raccomandato da Microsoft. Come spiega la documentazione tecnica, Windows implementa la versione 5 di Kerberos, integra estensioni per l’uso di chiavi pubbliche, il trasporto di dati di autorizzazione e la delega. Il KDC è integrato nel controller di dominio e usa il database di Active Directory Domain Services come archivio degli account. Il modello Kerberos consente alcuni vantaggi chiave:
-
Delegated authentication: un servizio frontend può impersonare il client quando accede a un backend, cosa che NTLM non permette senza autenticarsi nuovamente.
-
Single signon: l’utente o il servizio si autentica una sola volta e usa i ticket per accedere ad altre risorse nel dominio senza nuove richieste di credenziali.
-
Efficienza: con NTLM ogni autenticazione richiede una comunicazione con il controller di dominio; Kerberos usa ticket rinnovabili e riduce le comunicazioni, tranne quando è necessario validare un PAC (Privilege Attribute Certificate).
-
Mutual authentication: Kerberos permette a ciascuna parte di verificare l’identità dell’altra; NTLM, invece, presuppone la genuinità del server e non consente al client di verificarne l’identità. In un’ottica zero trust, continuare a usare un protocollo che dà per scontato che il server sia legittimo appare contraddittorio.
Che cosa sono IAKerb e Local KDC
NTLM resta un’opzione solo perché in alcuni scenari Kerberos non può funzionare. Le funzionalità IAKerb e Local KDC nascono proprio per colmare queste lacune.
-
IAKerb (Initial and Pass Through Kerberos): consente al client di completare l’autenticazione Kerberos anche quando non può contattare direttamente un KDC. In pratica il server applicativo si comporta da proxy, inoltrando al KDC la richiesta del client. Il server non ottiene la password o l’hash: passa soltanto i messaggi Kerberos, così il client riceve comunque un ticket valido. Questo meccanismo evita il fallback automatico a NTLM quando un controller di dominio non è raggiungibile.
-
Local KDC: affronta il problema degli account locali e degli ambienti non basati su dominio. Introduce un KDC locale che permette di usare Kerberos per l’autenticazione ai servizi locali senza la necessità di comunicare con un controller di dominio. In questo modo, scenari che oggi usano NTLM (perché l’account non è nel dominio) potranno sfruttare ticket Kerberos.
Queste funzionalità sono disponibili nelle versioni Insider Preview di Windows 11 e Windows Server 2025, ma rappresentano un primo assaggio di un cambiamento più ampio. Microsoft ha annunciato che l’autenticazione NTLM di rete verrà disabilitata per impostazione predefinita in future major release. Nel frattempo, viene resa disponibile una fase di audit e di transizione per aiutare le organizzazioni a mappare le dipendenze.
Audit e mappatura delle dipendenze NTLM
La prima tappa del percorso è scoprire dove NTLM viene ancora utilizzato. Microsoft suggerisce di non disabilitare NTLM all’improvviso, ma di avviare il monitoraggio e l’audit. Ecco alcuni passaggi pratici per identificare le dipendenze.
Abilitare i log operativi di NTLM
-
Aprire una Elevated PowerShell su un Domain Controller o su un client di test.
-
Abilitare il log operativo NTLM:
|
1 2 3 |
# Abilita il canale di log operazionale per NTLM wevtutil sl Microsoft-Windows-NTLM/Operational /e:true |

Figura 1 – Gestione log
-
Per verificare quali eventi sono stati registrati, eseguire:
|
1 2 3 |
Get-WinEvent -LogName "Microsoft-Windows-NTLM/Operational" | Select-Object TimeCreated, Id, Message |

Figura 2 – Verifica log
Gli eventi includono dettagli sul tipo di autenticazione NTLM e sull’host che l’ha richiesta. In base agli ID, è possibile distinguere tra autenticazioni in ingresso e in uscita, autenticazioni locali o remote e scenari di fallback.
Analizzare gli eventi di sicurezza
Gli eventi della log Security forniscono ulteriori indicazioni. Ad esempio, l’evento 4776 indica la validazione di un account da parte del controller di dominio e può essere filtrato per vedere quali account usano NTLM:
|
1 2 3 |
Get-WinEvent -FilterHashtable @{ LogName = 'Security'; Id = 4776 } | Select-Object TimeCreated, Message |

Figura 3 – Verifica log
Per individuare dove NTLM viene usato per l’accesso a risorse, è utile filtrare gli eventi 4624 in cui il campo Authentication Package è NTLM:
|
1 2 3 4 |
Get-WinEvent -FilterHashtable @{ LogName = 'Security'; Id = 4624 } | Where-Object { $_.Message -match 'Authentication Package:\s+NTLM' } | Select-Object TimeCreated, Message |

Figura 4 – Verifica log
Queste analisi rivelano quali server, dispositivi o applicazioni sono ancora legati a NTLM e consentono di preparare un piano di migrazione.
Simulare l’uso di Kerberos e NTLM su una share SMB
Un modo semplice per capire come Kerberos e NTLM si comportano è testare l’accesso a una share SMB:
-
Configurare un server membro FS01.lab.local e creare una share \\FS01.lab.local\share.
-
Dal client, svuotare il ticket cache Kerberos:
|
1 2 |
klist purge |

Figura 5 – Eliminazione ticket
-
Accedere alla share utilizzando il nome DNS (Kerberos dovrebbe essere usato):
|
1 2 |
dir \\FS01.lab.local\FS |

Figura 6 – Verifica share
- Richiedere esplicitamente il ticket
|
1 2 |
klist get cifs/FS01.lab.local |

Figura 7 – Richiesta ticket esplicita
-
Ripetere l’accesso usando l’indirizzo IP, ad esempio \\192.168.57.5\\share. Se SPN o DNS non sono configurati correttamente, l’autenticazione potrebbe ricadere su NTLM; i log operativi mostreranno un evento corrispondente. In infrastrutture ben configurate, l’accesso tramite IP è una delle principali cause di fallback su NTLM.
Prepararsi a IAKerb e Local KDC
Avendo mappato le dipendenze, è possibile pianificare l’adozione delle nuove funzionalità. Anche se IAKerb e Local KDC sono ancora in anteprima, vale la pena comprendere come influenzeranno l’infrastruttura.
Testare IAKerb in laboratorio
In un ambiente di test con Windows 11 Insider e Windows Server 2025 Insider:
-
Configurare un controller di dominio e un client in una rete segmentata in cui il client non può raggiungere il controller di dominio.
-
Abilitare IAKerb tramite criteri di gruppo o policy locali (le build Insider includono opzioni sperimentali). Questa impostazione consente al server applicativo di fungere da proxy per la richiesta Kerberos.
-
Verificare con klist che il client riceva comunque un ticket Kerberos e che nei log non vi siano eventi NTLM.
IAKerb non richiede modifiche alle applicazioni se usano SSPI e il package Negotiate, perché Kerberos resta la prima scelta. Tuttavia, soluzioni che fanno riferimento diretto al pacchetto NTLM potrebbero non sfruttare IAKerb; è quindi opportuno coinvolgere i fornitori di software per garantire la compatibilità.
Valutare Local KDC per account locali e ambienti ibridi
Local KDC punta a rimpiazzare NTLM per l’autenticazione di account locali. In pratica offre un servizio KDC integrato nel sistema operativo, che emette ticket Kerberos per gli account locali. Questo è utile per:
-
Ambientazioni workgroup: più macchine senza dominio potranno autenticarsi tramite Kerberos invece di NTLM.
-
Server isolati: servizi come IIS, SQL Server o file server locali potranno autenticare gli utenti locali con ticket anziché con challenge/response.
-
Dispositivi edge: apparecchiature industriali o OT, spesso escluse dal dominio, potranno usare Kerberos tramite un KDC locale.
Local KDC sarà particolarmente utile negli ambienti ibridi e IoT, dove la connessione al controller di dominio non è sempre disponibile.
Eliminare NTLM: raccomandazioni
Microsoft intende disabilitare NTLM per impostazione predefinita nelle future versioni di Windows. Questo cambiamento non avverrà da un giorno all’altro, ma le organizzazioni dovranno farsi trovare pronte. Alcuni suggerimenti concreti:
-
Usare il pacchetto Negotiate: gli sviluppatori e i vendor dovrebbero assicurarsi che le applicazioni invocano Negotiate anziché NTLM diretto. La documentazione avverte esplicitamente che le applicazioni non dovrebbero accedere al pacchetto NTLM, ma delegare a Negotiate la scelta del protocollo.
-
Correggere SPN e DNS: il fallback su NTLM per accessi tramite IP spesso deriva dall’assenza di SPN corretti. Registrare SPN e usare nomi DNS è fondamentale.
-
Rimuovere la dipendenza da account locali dove possibile: spostare i servizi su account di servizio gestiti o account di dominio riduce la necessità di NTLM.
-
Pianificare la compatibilità delle applicazioni: coinvolgere i fornitori di software per verificare che le applicazioni supportino Kerberos, IAKerb e Local KDC. Le soluzioni che richiedono NTLM dovranno essere aggiornate o sostituite.
Conclusione
NTLM non è mai stato un protocollo particolarmente amato, eppure ha svolto un ruolo indispensabile negli ambienti Windows. Kerberos offre caratteristiche nettamente superiori: efficienza, single signon e autenticazione reciproca. Tuttavia, la realtà operativa ha mantenuto NTLM vivo perché esistevano scenari in cui Kerberos non era praticabile.
IAKerb e Local KDC sono la risposta di Microsoft: estendere Kerberos agli scenari in cui falliva, in modo da togliere a NTLM ogni giustificazione tecnica. Il viaggio verso un Windows “senza NTLM” è iniziato. Per le aziende e gli amministratori, oggi è il momento di osservare, mappare e aggiornare. NTLM sparirà dalle nuove installazioni, ma le infrastrutture rimarranno complicate per anni. Prepararsi adesso significa evitare sorprese domani e costruire un’autenticazione più sicura, coerente con i principi di zero trust.
Stay tuned!