Indirizzi di privacy IPv6 o una lista di autorizzazione RDP: scegli il compromesso
Un indirizzo temporaneo rotante rompe una lista di autorizzazione RDP, e disattivare la privacy rende l'host tracciabile. Valuta le alternative prima di sceglierne una.
L'accesso al desktop remoto ha funzionato per un mese, poi la lista di autorizzazione ha smesso di corrispondere senza alcuna ragione visibile. L'host non si era spostato e nulla del firewall era stato modificato. Windows continua a formare indirizzi temporanei IPv6 con identificatori di interfaccia casuali e a ritirarli, quindi l'indirizzo di origine che il server vede in un dato giorno può essere uno che nessuno ha scritto nella regola. Disattivare questo comportamento corregge la corrispondenza e allo stesso tempo trasforma l'host in un identificatore di lunga durata. Valuta le alternative prima di accettare la seconda metà.
Perché la regola ha smesso di corrispondere
L'RFC 4941 descrive gli indirizzi temporanei: l'host crea indirizzi aggiuntivi con identificatori casuali e li ritira, il che impedisce a un osservatore di correlare un host tra una visita e l'altra. Windows implementa questo comportamento, quindi l'indirizzo di origine di ieri non è necessariamente quello di oggi. L'indirizzo prevedibile esiste ancora sull'interfaccia; semplicemente non è quello che preferisce una connessione in uscita.
Ecco perché il guasto sembra intermittente e non totale. La regola corrisponde per un po' dopo la creazione dell'indirizzo, smette di corrispondere quando viene ritirato e ricomincia a corrispondere dopo che qualcuno lo modifica. Il monitoraggio raggruppato per indirizzo di origine e i controlli di licenza legati a un indirizzo host si rompono con lo stesso calendario. Una regola che funziona subito dopo la modifica e fallisce tre settimane dopo è di solito questo, non un ricaricamento del firewall.
Opzione uno: un indirizzo stabile, meno privacy
La riparazione abituale disattiva entrambi i meccanismi di rotazione sull'host: netsh interface ipv6 set privacy state=disabled store=persistent e netsh interface ipv6 set global randomizeidentifiers=disabled store=persistent. Aggiungi store=active se vuoi che la modifica abbia effetto senza attendere un riavvio, e accetta di aver reso l'identificatore prevedibile tra le reti.
Questa prevedibilità è esattamente ciò che le estensioni sono state create per impedire. Un indirizzo che segue l'host dal bar all'ufficio a casa è una chiave di filtro comoda e una chiave di tracciamento altrettanto comoda, e la seconda proprietà sopravvive al ticket che ha chiesto la prima.
Opzione due: consentire un prefisso o un nome
Consentire il /64 invece dell'indirizzo completo mantiene intatta la rotazione e corrisponde a un'affermazione più debole ma spesso onesta: questa macchina è sulla mia rete domestica. Smette di essere sufficiente nel momento in cui quel prefisso contiene host che non ammetteresti, cosa che su una connessione consumer è di solito un insieme più piccolo di quanto la gente supponga. Un nome pubblicato tramite DNS dinamico è più facile da gestire, perché il record segue l'host e la politica si legge come un'identità invece che come un intervallo che cresce ogni volta che si aggiunge un dispositivo.
Entrambe le opzioni richiedono un resolver di cui il server possa fidarsi e un nome che non sia banalmente falsificabile, quindi trattale come una decisione di politica sull'identità e non come una modifica cosmetica alla regola. Annota quale resolver risponde a quel nome, perché la regola è affidabile solo quanto il record che le sta dietro.
Opzione tre: lascia che il tunnel assegni l'indirizzo
Se la connessione attraversa una VPN che controlli, il server può distribuire l'indirizzo dal proprio pool, e la lista di autorizzazione fa riferimento a un valore che sceglie il server invece che a uno che preferisce il client. Funziona bene per i client gestiti e male per tutto ciò che il client può scavalcare, quindi verifica quale lato vince davvero nel tuo deployment.
Spostare la decisione completamente fuori dall'indirizzo, verso un certificato client o un gateway autenticato, è l'opzione che scala, perché smette di dipendere da un valore che il sistema operativo ha il diritto di cambiare.
Scegli tenendo d'occhio il costo del tracciamento
Scrivi le quattro opzioni contro il requisito reale, e scegline una invece di combinarle. Se disattivi comunque la privacy, limitàla all'host che ne ha bisogno, documenta il motivo accanto alla regola e considera l'indirizzamento stabile-privato dell'RFC 7217 dove la piattaforma lo supporta, poiché mantiene un identificatore per prefisso senza esporre quello derivato dall'hardware. Riattiva le estensioni quando la lista di autorizzazione viene sostituita.
Registra la modifica accanto alla regola che supporta. Senza quella nota, l'amministratore successivo trova un host con le estensioni di privacy disattivate e nessuna spiegazione, e le riattiva durante una pulizia.