Innenfor ditt Linux- eller macOS-system er det en fil som heter “sudoers” som styrer de dypeste nivåene av tillatelsessystemet ditt. Det tillater eller nekter brukere å få superbrukertilgang og har noen spesielle preferanser for sudo.
Hva er sudoers-filen?
Sudoers-filen er en tekstfil som lever på «/ etc / sudoers.» Den styrer hvordan sudo
fungerer på maskinen din. Du er sannsynligvis kjent med sudos primære rolle som å heve nåværende kontos privilegier til root, superbrukeren på alle Unix-baserte systemer. Dette tillater brukerne dine å utføre kommandoer som ellers ville være forbudt.
Når trenger jeg å redigere sudoers-filen?
Når du først installerer Linux (eller macOS), blir den første og standardbrukeren automatisk lagt til sudoers-filen slik at den kan kjøre administrative oppgaver med sudo
kommando. Imidlertid, hvis du oppretter en ny brukerkonto, vil den ikke ha superbrukertillatelse som standard. Hvis du trenger å gi den superbrukertillatelse, må du redigere sudoers-filen og legge til denne brukerkontoen i den.
Hvordan kan jeg redigere sudoers?
Aldri rediger sudoers-filen i en vanlig teksteditor. Dette kan føre til samtidig redigering og ødelagte filer, og potensielt nekte administratortilgang. Sudoer må redigeres ved å løpe visudo
i Terminal, slik som:
sudo visudo
Merk at du trenger å bruke sudo
å løpe visudo
. Dette åpner sudoers-filen i standard tekstredigerer i Terminal (som standard, nano).
Hva kan endring av sudoers-filen gjøre?
Sudoers-filens hovedjobb er å definere hvilke brukere som kan bruke sudo til hva. Det har også noen enkle preferanser, som vi kan justere først for å få en følelse av hvordan visudo fungerer.
Endre sudo-tidsavbrudd
Som standard løfter du inn sudo-passordet dine tillatelser til du lukker skallet eller avslutter. Dette kan være usikkert, og noen foretrekker kanskje å skrive inn passordet hver gang de bruker sudo.
1. Løp sudo visudo
som nevnt ovenfor.
2. Trykk på Alt + / for å navigere til slutten av dokumentet. Hvis du bruker Vi eller Vim, trykker du på Skifte + G i stedet.
3. Opprett en ny linje nederst i dokumentet og legg til følgende linje:
Defaults timestamp_timeout=0
Dette vil sette sudo-timeout til null sekunder, så du har sudo-tillatelser i null sekunder etter at du utfører den første kommandoen. Hvis du foretrekker et annet intervall, angir du verdien i sekunder i stedet.
Du kan også sette tidsavbruddet til «-1», noe som gir deg en uendelig avdragsfri periode. Ikke gjør det. Det er en praktisk måte å uhell på systemet ditt en dag.
4. Trykk på Ctrl + o å lagre og Ctrl + x å gå ut.
Begrens hvem som kan bruke sudo og til hva
Hovedformålet med sudoers-filen er å kontrollere hvilke brukere som kan kjøre sudo. Uten sudo kan brukerne ikke heve tillatelsene sine. Hvis du har flere brukere som får tilgang til det samme systemet gjennom skall, kan du kontrollere tilgangen deres ved å sette verdier i sudo.
Hver sudoers-fil vil ha følgende linje:
root ALL=(ALL) ALL
Dette tillater root
bruker på ALL
verter bruker ALL
brukere å utføre ALL
kommandoer. ALL er en spesiell verdi i sudoers-filen som betyr «ingen begrensninger.» Syntaksen er som nedenfor:
username hostlist = (userlist) commandlist
Hvis du vil legge til en annen bruker som root, kan du bare kopiere rotlinjen og endre brukeren slik:
alexander ALL=(ALL) ALL
For mer kontroll, kan du legge til en linje som følgende, som bare tillater «alexander» -brukeren å kjøre apt-get-oppdatering.
alexander ALL=(ALL) /usr/bin/apt-get update
Sett «%» foran brukeren, og den vil definere en gruppe. Linjen nedenfor vil tillate alle brukere i gruppen «admin» å ha rotnivåtillatelser. Dette vil være gruppen som definert av OS-tillatelsesgruppene.
%admin ALL=(ALL) ALL
Bytt visudo-editor
Avhengig av hvilken versjon av Linux du kjører, er det to primære måter å endre redigeringsprogrammet på.
For Ubuntu vil du kjøre Terminal-kommandoen nedenfor:
sudo update-alternatives –config editor
Du ser noe sånt som følgende:
There are 4 choices for the alternative editor (providing /usr/bin/editor). Selection Path Priority Status ------------------------------------------------------------ * 0 /bin/nano 40 auto mode 1 /bin/ed -100 manual mode 2 /bin/nano 40 manual mode 3 /usr/bin/vim.basic 30 manual mode 4 /usr/bin/vim.tiny 10 manual mode Press enter to keep the current choice[*], or type selection number: 3
Hvis du ønsket å velge vim som visudo-editor fra standardinnstillingen for nano, ville du trykke på valgnummeret 3
trykk deretter på Enter.
For andre smaker av Linux, vil du legge til en ny linje i «~. / Bashrc» -filen som vist nedenfor:
export EDITOR="vim"
Lagre deretter filen. Det vil sette visudo-redaktøren din til vim.
Konklusjon
Sudoers-filen er ikke noe du vanligvis trenger å rote med på enkeltbrukersystemer. Men systemadministratorer vil ha mer enn nok grunn til å utforske det indre arbeidet.