Su și sudo - începerea programelor de sistem de către utilizatorul obișnuit

1. În unul dintre consolele virtuale sau terminalele X (xterm, console, etc.) conectați la root și după executarea comenzilor necesare pentru a ieși.

2. Folosind comanda su, deveniți temporar rădăcină pe unul dintre consolele în care v-ați înregistrat deja ca utilizator normal după ieșirea din comenzile necesare.

3. Folosind comanda sudo, rulați comanda de care aveți nevoie.

Aceste metode au argumente pro și contra.

Pentru prima metodă, aveți nevoie de o consolă virtuală gratuită sau de un alt terminal X, în timp ce metodele 2 și 3 utilizează temporar una disponibilă.

1 și 2 moduri nd pentru a începe o nouă comandă shell care vă permite să efectuați mai multe comenzi, dar pentru a executa o singură comandă (naprmer, editare de fișiere de configurare sau de executare make install) este mult mai convenabil a treia cale, atunci când comanda este introdusă o dată, și după nu trebuie să fie făcut din coajă.

Și principalul avantaj al celei de-a treia metode este flexibilitatea și personalizarea foarte ridicate. Cu toate acestea, imediat după instalarea sistemului fără configurare, comanda sudo nu este disponibilă pentru utilizator.

Comanda su incepe shell-ul cu drepturile altui utilizator din consola curenta, implicit este root. În acest caz, trebuie să introduceți parola pentru acest utilizator. Su trebuie executat cu o cratimă ca parametru:

Variabilele de mediu $ HOME și $ PATH sunt actualizate. directorul de domiciliu devine / root, iar în $ PATH, / sbin și / usr / sbin sunt adăugate. Când executați su fără cratimă $ HOME este egal cu directorul home al utilizatorului, care este de a rula această comandă, și, ca urmare a programelor lansate de sub su, trebuie înregistrate fișiere (de exemplu, configurația acestor programe), cu acces root, care poate duce la greșelile și ciudățenii în activitatea viitoare.

Pentru a reveni la shell-ul unui utilizator normal, trebuie să dați comanda ieșire, logout sau apăsați Ctrl-D.

Comanda sudo vă permite să rulați o singură comandă, cu un alt cont de utilizator (implicit - root), iar parola este introdusă (în cazul în care nu a permis o parolă de pornire), utilizatorul care rulează sudo (nu cea în numele căreia comanda se execută, spre deosebire de su). În mod implicit, nimeni nu are dreptul să ruleze nimic. Prin urmare, pentru a începe să utilizați sudo, trebuie să îl configurați. Setările sunt stocate în fișierul / etc / sudoers. Este recomandat ca acest fișier să fie editat cu comanda visudo (această comandă verifică sintaxa fișierului înainte de ao salva). Putem citi despre setările flexibile ale sudo în sudo-om, dar vom analiza unele dintre cele mai simple și mai interesante exemple.

TOATE TOATE = (TOATE) TOATE

Cel mai simplu mod de a configura sudo, dar nu cel mai de succes cu T.S. de securitate. Permitem tuturor utilizatorilor să execute orice comandă din orice nume. Luați în considerare modul în care puteți limita această libertate.

Primul câmp consecutiv este lista de utilizatori și / sau grupuri la care se aplică această linie. Acesta poate fi TOATE (toate), numele de utilizator, numele grupului sau # numeric_id_user_user.

% roată ALL = (ALL) ALL

Permitem tuturor membrilor grupului de roți (trebuie să vă includeți pe voi înșivă) pentru a rula orice echipă din orice nume. Acest lucru este mai corect, dar numai utilizatorii sunt permise să fie incluse în grupul% wheel.

Câmpul 2 - numele mașinii cu care puteți executa comenzi. Este importantă numai când utilizați conectarea în rețea.

Câmpul 3 (în paranteze) este lista utilizatorilor în numele cărora puteți executa comanda. Deoarece sudo este de obicei folosit pentru a rula programe în numele rădăcină, acest câmp nu este folosit foarte des.

Cea de-a patra câmpă este comanda care este permisă executării. Aici, ca și în câmpurile rămase, puteți specifica o listă de comenzi separate prin virgule.

Orice utilizator poate folosi comanda sudo-l pentru a afla care comenzi sunt permise să o execute.

Când porniți sudo, vi se solicită parola (utilizatorul care a lansat comanda). În interval de 5 minute (acest interval poate fi modificat) după ultima rulare de sudo poate fi rulat din nou fără o parolă. Puteți introduce / etc / sudoers în liniile corespunzătoare după semnul = tag NOPASSWD. atunci comenzile specificate în această linie pot fi executate fără o parolă.

ALL ALL = NOPASSWD: (ALL) / sbin / shutdown, / sbin / reboot

Vă permite să închideți și să reporniți computerul pentru orice utilizator, fără a introduce o parolă, comenzi sudo / sbin / oprire și sudo / sbin / repornirea sistemului, respectiv, (alte moduri de a face acest lucru vor fi discutate în articolul următor).

În mod implicit, toate încercările reușite și nereușite de a executa comanda sudo (inclusiv numele de utilizator și comanda completă) sunt înregistrate în jurnalul de sistem și pot fi trimise prin poștă administratorului de sistem.

La setarea su și sudo în ceea ce privește restricțiile de acces, utilizatorii trebuie să fie atenți, deoarece Un sudo configurat incorect poate permite unui utilizator să execute orice comandă cu privilegii root. În special, chiar dacă utilizatorul nu are drepturi su posibile comenzi, cum ar fi bash sudo, sudo su, sudo mc sau lansa orice program care permite accesul temporar la shell (de exemplu, vi, iar comanda: sh).

Înapoi la conținut