4 moduri de a dezactiva contul de administrator(root) în Linux

Contul de administrator (root) este contul principal al unui sistem de operare Linux și al altor sisteme de operare similare. Acest cont are acces la toate comenzile și fișierele dintr-un sistem cu permisiuni complete de citire, scriere și executare. Este folosit pentru a efectua orice fel de sarcină pe un sistem; pentru a crea/actualiza/accesa/șterge conturile altor utilizatori, instala/elimina/actualiza programele și multe altele.

Deoarece utilizatorul root are puteri absolute, toate acțiunile pe care le îndeplinește sunt critice pe un sistem. În acest sens, orice eroare a utilizatorului root poate avea implicații uriașe asupra funcționării normale a unui sistem. În plus, acest cont poate fi, de asemenea, abuzat prin utilizarea lui în mod abuziv sau necorespunzător, fie din greșeală, fie cu rea intenție sau prin ignorarea contrară a politicilor.

Prin urmare, este recomandabil să dezactivați accesul root în calculatorul/server-ul dvs., în schimb, creați un cont de administrator care ar trebui să fie configurat pentru a obține privilegiile de utilizator root folosind comanda sudo, pentru a efectua sarcini critice pe calculator/server.

În acest articol, vă explic patru moduri de a dezactiva autentificarea contului root.

Atenție: Înainte de a bloca accesul la contul rădăcină (root), asigurați-vă că ați creat un cont de administrator, capabil să utilizeze comanda sudo pentru a obține privilegiile root, cu comanda „useradd” și pentru a da acestui cont de utilizator o parolă puternică. Opțiune „-m” înseamnă crearea directorului „home” al utilizatorului și „-c” permite să specificați un comentariu:

# useradd -m -c "Admin User" gnulinuxromania
# passwd gnulinuxromania

Apoi, adăugați acest utilizator la grupul corespunzător de administratori de sistem folosind comanda „usermod”, unde opțiunea „-a” înseamnă că adăugați contul de utilizator și „-G” specifică un grup unde este adăugat noul utilizator (wheel sau sudo în funcție de distribuția Linux):

# usermod -aG wheel gnulinuxromania    #CentOS/RHEL
# usermod -aG sudo gnulinuxromania     #Debian/Ubuntu

După ce ați creat un utilizator cu privilegii administrative, comutați la acel cont pentru a bloca accesul la root.

# su gnulinuxromania

1. Schimbați Shell-ul utilizatorului root

Cea mai simplă metodă de a dezactiva autentificare utilizatorului root este de schimba shell-ul din /bin/bash (sau orice alt shell care permite conectarea utilizatorului) la /sbin/nologin, în fișierul /etc/passwd, deschideți fișierul pentru editare utilizând oricare dintre editoarele preferate din linia de comandă, după cum este în exemplu:

$ sudo vim /etc/passwd

Modificați linia:

root:x:0:0:root:/root:/bin/bash
la
root:x:0:0:root:/root:/sbin/nologin

Salvați fișierul și închideți-l

De acum încolo, atunci când utilizatorul root se conectează, acesta va primi mesajul „Acest cont nu este disponibil momentan”. Acesta este mesajul implicit, dar îl puteți modifica și puteți seta un mesaj personalizat în fișierul /etc/nologin.txt.

Această metodă este eficientă numai pentru programele care necesită un shell pentru autentificarea utilizatorului, în caz contrar, sudo, ftp și clienții de e-mail pot accesa contul root.

2. Dezactivați conectarea prin intermediul consolei (TTY)

Cea de-a doua metodă utilizează un modul PAM numit pam_securetty, care permite accesul root numai dacă utilizatorul se conectează la un TTYsecurizat”, așa cum este definit în /etc/securetty.

Fișierul de mai sus vă permite să specificați care sunt dispozitivele TTY la care utilizatorul root se poate conecta, golirea acestui fișier împiedică accesul la root oricărui dispozitiv atașat la sistemul calculatorului.

Pentru a crea un fișier gol. executați:

$ sudo mv /etc/securetty /etc/securetty.orig
$ sudo touch /etc/securetty
$ sudo chmod 600 /etc/securetty

Această metodă are unele limitări, afectează numai programele precum managerul de autentificare (gdm, kdm și xdm) și alte servicii de rețea care se pornesc în TTY. Programe precum su, sudo, ssh, și alte instrumente openssh asociate vor avea acces la contul rădăcină.

3. Dezactivați conectarea SSH Root

Cea mai obișnuită modalitate de a accesa serverele sau VPS-urile de la distanță este via SSH și pentru a bloca autentificarea utilizatorului root, trebuie să editați fișierul /etc/ssh/sshd_config.

$ sudo vim /etc/ssh/sshd_config

Apoi decomentați (dacă este comentat) directiva „PermitRootLogin” și setați valoarea la „no” așa cum vedeți în imaginea următoare.

După ce ați terminat, salvați și închideți fișierul. Apoi, reporniți serviciul sshd pentru a aplica modificările recent aduse în configurație.

$ sudo systemctl restart sshd
sau
$ sudo service sshd restart.

După cum probabil știți deja, această metodă afectează setul de instrumente openssh, programele precum ssh, scp, sftp vor fi blocate.

4. Restricționați accesul root la servicii prin PAM

Pluggable Authentication Modules (PAM) este o metodă centralizată, conectabilă, modulară și flexibilă de autentificare pe sistemele Linux. PAM, prin modulul /lib/security/pam_listfile.co, permite o flexibilitate deosebită în cea ce privește limitarea privilegiilor anumitor conturi.

Modulul de mai sus poate fi utilizat pentru a desemna o listă de utilizatori care nu au voie să se conecteze prin intermediul unor servicii vizate, cum ar fi managerul de autentificare, ssh și orice programe PAM sensibile.

În acest caz, dorim să dezactivăm accesul utilizatorilor root la un sistem, prin restricționarea accesului la serviciile de conectare și sshd. În primul rând deschideți și editați fișierul pentru serviciul vizat din directorul /etc/pam.d, după cum este mai jos.

$ sudo vim /etc/pam.d/login
sau
$ sudo vim /etc/pam.d/login

În continuare, adăugați configurația de mai jos în ambele fișiere.

auth    required       pam_listfile.so \
        onerr=succeed  item=user  sense=deny  file=/etc/ssh/deniedusers

Când ați terminat, salvați și închideți fiecare fișier. Apoi creați fișierul /etc/ssh/deniedusers care ar trebui să conțină un singur element pe fiecare linie și nu poate fi citit.

Adăugați numele root în el, salvați și închideți-l.

$ sudo vim /etc/ssh/deniedusers

De asemenea, setați permisiunile necesare.

$ sudo chmod 600 /etc/ssh/deniedusers

Această metodă afectează numai programele și serviciile care se folosesc de PAM. Puteți bloca accesul root în sistem prin intermediul FTP, clienților de e-mail și multe altele.

Pentru mai multe informații, consultați paginile man relevante.

$ man pam_securetty
$ man sshd_config
$ man pam

 

Sursa: www.tecmint.com

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

Continuând să utilizați blog-ul, sunteți de acord cu utilizarea cookie-urilor și politica de confidențielitate. Mai multe informații

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.

Close