8 spôsobov, ako vylepšiť a konfigurovať Sudo na Ubuntu
Rovnako ako väčšina vecí na Linuxe, príkaz sudo je veľmi konfigurovateľný. Môžete mať sudo spustiť špecifické príkazy bez žiadosti o heslo, obmedziť konkrétnych používateľov iba na schválené príkazy, príkazy denníka spustené pomocou sudo a ďalšie.
Správanie príkazu sudo je riadené súborom / etc / sudoers vo vašom systéme. Tento príkaz musí byť upravený pomocou príkazu visudo, ktorý vykoná kontrolu syntaxe, aby ste nepoškodili súbor.
Zadajte používateľov s oprávneniami Sudo
Používateľský účet, ktorý vytvoríte pri inštalácii Ubuntu, je označený ako účet správcu, čo znamená, že môže používať sudo. Akékoľvek ďalšie používateľské účty, ktoré ste vytvorili po inštalácii, môžu byť buď správcovské alebo štandardné používateľské účty - Štandardné používateľské účty nemajú oprávnenia sudo.
Typy používateľských účtov môžete ovládať graficky z nástroja Ubuntu User Accounts. Ak ju chcete otvoriť, kliknite na svoje používateľské meno na paneli a vyberte položku Užívateľské kontá alebo vyhľadajte používateľské kontá v pomlčke.
Urob si sudo zabudnúť heslo
Predvolene si sudo pamätá vaše heslo 15 minút po jeho zadaní. To je dôvod, prečo zadávate svoje heslo len raz pri vykonávaní viacerých príkazov pomocou sudo v rýchlej postupnosti. Ak sa chystáte nechať niekoho iného používať váš počítač a chcete, aby sudo požiadal o heslo pri spustení ďalšieho, spustite nasledujúci príkaz a sudo zabudne vaše heslo:
sudo -k
Vždy sa opýtajte na heslo
Ak by ste radšej mali byť vyzvaní zakaždým, keď použijete sudo - napríklad, ak pravidelne majú prístup k počítaču iní ľudia - môžete úplne zakázať správanie pri zapamätávaní hesla.
Toto nastavenie, rovnako ako ostatné nastavenia sudo, je obsiahnuté v súbore / etc / sudoers. Spustite príkaz visudo v termináli a otvorte súbor na úpravu:
sudo visudo
Napriek svojmu názvu je tento príkaz pred nano editorom namiesto tradičného vi editora na Ubuntu.
Pridajte nasledujúci riadok pod ostatné riadky Predvolené v súbore:
Predvolené hodnoty timestamp_timeout = 0
Stlačením klávesov Ctrl + O uložte súbor a stlačením klávesov Ctrl + X zatvorte Nano. Sudo vás teraz vždy vyzve na zadanie hesla.
Zmeňte časový limit hesla
Ak chcete nastaviť iný časový limit hesla - buď dlhší ako 30 minút, alebo kratší čas ako 5 minút - postupujte podľa vyššie uvedených krokov, ale použite inú hodnotu pre časovú značku timestamp_timeout. Číslo zodpovedá počtu minút, ktoré sudo pamätá na vaše heslo. Aby sudo pamätal heslo na 5 minút, pridajte nasledujúci riadok:
Predvolené hodnoty timestamp_timeout = 5
Nikdy nepýtajte heslo
Môžete tiež mať sudo nikdy nepýtať heslo - ak ste prihlásený, každý príkaz s prefixom sudo sa spustí s oprávneniami root. Ak to chcete urobiť, pridajte do súboru sudoers nasledujúci riadok, kde je vaše používateľské meno:
používateľské meno ALL = (ALL) NOPASSWD: ALL
Môžete tiež zmeniť riadok% sudo - to je riadok, ktorý umožňuje všetkým používateľom v skupine sudo (tiež známy ako používatelia Administrátora) použiť sudo - aby všetci užívatelia Administrátora nevyžadovali heslá:
% sudo ALL = (ALL: ALL) NOPASSWD: VŠETKY
Spúšťať špecifické príkazy bez hesla
Môžete tiež určiť špecifické príkazy, ktoré pri spustení sudo nikdy nebudú vyžadovať heslo. Namiesto použitia "ALL" po nadpise NOPASSWD zadajte umiestnenie príkazov. Napríklad nasledujúci riadok umožní vášmu používateľskému účtu spustiť príkazy apt-get a vypnutie bez hesla.
používateľské meno ALL = (ALL) NOPASSWD: / usr / bin / apt-get, / sbin / shutdown
To môže byť obzvlášť užitočné pri spustení špecifických príkazov pomocou sudo v skripte.
Povoliť používateľovi, aby spustil iba špecifické príkazy
Zatiaľ čo môžete vylúčiť konkrétne príkazy a zabrániť ich spúšťaniu pomocou sudo, nie je to veľmi efektívne. Mohli by ste napríklad špecifikovať, že používateľský účet nebude môcť spustiť príkaz na vypnutie pomocou sudo. Ale tento používateľský účet mohol spustiť príkaz cp pomocou sudo, vytvoriť kópiu príkazu shutdown a vypnúť systém pomocou kópie.
Efektívnejším spôsobom je zostať na bielom konkrétne príkazy. Môžete napríklad dať štandardnému užívateľskému účtu povolenie na použitie príkazov apt-get a shutdown, ale nie viac. Ak to chcete urobiť, pridajte nasledujúci riadok, kde je štandardným užívateľským menom používateľa:
štandarduser ALL = / usr / bin / apt-get, / sbin / shutdown
Nasledujúci príkaz nám povie, aké príkazy môže používateľ spustiť pomocou sudo:
sudo -U štandardizér -l
Zaznamenávanie prístupu Sudo
Všetky sudo prístupy môžete prihlásiť pridaním nasledujúceho riadku. / var / log / sudo je len príklad; môžete použiť ľubovoľné miesto súboru denníka, ktoré sa vám páči.
Predvolené sú protokoly logfile = / var / log / sudo
Zobrazte obsah súboru denníka príkazom ako je tento:
sudo mačka / var / log / sudo
Majte na pamäti, že ak má používateľ neobmedzený prístup sudo, má tento používateľ možnosť odstrániť alebo upraviť obsah tohto súboru. Používateľ by tiež mohol pristupovať k koreňovej výzve pomocou sudo a spustiť príkazy, ktoré by neboli zaznamenané. Funkcia zaznamenávania je veľmi užitočná, keď je spojená s používateľskými účtami, ktoré majú obmedzený prístup k podmnožine systémových príkazov.