Domovská » jak » 8 způsobů, jak vyladit a konfigurovat Sudo na Ubuntu

    8 způsobů, jak vyladit a konfigurovat Sudo na Ubuntu

    Stejně jako většina věcí na Linuxu je příkaz sudo velmi konfigurovatelný. Můžete mít sudo spouštět specifické příkazy bez požadavku na heslo, omezit konkrétní uživatele pouze na schválené příkazy, příkazy protokolu spouštěné pomocí sudo a další.

    Chování příkazu sudo je řízeno souborem / etc / sudoers ve vašem systému. Tento příkaz musí být upraven pomocí příkazu visudo, který provádí kontrolu syntaxe, aby nedošlo k náhodnému přerušení souboru.

    Uveďte uživatele s oprávněním Sudo

    Uživatelský účet, který vytvoříte při instalaci Ubuntu, je označen jako účet správce, což znamená, že může používat sudo. Jakékoli další uživatelské účty, které vytvoříte po instalaci, mohou být administrátory nebo standardní uživatelské účty - Standardní uživatelské účty nemají oprávnění sudo.

    Typy uživatelských účtů můžete graficky řídit z nástroje Uživatelské účty Ubuntu. Chcete-li ji otevřít, klikněte na panel uživatele a vyberte Uživatelské účty nebo vyhledejte uživatelské účty v pomlčce.

    Udělej Sudo Zapomeň heslo

    Ve výchozím nastavení si sudo pamatuje heslo po dobu 15 minut po jeho zadání. To je důvod, proč stačí zadat heslo jednou při spuštění několika příkazů se sudo v rychlém sledu. Pokud se chystáte nechat někoho jiného použít váš počítač a chcete, aby sudo požádal o heslo při jeho spuštění, proveďte následující příkaz a sudo zapomene heslo:

    sudo -k

    Vždy se ptáte na heslo

    Pokud byste raději měli být vyzváni pokaždé, když používáte sudo - například, pokud mají ostatní lidé pravidelně přístup k vašemu počítači - můžete zcela zakázat chování při zapamatování hesla.

    Toto nastavení, stejně jako ostatní nastavení sudo, je obsaženo v souboru / etc / sudoers. Spusťte příkaz visudo v terminálu a otevřete soubor pro úpravy:

    sudo visudo

    Navzdory svému jménu je tento příkaz výchozí novým uživatelsky přívětivým nano editorem místo tradičního vi editoru na Ubuntu.

    Přidejte následující řádek pod ostatní řádky výchozí v souboru:

    Výchozí hodnoty timestamp_timeout = 0

    Stisknutím kombinace kláves Ctrl + O uložte soubor a stisknutím klávesy Ctrl + X ukončete aplikaci Nano. Sudo vás nyní vždy vyzve k zadání hesla.

    Změňte časový limit hesla

    Chcete-li nastavit jiný časový limit hesla - buď delší, například 30 minut, nebo kratší, např. 5 minut - postupujte podle výše uvedených kroků, ale použijte jinou hodnotu pro časovou značku timestamp_timeout. Číslo odpovídá počtu minut, které sudo zapamatuje vaše heslo. Chcete-li sudo zapamatovat své heslo po dobu 5 minut, přidejte následující řádek:

    Výchozí hodnoty timestamp_timeout = 5

    Nikdy neptejte se na heslo

    Můžete také mít sudo nikdy nepožádat o heslo - pokud jste přihlášeni, každý příkaz s prefixem sudo se spustí s oprávněním uživatele root. Chcete-li to provést, přidejte následující řádek do souboru sudoers, kde uživatelské jméno je vaše uživatelské jméno:

    uživatelské jméno ALL = (ALL) NOPASSWD: ALL

    Můžete také změnit řádek% sudo - tedy řádek, který umožňuje všem uživatelům ze skupiny sudo (známé také jako uživatelé Administrátora) používat sudo - aby všichni uživatelé Administrátora nevyžadovali hesla:

    % sudo ALL = (ALL: ALL) NOPASSWD: VŠECHNY

    Spuštění specifických příkazů bez hesla

    Můžete také zadat konkrétní příkazy, které při spuštění s sudo nikdy nebudou vyžadovat heslo. Namísto použití "ALL" po NOPASSWD výše určete umístění příkazů. Například následující řádek umožní uživateli uvést příkazy apt-get a shutdown bez hesla.

    uživatelské jméno ALL = (ALL) NOPASSWD: / usr / bin / apt-get, / sbin / shutdown

    To může být obzvláště užitečné při spouštění specifických příkazů se sudo ve skriptu.

    Umožnit uživateli spouštět pouze specifické příkazy

    Zatímco můžete seznamovat s konkrétními příkazy a zabránit jejich spouštění pomocí sudo, není to příliš účinné. Můžete například určit, že uživatelský účet nebude moci spustit příkaz vypnutí pomocí sudo. Tento uživatelský účet však mohl spustit příkaz cp pomocí sudo, vytvořit kopii příkazu vypnutí a vypnout systém pomocí kopie.

    Efektivnějším způsobem je přidávání konkrétních příkazů do seznamu. Můžete například dát standardnímu uživatelskému účtu oprávnění používat příkazy apt-get a shutdown, ale ne více. Chcete-li tak učinit, přidejte následující řádek, kde standarduser je uživatelské jméno uživatele:

    standarduser ALL = / usr / bin / apt-get, / sbin / shutdown

    Následující příkaz nám říká, jaké příkazy může uživatel spustit s sudo:

    sudo -U standarduser -l

    Přihlášení do systému Sudo Access

    Všechny sudo přístupy můžete přihlásit přidáním následujícího řádku. / var / log / sudo je jen příklad; můžete použít libovolné umístění souboru protokolu, které se vám líbí.

    Výchozí nastavení logfile = / var / log / sudo

    Zobrazení obsahu souboru protokolu pomocí příkazu, jako je tento:

    sudo kat / var / log / sudo

    Mějte na paměti, že pokud má uživatel neobmedzený přístup sudo, má tento uživatel možnost odstranit nebo upravit obsah tohoto souboru. Uživatel mohl také přistupovat k příkazu root s příkazem sudo a spustit příkazy, které by nebyly zaznamenány. Funkce protokolování je nejužitečnější při propojení s uživatelskými účty, které mají omezený přístup k podmnožině systémových příkazů.