În sistemul Linux sau macOS, există un fișier numit „sudoers” care controlează cele mai profunde niveluri ale sistemului dvs. de permisiuni. Permite sau refuză utilizatorilor să obțină acces la super-utilizatori și deține unele preferințe speciale pentru sudo.
Ce este fișierul sudoers?
Fișierul sudoers este un fișier text care se află la „/ etc / sudoers”. Controlează cum sudo
funcționează pe mașina dvs. Probabil că sunteți familiarizat cu rolul principal al lui sudo de a crește privilegiile contului curent de root, superutilizatorul pe toate sistemele bazate pe Unix. Acest lucru permite utilizatorilor să execute comenzi care altfel ar fi interzise.
Când trebuie să editez fișierul sudoers?
La prima instalare Linux (sau macOS), primul utilizator implicit va fi adăugat automat la fișierul sudoers, astfel încât să poată rula sarcini administrative cu sudo
comanda. Cu toate acestea, dacă creați un cont de utilizator nou, acesta nu va avea permisiunea superutilizatorului în mod implicit. Dacă trebuie să îi acordați permisiunea de superutilizator, va trebui să editați fișierul sudoers și să adăugați acest cont de utilizator la acesta.
Cum pot edita sudo-urile?
Nu editați niciodată fișierul sudoers într-un editor de text normal. Acest lucru poate duce la editare simultană și fișiere corupte, refuzând potențial accesul administratorului. Sudoers trebuie editați rulând visudo
în Terminal, așa:
sudo visudo
Rețineți că trebuie să utilizați sudo
a alerga visudo
. Aceasta va deschide fișierul sudoers în editorul de text implicit din Terminal (implicit, nano).
Ce poate face schimbarea fișierului sudoers?
Sarcina principală a fișierului sudo este definirea utilizatorilor care pot folosi sudo pentru ce. De asemenea, deține câteva preferințe simple, pe care le putem ajusta mai întâi pentru a avea o imagine a modului în care funcționează visudo.
Schimbați sudo timeout
În mod implicit, introducerea parolei sudo vă ridică permisiunile până când închideți shell-ul sau ieșiți. Acest lucru poate fi nesigur, iar unii ar putea prefera să introducă parola de fiecare dată când utilizează sudo.
1. Aleargă sudo visudo
așa cum sa menționat mai sus.
2. Apăsați Alt + / pentru a naviga la sfârșitul documentului. Dacă utilizați Vi sau Vim, apăsați Schimb + G in schimb.
3. Creați o nouă linie în partea de jos a documentului și adăugați următoarea linie:
Defaults timestamp_timeout=0
Acest lucru va seta sudo timeout la zero secunde, deci veți avea permisiuni sudo timp de zero secunde după ce executați prima comandă. Dacă preferați un interval diferit, introduceți valoarea respectivă în secunde.
De asemenea, puteți seta timpul de expirare la „-1”, ceea ce vă oferă o perioadă infinită de grație. Nu face asta. Este o modalitate la îndemână de a vă distruge accidental sistemul într-o zi.
4. Apăsați Ctrl + o a salva și Ctrl + X a iesi.
Limitați cine poate folosi sudo și pentru ce
Scopul principal al fișierului sudoers este de a controla ce utilizatori pot rula sudo. Fără sudo, utilizatorii nu își pot ridica permisiunile. Dacă aveți mai mulți utilizatori care accesează același sistem prin shell-uri, puteți controla accesul acestora setând valori în sudo.
Fiecare fișier sudoers va avea următoarea linie:
root ALL=(ALL) ALL
Acest lucru permite root
utilizator activat ALL
gazdele folosind ALL
utilizatorii să execute ALL
comenzi. ALL este o valoare specială în fișierul sudoers, ceea ce înseamnă „fără restricții”. Sintaxa este următoarea:
username hostlist = (userlist) commandlist
Dacă doriți să adăugați un alt utilizator ca root, copiați pur și simplu linia rădăcină și schimbați utilizatorul astfel:
alexander ALL=(ALL) ALL
Pentru mai mult control, puteți adăuga o linie ca următoarea, care ar permite utilizatorului „alexander” să ruleze apt-get update.
alexander ALL=(ALL) /usr/bin/apt-get update
Puneți un „%” în fața utilizatorului și acesta va defini un grup. Linia de mai jos ar permite fiecărui utilizator din grupul „administrator” să aibă permisiuni la nivel de rădăcină. Acesta ar fi grupul definit de grupurile dvs. de permisiuni ale sistemului de operare.
%admin ALL=(ALL) ALL
Schimbați editorul de visudo
În funcție de ce versiune de Linux executați, există două moduri principale de a schimba editorul.
Pentru Ubuntu, veți dori să rulați comanda Terminal de mai jos:
sudo update-alternatives –config editor
Veți vedea ceva de genul:
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
Dacă doriți să selectați vim ca editor de vizudo din valoarea implicită a nano, ați apăsa numărul de selecție al acestuia 3
apoi apăsați Enter.
Pentru alte versiuni de Linux, veți dori să adăugați o nouă linie la fișierul dvs. „~. / Bashrc” așa cum se vede mai jos:
export EDITOR="vim"
Apoi salvați fișierul. Asta ar seta editorul dvs. de visudo la vim.
Concluzie
Fișierul sudoers nu este ceva cu care, de obicei, va trebui să vă confundați pe sistemele cu un singur utilizator. Dar administratorii de sistem vor avea motive mai mult decât suficiente pentru a explora funcționarea sa interioară.