22Aug
Ako väčšina vecí na systéme Linux je príkaz sudo veľmi konfigurovateľný.Môžete mať sudo spustiť špecifické príkazy bez žiadosti o heslo, obmedziť konkrétnych užívateľov len na schválené príkazy, príkazy denníka spustené pomocou sudo a ďalšie.
Správanie príkazu sudo je riadené súborom sudoers /etc/ 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 povolením 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é vytvoríte po inštalácii, môžu byť buď správcovské alebo štandardné používateľské kontá - Štandardné používateľské účty nemajú oprávnenia sudo.
Typy uží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.
Make Sudo zabudnite 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, keď vykonávate niekoľko 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 po spustení ďalšieho, spustite nasledujúci príkaz a sudo zabudne heslo:
sudo -k
Vždy požiadajte o heslo
Ak steSkôr by ste sa museli pokúsiť zakaždým, keď používate sudo - napríklad, ak iní ľudia majú pravidelne prístup k vášmu počítaču - môžete úplne zakázať správanie pri zapamätávaní hesla.
Toto nastavenie, rovnako ako ostatné nastavenia sudo, je obsiahnuté v súbore sudoers /etc/.Spustite príkaz visudo v termináli na otvorenie súboru na úpravu:
sudo visudo
Napriek svojmu názvu je tento príkaz pred nano editorom namiesto tradičného vi editora na Ubuntu predvolený.
Pridajte nasledujúci riadok pod ostatné riadky Predvolené hodnoty v súbore:
Predvolené hodnoty timestamp_timeout = 0
Stlačte Ctrl + O pre uloženie súboru a stlačením klávesov Ctrl + X zatvorte Nano. Sudo vás teraz vždy vyzve na zadanie hesla.
Zmena časového limitu hesla
Ak chcete nastaviť iný časový limit hesla - buď dlhší ako 30 minút, alebo kratší ako 5 minút - postupujte podľa krokov uvedených vyššie, 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 zapamätal heslo na 5 minút, pridajte nasledujúci riadok:
Predvolená hodnota timestamp_timeout = 5
Nikdy nepýtajte heslo
Môžete tiež mať sudo nikdy nepýtať heslo - ak ste prihlásený, každý príkazpredpona 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:
username ALL =( ALL) NOPASSWD: ALL
Môžete tiež zmeniť riadok% sudo - teda riadok, ktorý umožňuje všetkým používateľomsudo group( tiež známy ako administrátor) používať sudo - aby všetci užívatelia Administrátora nevyžadovali heslá:
% sudo ALL =( ALL: ALL) NOPASSWD: VŠETKY
Spustiť špecifické príkazy bez hesla
Môžete tiež špecifikovať špecifické príkazypri spustení systému sudo nikdy nebude vyžadovať heslo. Namiesto použitia "ALL" po NOPASSWD vyššie, 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/ vypnutie
Toto 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 účinné.Mohli by ste napríklad špecifikovať, že používateľský účet nebude môcť spustiť príkaz vypnutia pomocou sudo. Ale tento používateľský účet mohol spustiť príkaz cp pomocou sudo, vytvoriť kópiu príkazu vypnutia a vypnúť systém pomocou kópie.
Efektívnejším spôsobom je zostavenie špecifických príkazov na bielom. Môžete napríklad dať Štandardnému používateľskému účtu povolenie na použitie príkazov apt-get a shutdown, ale nič viac. Ak to chcete urobiť, pridajte nasledujúci riadok, kde je štandardným užívateľským menom používateľa:
standarduser ALL = /usr/bin/ apt-get, /sbin/ vypnutie
Nasledujúci príkaz nám povie, aké príkazy môže používateľ spustiť pomocou sudo:
sudo -U standarduser -l
Prihlásenie Sudo Access
Môžete protokolovať všetok prístup sudo 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é logfile = /var/log/ sudo
Pozrite si obsah súboru protokolu pomocou príkazu, ako je tento:
sudo mačka /var/log/ sudo
Majte na pamäti, že ak používateľ má 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 spúšťať príkazy, ktoré by neboli zaznamenané.Funkcia zaznamenávania je veľmi užitočná v spojení s používateľskými účtami, ktoré majú obmedzený prístup k podmnožine systémových príkazov.