22Aug

8 måter å tweak og konfigurere Sudo på Ubuntu

click fraud protection

Som de fleste ting på Linux er sudo-kommandoen veldig konfigurerbar. Du kan få sudo til å kjøre bestemte kommandoer uten å be om et passord, begrense bestemte brukere til bare godkjente kommandoer, loggkommandoer kjøres med sudo og mer.

Sudo-kommandoen er kontrollert av /etc/ sudoers-filen på systemet. Denne kommandoen må redigeres med visudo-kommandoen, som utfører syntakskontroll for å sikre at du ikke ved et uhell ødelegger filen.

Angi brukere med Sudo-tillatelser

Brukerkontoen du oppretter mens du installerer Ubuntu, er merket som en administratorkonto, som betyr at den kan bruke sudo. Eventuelle ekstra brukerkontoer du oppretter etter installasjon kan enten være Administrator eller Standard brukerkontoer. Standardbrukerkontoer har ikke sudo-tillatelser.

Du kan styre brukerkontotyper grafisk fra Ubuntus brukerkontoverktøy. For å åpne den, klikk på brukernavnet ditt på panelet og velg brukerkontoer eller søk etter brukerkontoer i dashbordet.

Gjør Sudo glem ditt passord

instagram viewer

Som standard husker sudo passordet ditt i 15 minutter etter at du har skrevet det. Dette er grunnen til at du bare må skrive inn passordet ditt en gang når du utfører flere kommandoer med sudo i rask rekkefølge. Hvis du skal la noen andre bruke datamaskinen, og du vil at sudo skal be om passordet når det kjører neste, kjør følgende kommando, og sudo vil glemme passordet ditt:

sudo -k

Spør alltid om et passord

Hvis duJeg vil helst bli bedt om hver gang du bruker sudo - for eksempel hvis andre mennesker regelmessig har tilgang til datamaskinen din - kan du deaktivere passordet som husker atferd helt.

Denne innstillingen, som andre sudo-innstillinger, finnes i /etc/ sudoers-filen. Kjør visudo-kommandoen i en terminal for å åpne filen for redigering:

sudo visudo

Til tross for navnet heter denne kommandoen den nybrukervennlige nano-editoren i stedet for den tradisjonelle vi-editoren på Ubuntu.

Legg til følgende linje under de andre standardlinjene i filen:

Standard timestamp_timeout = 0

Trykk Ctrl + O for å lagre filen, og trykk deretter Ctrl + X for å lukke Nano. Sudo vil nå alltid spørre deg om et passord.

Endre passordtidsavbrudd

For å angi en annen timeout for passord - enten en lengre som 30 minutter eller en kortere som 5 minutter - følg trinnene ovenfor, men bruk en annen verdi for tidsstempel_timeout. Nummeret tilsvarer antall minutter sudo vil huske passordet ditt for. For å få sudo husk passordet ditt i 5 minutter, legg til følgende linje:

Standard timestamp_timeout = 5

Aldri Be om et passord

Du kan også ha sudo aldri be om et passord - så lenge du er logget inn, hver kommando duprefiks med sudo vil kjøre med root-tillatelser. For å gjøre dette, legg til følgende linje i sudoers-filen, der brukernavnet ditt er brukernavn:

brukernavn ALLE =( ALLE) NOPASSWD: ALLE

Du kan også endre% sudo-linjen - det vil si linjen som tillater alle brukere isudo-gruppe( også kjent som Administrator-brukere) for å bruke sudo - for å få alle administratormedlemmer ikke krever passord:

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

Kjør bestemte kommandoer uten passord

Du kan også spesifisere spesifikke kommandoer somvil aldri kreve et passord når du kjører med sudo. I stedet for å bruke "ALL" etter NOPASSWD ovenfor, angi plasseringen av kommandoene. For eksempel vil følgende linje tillate at brukerkontoen din kjører apt-get og shutdown-kommandoene uten et passord.

brukernavn ALLE =( ALLE) NOPASSWD: /usr/bin/ apt-get, /sbin/-avslutning

Dette kan være spesielt nyttig når du kjører bestemte kommandoer med sudo i et skript.

Tillat en bruker å kjøre bare bestemte kommandoer

Mens du kan svarte på bestemte kommandoer og hindre brukere i å kjøre dem med sudo, er dette ikke veldig effektivt. For eksempel kan du angi at en brukerkonto ikke kan kjøre avslutningskommandoen med sudo. Men den brukerkontoen kan kjøre cp-kommandoen med sudo, lage en kopi av shutdown-kommandoen, og slå av systemet ved hjelp av kopien.

En mer effektiv måte å hviteliste på bestemte kommandoer. For eksempel kan du gi en standard brukerkonto tillatelse til å bruke apt-get og shutdown-kommandoene, men ikke mer. For å gjøre dette, legg til følgende linje, der standardbruker er brukerens brukernavn:

standardbruker ALL = /usr/bin/ apt-get, /sbin/ avslutning

Følgende kommando vil fortelle oss hvilke kommandoer brukeren kan kjøre med sudo:

sudo -U standardbruker-

Logging Sudo Access

Du kan logge all sudo-tilgang ved å legge til følgende linje. /var/log/ sudo er bare et eksempel;Du kan bruke hvilken som helst loggfilplassering du liker.

Standard logfile = /var/log/ sudo

Se innholdet i loggfilen med en kommando som denne:

sudo katt /var/log/ sudo

Husk at hvis en bruker har ubegrenset sudo-tilgang, har denne brukeren muligheten til å slette eller endreinnholdet i denne filen. En bruker kan også få tilgang til en rotprompt med sudo og kjør kommandoer som ikke ville bli logget. Loggfunksjonen er mest nyttig når kombinert med brukerkontoer som har begrenset tilgang til en delmengde av systemkommandoer.