L'introduzione del comando sudo in Windows 11, a partire dalla build 24H2, segna un'evoluzione significativa nella gestione dei privilegi all'interno dell'ambiente Microsoft. Questo strumento, familiare agli utenti di sistemi basati su Unix e Linux, consente agli amministratori di sistema e agli sviluppatori di eseguire comandi con privilegi elevati direttamente da sessioni CMD, PowerShell o Terminale non privilegiate. Questa integrazione mira a semplificare i flussi di lavoro, riducendo la necessità di avviare manualmente sessioni separate con diritti di amministratore.
Abilitazione di sudo in Windows 11
Per impostazione predefinita, il comando sudo è disabilitato in Windows 11. L'attivazione è un processo semplice e può essere eseguita tramite l'interfaccia grafica delle Impostazioni o tramite il Registro di Sistema.
Metodo 1 - Tramite Impostazioni
Navigare in Impostazioni->Sistema->Per sviluppatori e attivare l'interruttore Abilita sudo.
Metodo 2 - Tramite registro di sistema
Per un'automazione o una configurazione di gruppo, è possibile modificare il Registro di Sistema con il seguente comando:
reg add "HKLM\Software\Microsoft\Windows\CurrentVersion\Sudo" /v "Enabled" /t REG_DWORD /d 1 /f
Principio di Funzionamento e Vantaggi
Tradizionalmente, l'esecuzione di comandi che richiedono privilegi amministrativi in una console non elevata avrebbe generato un errore di "Accesso negato". Ad esempio, tentare di riavviare un servizio Windows con
Restart-Service wsearch
da una sessione PowerShell standard fallirebbe.
![]() |
FIG 2 - Privilegi non sufficienti |
Con sudo, questo scenario cambia radicalmente. Una volta abilitato, l'esecuzione di un comando preceduto da sudo ad esempio
sudo powershell "Restart-Service wsearch"
innesca una richiesta di Controllo Account Utente (UAC). Dopo l'approvazione, il comando viene eseguito in una nuova finestra del terminale (separata dalla sessione corrente) con i diritti amministrativi necessari.
![]() |
FIG 4 - Controllo Account Utente (UAC) |
A differenza del comando runas, sudo non richiede l'inserimento di una password di amministratore direttamente nella riga di comando. La conferma avviene tramite il prompt UAC, che autentica l'elevazione per l'utente corrente senza permettere la selezione di un account utente diverso. Questa implementazione migliora la sicurezza, evitando che le credenziali vengano esposte in testo chiaro o nella cronologia dei comandi.
Il medesimo principio si applica alle sessioni CMD. Tentare
net stop wsearch
da un prompt dei comandi non elevato genererà un "Errore di sistema 5. Accesso negato." L'utilizzo di
sudo net stop wsearch
risolverà l'errore, elevando i privilegi per l'esecuzione del comando.
Prima dell'introduzione di sudo, gli utenti dovevano ricorrere a metodi meno efficienti per eseguire comandi elevati. Ad esempio, lanciare una nuova finestra del Prompt dei comandi con "Esegui come amministratore" o, per PowerShell, utilizzare "Start-Process powershell -Verb runAs".
Sudo semplifica drasticamente questo processo, integrando l'elevazione dei privilegi direttamente nel flusso di lavoro della console esistente.
Modalità di esecuzione di sudo
Sudo per Windows offre tre diverse modalità di esecuzione, configurabili tramite l'applicazione Impostazioni o specificabili direttamente dalla riga di comando, per adattarsi a diverse esigenze di sicurezza e operatività.
Modalità di esecuzione:
- In una nuova finestra: Questa è la modalità predefinita. Quando un comando o un programma viene eseguito tramite sudo, si apre in una nuova finestra, operando con i diritti di amministratore. Da riga di comando eseguire
sudo config --enable forceNewWindow - Con input disabilitato: Considerata l'opzione più sicura. Il comando viene eseguito con privilegi elevati all'interno della finestra corrente, ma senza la capacità di ricevere o richiedere input utente da quella sessione. Questo previene potenziali attacchi di iniezione di input in sessioni elevate. Da riga di comando eseguire
sudo config --enable disableInput - Inline:Questa modalità emula il comportamento del comando sudo sui sistemi Linux e Unix. Il comando elevato viene eseguito nella console corrente e può ricevere input da essa. Sebbene sia l'opzione più comoda per interazioni dirette, è anche quella meno sicura, poiché un processo elevato potrebbe potenzialmente essere manipolato da input non sicuri. Da riga di comando eseguire
sudo config --enable normal
Indipendentemente dalla modalità predefinita configurata, è sempre possibile forzare l'esecuzione di un comando elevato nella console corrente utilizzando l'opzione --inline. Ad esempio:
sudo --inline net stop wsearch
Conclusione
L'integrazione del comando sudo in Windows 11 rappresenta un passo significativo verso la modernizzazione dell'interfaccia a riga di comando di Microsoft. Offrendo un meccanismo flessibile e sicuro per l'elevazione dei privilegi, sudo migliora l'efficienza per sviluppatori e amministratori di sistema, allineando l'esperienza utente a quella offerta da altri sistemi operativi e promuovendo pratiche di sicurezza migliori attraverso l'uso ponderato di UAC. Per un elenco completo delle opzioni e dei parametri supportati, è sufficiente eseguire nel terminale il comando
sudo -h
![]() |
FIG 7 - Visualizza guida |