
Fișierele care compun site-ul tău sunt mai mult decât simple documente stocate pe server – ele pot deveni, dacă nu sunt protejate corespunzător, o poartă de intrare pentru atacatori. De aceea, în această lecție vom analiza cum se gestionează corect permisiunile, ce reguli se aplică în mod uzual și ce bune practici poți implementa imediat.
Ce înseamnă „permisiuni” în contextul unui server
Sistemele de operare Linux (cele mai folosite pe serverele de găzduire) folosesc un sistem de permisiuni care definește cine poate citi, scrie sau executa un fișier sau folder.
Fiecare fișier are 3 niveluri de acces:
▣ Proprietar (user)
▣ Grup
▣ Alții (public)
Și 3 tipuri de permisiuni:
▣ r – read (citire)
▣ w – write (scriere)
▣ x – execute (executare)
Permisiunile sunt reprezentate numeric: de exemplu 644 sau 755.
Permisiuni recomandate
|
Tip fișier |
Permisiuni recomandate |
Explicație |
|---|---|---|
|
Fișiere PHP/HTML/etc. |
644 |
Citire de către toți, scriere doar de proprietar |
|
Foldere/directoare |
755 |
Citire/executare pentru toți, scriere doar de proprietar |
|
Fișiere de configurare |
600 sau 640 |
Citire doar de către proprietar (ex: .env, wp-config.php) |
|
Evitat complet |
777 |
Scriere de către toți – extrem de periculos! |
Permisiunea 777 permite oricui să scrie în acel fișier – inclusiv scripturi malițioase. Nu folosi niciodată 777 pe un server live.
Comenzi utile (dacă ai acces SSH sau SFTP)
▣ chmod 644 fisier.php – setează permisiuni sigure pentru un fișier
▣ chmod 755 folder/ – setează permisiuni pentru un director
▣ chown utilizator:grup fisier.txt – setează proprietarul fișierului
Aceste comenzi pot fi folosite și prin panoul de control (cPanel / DirectAdmin) sau prin aplicații SFTP (ex: FileZilla).
Fișiere sensibile care trebuie protejate
Unele fișiere conțin date critice:
▣ .env – variabile de mediu, parole, chei API
▣ wp-config.php – configurare WordPress, inclusiv datele de acces la baza de date
▣ .htaccess / web . config – reguli de acces și redirecționare
▣ fișiere de backup (.zip, .sql) – dacă rămân accesibile public, pot fi descărcate și analizate
Protejează-le:
▣ Setează permisiuni restrictive (600 sau 640)
▣ Dacă este posibil, mută-le în afara directorului public (/public_html)
▣ Blochează-le prin reguli în .htaccess:
<FilesMatch “^(\.env|wp-config\.php|\.htaccess)$”>
Order allow,deny
Deny from all
</FilesMatch>
Izolarea conturilor de utilizator
Pe serverele partajate, este esențial ca fiecare cont să fie izolat. Un cont compromis nu ar trebui să poată accesa fișierele altor utilizatori. Dacă administrezi mai multe site-uri:
▣ Nu le pune pe același cont cPanel dacă nu sunt interdependente.
▣ Folosește un CMS separat pentru fiecare.
▣ Activează moduri de izolare (suEXEC, CageFS etc.) – cere furnizorului dacă nu sunt activate implicit.
🧠 Recapitulare rapidă
|
Bună practică |
Motiv |
|---|---|
|
Setează 644 pentru fișiere, 755 pentru foldere |
Reguli standard de securitate |
|
Evită 777 |
Previne accesul nedorit sau injectarea de cod |
|
Protejează fișierele .env și wp-config.php |
Conțin date critice de acces |
|
Folosește chmod și chown |
Control asupra permisiunilor și proprietarului |
|
Izolează conturile |
Limitează impactul unui cont compromis |
Protecția fișierelor și gestionarea corectă a permisiunilor sunt esențiale în menținerea unui mediu de găzduire sigur. Un singur fișier cu permisiuni incorecte poate permite unui atacator să compromită întregul site. În următoarea lecție, vom învăța cum să folosești notificările și sistemele de monitorizare pentru a detecta rapid orice activitate suspectă.