Så om root kan göra allt, vad är sudo och varför behöver vi sudo-användare på vår Debian?
Vad är Sudo?
Sudo eller "superanvändare gör" är en uppsättning behörigheter som en administratör / root kan ge andra användare så att de också kan utföra några av de auktoriserade åtgärderna på Debian, samtidigt som de höga säkerhetsnivåerna och behörigheten i systemet bibehålls.
Ett sätt att ge behörighet åt användare kan helt enkelt göras genom att dela rotlösenordet med dem utan att komma in i hela sudo-saken, men Linux har sina skäl:
- Sudo ger tillfälliga privilegier till användare som kan tas bort när som helst med roten. Om vi istället hade delat vårt root-lösenord krävde det att vi ändrade det när behörigheterna skulle avslutas.
- Att arbeta som root hela tiden är inte en bra säkerhetspraxis eftersom man felaktigt kan röra med känsliga systeminställningar. Så det är bättre att byta till sudo och sedan tillbaka när en begränsad operation är klar.
- Kommandona som utförs som sudo loggas alla tillsammans med användarnamnet som körde dem. Detta säkerställer ansvarsskyldighet och granskning för alla sådana användare
I den här artikeln kommer vi att förklara hur du kan göra följande på ett Debian 10 Buster-system:
- Ge sudo-privilegium till en användare
- Använd sudo när det har beviljats
- Ta bort sudo-behörighet från en användare
- Kontrollera vilka användare som har sudo-rättigheter i systemet
Notera: Observera att endast en auktoriserad användare kan utföra alla dessa åtgärder på Debian.
Att ge Sudo privilegium till en användare
De flesta Debian-installationer levereras inte med sudo-verktyget installerat som standard. Därför installerar vi först den på vår Debian-som administratör. Öppna Terminal-applikationen genom sökfältet Application Launcher och logga in som root genom följande kommando:
$ su -
Systemet kommer att fråga dig lösenordet för root; ger vilken, kommer du att vara inloggad som root.
Kör nu följande kommandon för att installera sudo på ditt system:
# apt-get-uppdatering# apt-get install sudo
Sudo-verktyget ska nu installeras på din Debian.
Filen / etc / sudoers innehåller en lista över användare som har sudo-behörigheter i systemet. Även om det är en textfil rekommenderar vi inte att du öppnar den i någon av de tillgängliga textredigerarna. Ett litet misstag kan kosta en användare åtkomst till sudo-rättigheter för alltid.
Låt oss därför använda det mycket föredragna och säkra sättet att redigera sudoers-filen genom att köra följande kommando:
# visudoDetta öppnar sudoers-filen i ett säkert läge. Leta reda på den del av filen som är markerad i följande skärmdump och lägg sedan till följande rad:
% användare ALL = (ALL: ALL) ALL
Jag har lagt till en användare med namnet “sana” som en sudo-användare. Avsluta filen genom att trycka på Ctrl + X. Ange sedan Y för att spara den modifierade filen.
Nu är användaren markerad som en sudo-användare och kan utföra många privilegierade åtgärder på din Debian.
Hur man använder Sudo när det beviljas
Logga in som en användare som får sudo-rättigheter på Debian och öppna sedan Terminal-applikationen. Låt oss nu verifiera sudo-inloggningen och även om vi kan utföra någon av myndighetsbegränsade operationer.
Om du anger följande kommando för att installera VLC-spelaren får du felet som visas på skärmdumpen:
$ apt-get install vlc
Anledningen här är att endast en auktoriserad användare (root eller sudo) får lägga till och ta bort programvara på Debian. Därför kommer vi att köra samma kommando som sudo nu:
$ sudo apt-get install vlcEftersom en sudo-användare kör det här kommandot kommer de att bli ombedda att ange sitt eget lösenord.
Efter att ha verifierats som sudo börjar installationsprocessen - som visas ovan.
Hur man tar bort Sudo Privilege från en användare
Processen att ta bort en användare från sudoers-listan är lika enkel som att lägga till en användare. Som root eller som en sudo-användare, öppna sudoers-filen enligt följande:
# visudoEller,
$ sudo visudoTa sedan bort eller kommentera raden som markerar användaren som sudo.
Spara filen och den angivna användaren känns inte längre igen av systemet som en auktoriserad sudo-användare.
Hur man kontrollerar vilka användare som har Sudo-privilegium i systemet
Det är en bra ledningskontroll att då och då se vilka användare som har beviljats sudorättigheter i ett system. Det hjälper till att bestämma vem sudo-status ska behålla och vem som ska släppa taget. Det vi letar efter är ett sätt att lista medlemmarna i gruppen 'sudo'.
Följande användning av Linux getent-kommandot gör det möjligt för en administratör att kontrollera vilka användare som har sudo-behörigheter på din Debian:
# getent grupp sudo
Om du vill kontrollera om en viss användare är medlem i sudogruppen kan du använda kommandot Linux-grupper enligt följande:
# sudogrupper [användarnamn]
Efter att ha läst den här artikeln kommer du inte bara att kunna skilja på termerna sudo, root, Administrator, supervisor, utan också hantera säkert vilka du vill ge sudo-rättigheter till, på din Debian.