Hemsida » hur » 8 sätt att tweak och konfigurera Sudo på Ubuntu

    8 sätt att tweak och konfigurera Sudo på Ubuntu

    Som de flesta saker på Linux är sudo-kommandot mycket konfigurerbart. Du kan få sudo att köra specifika kommandon utan att fråga om ett lösenord, begränsa specifika användare till bara godkända kommandon, loggkommandon som körs med sudo och mer.

    Sudo-kommandot beteende styrs av filen / etc / sudoers på ditt system. Detta kommando måste redigeras med visudo-kommandot, som utför syntaxkontroll för att säkerställa att du inte oavsiktligt bryter filen.

    Ange användare med Sudo-behörigheter

    Användarkontot du skapar när du installerar Ubuntu är markerat som ett administratörskonto, vilket innebär att det kan använda sudo. Eventuella ytterligare användarkonton du skapar efter installationen kan vara antingen Administratör eller Standard användarkonton - Standardanvändarkonton har inte sudo-behörigheter.

    Du kan styra användarkontotyper grafiskt från Ubuntus användarkontonverktyg. För att öppna den, klicka på ditt användarnamn på panelen och välj Användarkonton eller sök efter Användarkonton i bindestreck.

    Gör Sudo Glömt ditt lösenord

    Som standard kommer sudo att komma ihåg ditt lösenord i 15 minuter efter att du har skrivit det. Det är därför du bara måste skriva ditt lösenord en gång när du utför flera kommandon med sudo i snabb följd. Om du ska låta någon annan använda din dator och du vill att sudo ska be om lösenordet när det körs nästa, kör följande kommando och sudo kommer glömma ditt lösenord:

    sudo-k

    Be alltid om ett lösenord

    Om du hellre vill bli uppmanad varje gång du använder sudo - till exempel om andra personer regelbundet har tillgång till din dator - kan du inaktivera det fullständiga lösenordet.

    Den här inställningen, som andra sudo-inställningar, finns i filen / etc / sudoers. Kör visudo-kommandot i en terminal för att öppna filen för redigering:

    sudo visudo

    Trots sitt namn, gäller det här kommandot till den nyanvändarvänliga nano-redaktören istället för den traditionella vi-redaktören på Ubuntu.

    Lägg till följande rad under de övriga standardinställningarna i filen:

    Standard timestamp_timeout = 0

    Tryck Ctrl + O för att spara filen och tryck sedan på Ctrl + X för att stänga Nano. Sudo kommer nu alltid att be dig om ett lösenord.

    Ändra lösenordstidsavbrott

    För att ange ett annat lösenordsavbrott - antingen en längre som 30 minuter eller en kortare som 5 minuter - följ stegen ovan men använd ett annat värde för tidsstämpel_timeout. Numret motsvarar antalet minuter sudo kommer komma ihåg ditt lösenord för. För att få sudo att komma ihåg ditt lösenord i 5 minuter lägger du till följande rad:

    Standard timestamp_timeout = 5

    Be aldrig om ett lösenord

    Du kan också ha sudo aldrig be om ett lösenord - så länge du är inloggad kommer varje kommando du prefix med sudo att köras med root behörigheter. För att göra detta lägger du till följande rad i din sudoers-fil, där användarnamnet är ditt användarnamn:

    användarnamn ALL = (ALL) NOPASSWD: ALL

    Du kan också ändra% sudo-raden - det vill säga den linje som tillåter alla användare i sudo-gruppen (även känd som administratörs användare) att använda sudo - för att alla administratörs användare inte behöver lösenord:

    % sudo ALL = (ALL: ALL) NOPASSWD: ALL

    Kör specifika kommandon utan lösenord

    Du kan också ange specifika kommandon som aldrig kräver ett lösenord när du kör med sudo. Istället för att använda "ALL" efter NOPASSWD ovan, ange platsen för kommandon. Till exempel kan följande rad låta ditt användarkonto köra kommandona apt-get och shutdown utan ett lösenord.

    användarnamn ALL = (ALL) NOPASSWD: / usr / bin / apt-get, / sbin / shutdown

    Detta kan vara särskilt användbart när du kör specifika kommandon med sudo i ett skript.

    Låt en användare bara köra enbart kommandon

    Medan du kan svarta lista specifika kommandon och förhindra att användare kör dem med sudo, är detta inte särskilt effektivt. Du kan till exempel ange att ett användarkonto inte kan köra avstängningskommandot med sudo. Men det användarkontot kan köra kommandot cp med sudo, skapa en kopia av avstängningskommandot och stänga av systemet med kopian.

    Ett mer effektivt sätt är att vitlista specifika kommandon. Till exempel kan du ge ett tillstånd för standardanvändarkonto för att kunna använda kommandona apt-get och shutdown, men inte mer. För att göra så lägg till följande rad, där standardanvändaren är användarens användarnamn:

    standardanvändare ALL = / usr / bin / apt-get, / sbin / shutdown

    Följande kommando kommer att berätta vad kommandon användaren kan köra med sudo:

    sudo -U standardanvändare -l

    Logging Sudo Access

    Du kan logga in all sudo-åtkomst genom att lägga till följande rad. / var / log / sudo är bara ett exempel; Du kan använda vilken loggfil plats du vill.

    Standard loggfil = / var / log / sudo

    Visa innehållet i loggfilen med ett kommando som den här:

    sudo katt / var / log / sudo

    Tänk på att om en användare har obegränsad sudoåtkomst har den användaren möjlighet att radera eller ändra innehållet i den här filen. En användare kan också komma åt en root prompt med sudo och kör kommandon som inte skulle loggas. Loggfunktionen är mest användbar när den är kopplad till användarkonton som har begränsat åtkomst till en delmängd av systemkommandon.