Vyskúšal som nové sudo vo Windows 11, potom som sa vrátil k open-source verzii
Keď Microsoft oznámil natívnu podporu sudo pre Windows 11, bol som nadšený sľubom funkčnosti podobnej Linuxu na Windows. Keďže som si vytvoril svoju vysnívanú vývojársku konfiguráciu na Windows, táto funkcia mi mala ušetriť veľa času a starostí—kým to tak nebolo.
Po dvoch desaťročiach klikania pravým tlačidlom myši na „Spustiť ako správca“ alebo manipulovania s viacerými terminálovými oknami sa myšlienka jednoducho predponať akýkoľvek príkaz slovom sudo zdala skvelá. Povzbudil som sa a zapol to, predpokladajúc, že tým nahradím Gsudo. Implementácia Microsoftu je však, hoci technicky funkčná, ďaleko od toho, čo ponúka open-source Gsudo.
Sľub sudo na Windows
Microsoft si požičiava osvedčenú funkciu pre pokročilých používateľov z Linuxu
Implementácia sudo od Microsoftu prichádza so skutočne dobrými zámermi. Ponúka tri režimy konfigurácie:
- Nové okno: Podobné tradičnému spusteniu
- Vstup zakázaný: Spustené s právami administrátora v aktuálnom okne, ale nebude prijímať vstupy
- Inline: Podobné príkazu sudo v Linuxe, spúšťa príkazy s vyššími právami vo vašej aktuálnej konzolovej relácii.
Režim inline je to, čo väčšina používateľov Linuxu očakáva. Napíšete sudo nasledované príkazom a ten sa spustí s administrátorskými právami vo vašom aktuálnom termináli. Dostanete výsledky bez toho, aby ste opúšťali svoj pracovný tok alebo sa museli prepínať medzi viacerými terminálmi. Používanie sudo na Windows sa ukázalo byť užitočnejšie, než som si myslel.
Ale obmedzenia sa prejavia okamžite. Windows sudo podporuje iba zvýšenie práv na administrátora, čo znamená, že nemôžete spúšťať príkazy ako iní používatelia, ako je to možné s Linux sudo. Neexistuje súbor sudoers, ktorý by umožňoval kontrolu nad tým, kto môže čo robiť. Každé zvýšenie práv tiež spustí výzvu UAC, čo dáva zmysel z hľadiska bezpečnosti, ale ruší plynulý zážitok, ktorý majú používatelia Linuxu pri ukladaní hesiel.
Sama funkcia je skrytá hlboko v aplikácii Nastavenia Windows. Nájdete ju v sekcii Pre vývojárov v nastaveniach systému. To naznačuje, že Microsoft ju vníma skôr ako pohodlie pre vývojárov než ako základnú systémovú utilitu.
Gsudo robí to, čo sudo nedokáže
Open-source implementácia, ktorá inšpirovala prídavok od Microsoftu, je stále lepšia
Gsudo, open-source alternatíva od Gerarda Grignoliho, poskytuje funkcie sudo na Windows už dávno predtým, než sa Microsoft rozhodol konať. Vývoj a používanie prebieha už dlhšie, čo znamená, že ide o zrelšiu implementáciu. S aktualizáciami Windows Terminal od Microsoftu, ktoré ho nenápadne robia neuveriteľným, si zaslúži správnu implementáciu sudo.
Na začiatok ponúka ukladanie poverení, takže nebudete neustále klikať na výzvy UAC. Môžete ho tiež nakonfigurovať tak, aby si zapamätal oprávnenia na nastaviteľnú časovú dobu.
Rozdiel vo funkciách je tiež značný. Gsudo funguje na Windows 10 a starších verziách Windows 11, nielen na 24H2. Podporuje príkazy gsudo aj sudo (aj keď na 24H2), hoci na Windows 11 24H2 by ste mali používať radšej gsudo, aby ste sa vyhli zmätkom. Gsudo sa tiež elegantne integruje s PowerShellom, CMD, WSL a Windows Terminalom. Môžete ho dokonca použiť na zvýšenie práv celej relácie shellu alebo vytvoriť administrátorské záložky vo Windows Terminal jednoducho úpravou profilov.
Kde open-source gsudo stále vedie
Rýchlejšie pracovné procesy, lepšia spätná väzba a menej prekvapení
Dokonca aj samotný inštalačný proces sa medzi týmito dvoma líši. Sudo môžete na Windows povoliť cez nastavenia alebo spustením nasledujúceho príkazu:
sudo config --enable normalTo je všetko. Žiadna prispôsobenie a žiadne pokročilé možnosti. Gsudo, na druhej strane, sa inštaluje jedným príkazom Winget nasledovne:
winget install gerardog.gsudoPo nainštalovaní ponúka rozsiahle možnosti konfigurácie cez príkazový riadok a dokonca aj súbor nastavení JSON, ktorý môžete použiť na replikáciu svojho nastavenia naprieč systémami.
Pokiaľ ide o používateľskú skúsenosť, Microsoft jasne uvádza, že inline režim sudo môže byť "vektorom eskalácie privilégií", ak je nesprávne používaný. Režim s vypnutým vstupom je bezpečnejší, ale znevýhodňuje účel interaktívneho shellu. Prístup Gsudo pôsobí zralejšie, pretože používa rovnaké mechanizmy UAC a zároveň pridáva rozumné predvolené nastavenia a cache, ktoré neobetujú bezpečnosť kvôli pohodliu.
Implementácia Microsoftu je teoreticky bezpečnejšia, pretože neukladá poverenia do vyrovnávacej pamäte. Avšak vytvára bod trenia, ktorý vedie k zlým návykom. Ukladanie do vyrovnávacej pamäte v Gsudo je nastaviteľné a časovo obmedzené, čo prináša lepšiu rovnováhu. Navyše, Gsudo je transparentné ohľadom svojho bezpečnostného modelu, zatiaľ čo varovania Microsoftu o eskalácii oprávnení v režime inline pôsobia, akoby kryli obmedzenia dizajnu.
Prečo som sa nakoniec rozhodol vrátiť
Malé frustrácie, ktoré sa počas každodenného používania hromadia
Implementácia sudo od spoločnosti Microsoft predstavuje dôležitý pokrok. Pre bežných používateľov, ktorí občas potrebujú spustiť ipconfig /flushdns alebo príkazové nástroje, keď Windows zlyhá, je úplne postačujúca a nevyžaduje žiadny softvér tretích strán. Fakt, že je zabudovaná a zapnutá jednoduchým prepínačom, ju robí dostupnou pre každého.
Ale prístupnosť nie je to isté čo moc. Gsudo chápe, že používatelia príkazového riadku si vytvárajú svalovú pamäť okolo svojich nástrojov. Rešpektuje, že niekedy je potrebné povýšiť celý proces, nie len jeden príkaz. Uznáva, že zadávať heslo päťkrát za dve minúty nie je bezpečnosť — je to nepríjemnosť, ktorá učí používateľov vypínať bezpečnostné funkcie.
Okrem toho otvorená povaha Gsudo znamená, že sa vyvíja podľa potrieb používateľov, nie podľa korporátnych harmonogramov. Keď komunita potrebovala lepšiu integráciu s PowerShellom, objavila sa. Keď sa stal Windows Terminal populárnejším, Gsudo sa prispôsobilo. Implementácia sudo od Microsoftu pôsobí momentálne ako funkcia len na papieri, technicky prítomná, ale nedostatočná pre vážnych používateľov.
Windows sudo stále pôsobí nedokončene
Sľubná funkcia, ktorá potrebuje viac vylepšení
Ak ste bežný používateľ zvedavý na sudo vo Windows, vyskúšajte najskôr vstavanú verziu. Je to bezpečný úvod do zvyšovania oprávnení bez opustenia vašej komfortnej zóny. Ale ak žijete v termináli—ak vaše pracovné postupy zahŕňajú neustále prepínanie medzi používateľskými a administrátorskými kontextami, ak skriptujete nasadenia, ak spravujete systémy—preskočte experiment a nainštalujte Gsudo. Vaše svalové pamäť vám poďakuje a produktivita sa zvýši.
Niekedy komunita open-source stále lepšie rozumie potrebám používateľov ako dodávateľ platformy. Open-source softvér nemusí byť vždy lepšou voľbou, ale v tomto prípade rozhodne je.




