Si parlava da tempo della possibile introduzione del comando sudo, ampiamente noto nel caso dei sistemi operativi GNU/Linux e Unix-like, anche in ambiente Windows. L’aggiunta sembrava per il momento limitata alle versioni di anteprima di Windows Server 2025, in realtà l’azienda di Redmond ha rotto gli indugi e ha deciso di portare sudo anche in Windows 11.
Il comando sudo è una “colonna portante” dei sistemi Linux: il suo nome sta per “superuser do” e consente agli utenti di eseguire comandi con i privilegi di sicurezza di un altro utente, di solito dell’amministratore di sistema, noto come “root“. Serve ad avviare comandi che richiedono permessi elevati, come l’installazione o la rimozione di software, la configurazione del sistema, l’applicazione di modifiche sul contenuto di directory importanti.
Perché aggiungere il comando sudo in Windows
L’idea di aggiungere sudo a Windows 11 prende ispirazione dal comportamento ben noto su Linux. Si supponga di aprire una finestra del terminale con i privilegi utente normali. Ad un certo punto, però, risulta necessario eseguire un comando avvalendosi di privilegi più ampi.
Anziché chiudere il prompt dei comandi, la finestra di PowerShell o la nuova schermata del terminale di Windows 11, quindi riaprirla scegliendo Esegui come amministratore e facendo apparire la richiesta UAC (User Account Control), si può invocare proprio il nuovo comando sudo ed eseguire le operazioni che servono con un ventaglio di privilegi più ampio.
Il bello è che la versione Microsoft del comando sudo è un prodotto open source: nel repository ufficiale GitHub è pubblicato il codice sorgente dell’applicazione. Non è assolutamente un porting della versione di sudo per sistemi GNU/Linux ma è piuttosto una implementazione, scritta da zero, dagli ingegneri software dell’azienda di Redmond.
Il comando sudo è utilizzabile nelle più recenti versioni di anteprima di Windows 11 e presto sarà inserito nelle release stabili del sistema operativo Microsoft.
Come attivare sudo in Windows 11
Per iniziare a usare sudo in Windows 11, è sufficiente digitare sviluppatori
nella casella di ricerca del sistema operativo quindi selezionare Impostazioni sviluppatore. Tra le varie proposte, immediatamente al di sotto della voce PowerShell, si trova l’opzione Abilita sudo.
In alternativa, si può aprire una finestra del terminale con i privilegi di amministratore quindi digitare quanto segue:
sudo config --enable -normal
Le possibili modalità di utilizzo di sudo in Windows 11
Attualmente, sudo per Windows supporta tre diverse opzioni di configurazione:
- In una nuova finestra (forceNewWindow)
- Input bloccato (disableInput)
- Inline (normal)
Nel primo caso, sudo apre una nuova finestra del terminale con privilegi elevati ed eseguirà il comando in quella finestra. Ad esempio, impartendo l’istruzione sudo netstat -ab
, Windows 11 esegue il comando netstat con l’opzione indicata all’interno di una nuova finestra.
Come si vede in figura, il prompt dei comandi è in questo caso aperto come utente normale. Digitando netstat -ab
, che mostra anche i nomi dei processi e i PID (identificatori di processo) associati alle comunicazioni di rete attualmente in essere, dapprima Windows 11 visualizza l’errore “Per eseguire l’operazione richiesta è necessaria l’esecuzione con privilegi elevati“. Anteponendo il comando sudo
, è possibile eseguire il comando con i diritti amministrativi.
Nella configurazione a input bloccato (o “chiuso”), sudo esegue il comando con privilegi elevati nella finestra corrente ma il nuovo processo non accetterà alcun input da parte dell’utente.
La terza opzione è più simile al comportamento di sudo su altri sistemi operativi. In questa configurazione, sudo per Windows esegue il processo elevato esclusivamente usando la finestra di lavoro corrente (si può abilitarla usando il comando sudo config --enable -normal
presentato in precedenza).
Quando si usa sudo dalla riga di comando, comparire la classica finestra di dialogo UAC che chiede all’utente di confermare l’acquisizione dei privilegi più elevati. Dopo la conferma, il processo invocato tramite sudo è gestito sulla base dell’opzione di configurazione selezionata.
Digitando semplicemente sudo config --enable
, il comando mostra tutti i parametri accettati. Ancora, digitando sudo -h
, si può accedere alla guida.
Era davvero necessario?
Jordi Adoumie (Microsoft) anticipa che nel corso dei prossimi mesi il team di sviluppo lavorerà per comporre la documentazione di sudo per Windows, condividendo maggiori dettagli sulle implicazioni per la sicurezza derivanti dall’uso di sudo nella configurazione Inline.
Già oggi Windows dispone di diverse modalità per consentire agli utenti di acquisire privilegi elevati. In molti, quindi, si chiedono se l’aggiunta del comando sudo “in salsa Microsoft” non possa alla fine tradursi in un’inutile estensione della superficie di attacco. Inevitabilmente, infatti, uno strumento così potente diverrà oggetto di studio da parte di utenti malintenzionati, con il preciso obiettivo di esplorare nuove frontiere per l’acquisizione non autorizzata di privilegi elevati sui sistemi altrui.