22Aug

8 måder at tweak og konfigurere Sudo på Ubuntu

click fraud protection

Som de fleste ting på Linux er sudo-kommandoen meget konfigurerbar. Du kan have sudo køre specifikke kommandoer uden at anmode om en adgangskode, begrænse bestemte brugere til kun godkendte kommandoer, logkommandoer køre med sudo og meget mere.

Sudo-kommandos adfærd styres af /etc/ sudoers-filen på dit system. Denne kommando skal redigeres med visudo-kommandoen, som udfører syntax-kontrol for at sikre, at du ikke ved et uheld bryder filen.

Angiv brugere med Sudo-tilladelser

Den brugerkonto, du opretter, mens du installerer Ubuntu, er markeret som en administratorkonto, hvilket betyder at den kan bruge sudo. Eventuelle ekstra brugerkonti, du opretter efter installation, kan enten være Administrator eller Standard brugerkonti. Standardbrugerkonti har ikke sudo-tilladelser.

Du kan styre brugerkonto typer grafisk fra Ubuntu's brugerkonti værktøj. For at åbne det skal du klikke på dit brugernavn på panelet og vælge Brugerkonti eller søge efter Brugerkonti i bindestreg.

Gør Sudo glemme dit kodeord

instagram viewer

Som standard husker sudo dit kodeord i 15 minutter, efter du har indtastet det. Det er derfor, du skal kun skrive din adgangskode en gang, når du udfører flere kommandoer med sudo i hurtig rækkefølge. Hvis du er ved at lade nogen andre bruge din computer, og du vil have sudo at bede om adgangskoden, når den kører næste, udfør følgende kommando, og sudo vil glemme dit kodeord:

sudo -k

Spørg altid om et kodeord

Hvis duJeg vil snarere blive bedt om hver gang du bruger sudo - for eksempel, hvis andre mennesker regelmæssigt har adgang til din computer - kan du deaktivere adgangskodehukommelsesadfærd helt.

Denne indstilling, som andre sudo-indstillinger, er indeholdt i /etc/ sudoers-filen. Kør visudo-kommandoen i en terminal for at åbne filen til redigering:

sudo visudo

Trods navnet hedder denne kommando de nybrugervenlige nano-editor i stedet for den traditionelle vi-editor på Ubuntu.

Tilføj følgende linje under de øvrige standardlinier i filen:

Standard Timestamp_timeout = 0

Tryk på Ctrl + O for at gemme filen, og tryk derefter på Ctrl + X for at lukke Nano. Sudo vil nu altid bede dig om et kodeord.

Ændring af adgangskode timeout

For at indstille en anden adgangskode timeout - enten en længere en som 30 minutter eller en kortere som 5 minutter - følg trinene ovenfor, men brug en anden værdi for timestamp_timeout. Nummeret svarer til antallet af minutter sudo vil huske dit kodeord for. For at have sudo husk dit kodeord i 5 minutter, tilføj følgende linje:

Standard timestamp_timeout = 5

Aldrig Spørg om et kodeord

Du kan også have sudo aldrig bede om adgangskode - så længe du er logget ind, hver kommando dupræfiks med sudo vil køre med root tilladelser. For at gøre dette skal du tilføje følgende linje til din sudoers-fil, hvor brugernavn er dit brugernavn:

brugernavn ALLE =( ALLE) NOPASSWD: ALLE

Du kan også ændre% sudo-linjen - det vil sige den linje, der tillader alle brugere isudo-gruppe( også kendt som administratorbrugere) for at bruge sudo - for at få alle administratorbrugerne ikke brug for adgangskoder:

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

Kør bestemte kommandoer uden kodeord

Du kan også angive specifikke kommandoervil aldrig kræve en adgangskode, når du kører med sudo. I stedet for at bruge "ALL" efter NOPASSWD ovenfor, skal du angive placeringen af ​​kommandoerne. F.eks. Vil den følgende linje tillade, at din brugerkonto kører apt-get og shutdown-kommandoer uden et kodeord.

brugernavn ALLE =( ALLE) NOPASSWD: /usr/bin/ apt-get, /sbin/ shutdown

Dette kan være særligt nyttigt, når du kører specifikke kommandoer med sudo i et script.

Tillad en bruger at køre kun specifikke kommandoer

Mens du kan svarte liste specifikke kommandoer og forhindre brugere i at køre dem med sudo, er dette ikke meget effektivt. Du kan f.eks. Angive, at en brugerkonto ikke kan køre shutdown-kommandoen med sudo. Men den brugerkonto kunne køre kommandoen cp med sudo, lave en kopi af shutdown-kommandoen og lukke systemet ved hjælp af kopien.

En mere effektiv måde er at hvidliste bestemte kommandoer. Du kan f.eks. Give tilladelse til en standard brugerkonto til at bruge apt-get og shutdown-kommandoerne, men ikke mere. For at gøre det skal du tilføje følgende linje, hvor standardbrugeren er brugerens brugernavn:

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

Følgende kommando fortæller os, hvilke kommandoer brugeren kan køre med sudo:

sudo -U standardbruger -l

Logging Sudo Access

Du kan logge alle sudo-adgang ved at tilføje følgende linje. /var/log/ sudo er blot et eksempel;Du kan bruge en hvilken som helst logfil-placering, du kan lide.

Standard logfile = /var/log/ sudo

Se indholdet af logfilen med en kommando som denne:

sudo cat /var/log/ sudo

Husk, at hvis en bruger har ubegrænset sudoadgang, har denne bruger mulighed for at slette eller ændreindholdet af denne fil. En bruger kunne også få adgang til en rodprompt med sudo og køre kommandoer, der ikke ville blive logget. Logfunktionen er mest nyttig, når den er koblet til brugerkonti, der har begrænset adgang til en delmængde af systemkommandoer.