Cum să adăugați un utilizator la fișierul sudoers în Linux
Publicat: 2022-11-02 Persoanele care pot folosi comanda Linux sudo
sunt membri ai unui club mic și select, numit uneori lista „sudoers”. Fiecare membru are aceleași puteri ca root
. Deci cum intri in acel club? Vom parcurge adăugarea unei persoane la sudoers, precum și editarea fișierului sudoers pentru a limita permisiunile.
sudo: Alter-ego-ul tău superputernic
Sudoers File și visudo
Adăugați un nou utilizator sudo în Ubuntu și alte distribuții Linux
Limitați privilegiile sudo prin editarea fișierului sudoers
Oricine deține această poruncă
sudo: Alter-ego-ul tău superputernic
În instalările Linux, utilizatorul root este cel mai privilegiat utilizator. Ei pot efectua orice sarcină administrativă, pot accesa orice fișier, indiferent dacă îl deține efectiv și pot crea, manipula și chiar elimina alți utilizatori.
Acest nivel de putere este periculos. Dacă root
face o greșeală, rezultatele pot fi catastrofale. Au capacitatea de a monta și demonta sisteme de fișiere și de a le suprascrie în întregime. O modalitate mult mai sigură de a lucra este să nu te autentifici niciodată ca root
.
Utilizatorii nominalizați pot folosi sudo
pentru a obține temporar puteri administrative, pentru a efectua acțiunile necesare și apoi pentru a reveni la starea lor normală, neprivilegiată. Acest lucru este mai sigur pentru că invoci în mod conștient puterile tale superioare atunci când ai nevoie de ele și în timp ce ești concentrat să faci tot ce le necesită.
Comanda sudo
este echivalentul Linux cu a striga „Shazam”. Când lucrurile înfricoșătoare se termină, abandonezi alter-ego-ul tău superputernic și te întorci la sinele tău normal.
Conectarea ca root
este dezactivată implicit pe majoritatea distribuțiilor moderne, dar poate fi restabilită. Utilizarea contului root pentru munca de zi cu zi este nerecomandabilă. Greșelile care ar afecta în mod obișnuit un singur utilizator sau care ar fi blocate cu totul din cauza privilegiilor insuficiente, pot rula nestingherite dacă root
le emite.
Distribuțiile Linux moderne acordă privilegii sudo
contului de utilizator care este creat în timpul etapelor de instalare sau de configurare post-instalare. Dacă altcineva încearcă să folosească sudo
, va vedea un mesaj de avertizare ca acesta:
Mary nu este în dosarul sudoers. Acest incident va fi raportat.
Asta pare destul de clar. Utilizatorul nostru mary
nu poate folosi sudo
deoarece nu se află „în fișierul sudoers”. Deci, să vedem cum o putem adăuga.
LEGATE: Cum să controlezi accesul sudo pe Linux
Sudoers File și visudo
Înainte ca cineva să poată folosi comanda sudo
, trebuie să lucrăm cu fișierul sudoers
. Aceasta listează grupurile de utilizatori care pot folosi sudo
. Dacă trebuie să facem modificări la dosar, trebuie să-l edităm.
Fișierul sudoers
trebuie deschis folosind comanda visudo
. Acest lucru blochează fișierul sudoers
și împiedică două persoane să încerce să facă modificări în același timp. De asemenea, efectuează câteva verificări de sănătate înainte de a salva editările, asigurându-se că sunt analizate corect și sunt corecte din punct de vedere sintactic.
Rețineți că visudo
nu este un editor, ci lansează unul dintre editorii dvs. disponibile. Pe Ubuntu 22.04, Fedora 37 și Manjaro 21, visudo
a lansat nano. S-ar putea să nu fie cazul pe computerul dvs.
Dacă vrem să oferim cuiva acces la privilegii sudo
complete, trebuie doar să facem referire la unele informații din fișierul sudoers
. Dacă vrem să fim mai detaliați și să oferim utilizatorului nostru unele dintre capabilitățile root
, trebuie să edităm fișierul și să salvăm modificările.
Oricum, trebuie să folosim visudo
.
LEGATE: Cum să ieși din editorul Vi sau Vim
Adăugați un nou utilizator sudo în Ubuntu și alte distribuții Linux
Avem doi utilizatori care au nevoie de acces la privilegii root pentru a-și îndeplini funcțiile. Ei sunt Tom și Mary. Mary trebuie să aibă acces la tot ce poate face root
. Tom trebuie doar să instaleze aplicații.
Să o adăugăm mai întâi pe Mary la grupul sudoers. Trebuie să începem visudo
.
sudo visudo
Derulați în jos în editor până când vedeți secțiunea „Specificații privilegii utilizator”. Căutați un comentariu care spune ceva similar cu „Permiteți membrilor acestui grup să execute orice comandă”.
Ni sa spus că membrii grupului sudo
pot executa orice comandă. Tot ce trebuie să știm în cazul lui Mary este numele acelui grup. Nu este întotdeauna sudo
; ar putea fi wheel
sau altceva. Acum că știm numele grupului, putem închide editorul și o putem adăuga pe Mary la acel grup.
Folosim comanda usermod
cu opțiunile -a
(adăugați) și -G
(numele grupului). Opțiunea -G
ne permite să denumim grupul la care dorim să adăugăm utilizatorul, iar opțiunea -a
îi spune usermod
să adauge noul grup la lista grupurilor existente în care se află deja acest utilizator.
Dacă nu utilizați opțiunea -a
, singurul grup în care va fi utilizatorul dvs. este grupul nou adăugat. Verificați de două ori și asigurați-vă că ați inclus opțiunea -a
.
sudo usermod -aG sudo mary
Data viitoare când Mary se va conecta, va avea acces la sudo
. Ne-am conectat la ea și încercăm să edităm fișierul tabel al sistemului de fișiere, „/etc/fstab”. Acesta este un fișier care este în afara limitelor tuturor, în afară de root
.
sudo nano /etc/fstab
Editorul nano se deschide cu fișierul „/etc/fstab” încărcat.
Fără privilegii sudo
, ați putea să-l deschideți doar ca fișier numai pentru citire. Mary nu mai are aceste restricții. Ea poate salva orice modificări pe care le face.
Închideți editorul și nu salvați modificările pe care le-ați făcut.
Limitați privilegiile sudo prin editarea fișierului sudoers
Celălalt utilizator al nostru, Tom, i se va acorda permisiunea de a instala software, dar nu va primi toate privilegiile care i-au fost acordate lui Mary.
Trebuie să edităm fișierul sudoers
.
sudo visudo
Derulați în jos în editor până când vedeți secțiunea „Specificații privilegii utilizator”. Căutați un comentariu care spune ceva similar cu „Permiteți membrilor acestui grup să execute orice comandă”. Este același punct din fișier în care am găsit numele grupului la care trebuia să o adăugăm pe Mary.
Adăugați aceste rânduri sub acea secțiune.
# utilizator tom poate instala software tom ALL=(rădăcină) /usr/bin/apt
Prima linie este un simplu comentariu. Rețineți că există o filă între numele de utilizator „tom” și cuvântul „Toate”.
Aceasta este ceea ce înseamnă elementele de pe linie.
- tom : numele grupului implicit al utilizatorului . De obicei, acesta este același cu numele contului lor de utilizator.
- ALL= : Această regulă se aplică tuturor gazdelor din această rețea.
- (rădăcină) : Membrii grupului „tom” – adică utilizatorul Tom – își pot asuma privilegii de
root
pentru comenzile enumerate. - /usr/bin/apt : Aceasta este singura comandă pe care Tom o poate rula ca
root
.
Am specificat managerul de pachete apt
aici, deoarece acest computer folosește Ubuntu Linux. Ar trebui să înlocuiți aceasta cu comanda corespunzătoare dacă utilizați o distribuție diferită.
Să-l conectăm pe Tom și să vedem dacă obținem comportamentul așteptat. Vom încerca să edităm fișierul „/etc/fstab”.
sudo nano /etc/fstab
Acea comandă este respinsă și ni se spune că „utilizatorul tom nu are voie să execute „/usr/bin/nano /etc/fstab” ca rădăcină...”
Asta ne-am dorit. Utilizatorul Tom ar trebui să poată utiliza doar managerul de pachete apt
. Să ne asigurăm că pot face asta.
sudo apt install neofetch
Comanda a fost executată cu succes pentru Tom.
Oricine deține această poruncă
Dacă toți utilizatorii tăi pot folosi sudo
, vei avea haos pe mâini. Dar merită să promovați alți utilizatori, astfel încât aceștia să vă poată împărtăși sarcina administrativă. Doar asigurați-vă că sunt demni și fiți cu ochii pe ei.
Chiar dacă sunteți singurul utilizator de pe computer, merită să vă gândiți să creați un alt cont de utilizator și să îi oferiți acces complet la sudo
. În acest fel, dacă ești vreodată blocat din contul tău principal, ai un alt cont cu care te poți autentifica pentru a încerca să remediezi situația.
LEGATE: Cum să revizuiți utilizarea comenzilor sudo pe Linux