Comanda de permisiune pentru folderul linux 777. Comanda chmod - Exemple de utilizare. Sintaxa Chmod pentru grupuri de utilizatori

În sistemele de operare ale familiei Unix, lucrul cu sistemul de fișiere necesită modificarea și setarea drepturilor de acces la anumite tipuri de date. Astfel de măsuri ajută la reducerea riscului de utilizare sau vizualizare neautorizată a sistemului și a altor informații care sunt importante pentru funcționarea corectă a serverului. Cu toate acestea, utilizarea unei astfel de funcție de protecție are sens numai pentru sistemele de operare cu mai mulți utilizatori. În caz contrar, instalarea acestuia va fi o pierdere de timp. Ce înseamnă acest termen? În orice sistem de operare care este destinat a fi utilizat de diferite grupuri de utilizatori, există un element restrictiv. Acest element este atribuit de administratorul de sistem. Acesta reglementează capacitățile și procedura de lucru cu directorul aflat sub controlul său pentru toate tipurile de utilizatori: proprietarul fișierelor, utilizatorii din grupul proprietarului, precum și alte persoane care au acces la server printr-un browser web.

Drepturi de acces

Atributul 777 permite tuturor tipurilor de utilizatori de mai sus să citească, să ruleze, să suprascrie și să creeze fișiere în director. Acest atribut există numai pentru platforma Linux. Această caracteristică oferă capabilități complete de interacțiune cu informații. Din păcate, este încă departe de ideile existente despre securitate.

Permisiunea 777: set numărul

În sistemul de operare Unix, permisiunile de grup sunt scrise pe o singură linie, care constă din trei numere. Fiecare dintre aceste linii indică drepturile unuia dintre tipurile de utilizator. Aceasta înseamnă că combinația numerică este o sumă aritmetică: (1) (execută), 2 (scrie), 4 (citește). Combinația numerică descrie capacitățile pe care le oferă această funcție.

Cum pot seta permisiunile la 777?

Setarea acestui atribut, cunoscând decodificarea denumirii sale numerice, nu va fi dificilă. Pentru a face acest lucru, utilizatorul va avea nevoie de orice manager de fișiere care acceptă o conexiune FTP la server, care poate fi autentificat ca administrator. Răspunsul la întrebarea despre setarea permisiunilor 777 pe un folder nu diferă cu nimic de instrucțiunile pentru un fișier. Pe server, trebuie să selectați obiectul dorit și să apelați meniul contextual făcând clic pe butonul din dreapta al mouse-ului. După aceasta, trebuie să selectați „Fișier” și apoi „Modificare atribute”. În fereastra de manager care se deschide, trebuie să introduceți o combinație de numere și să bifați casetele de lângă fiecare grup de utilizatori. Există, de asemenea, o metodă mai ușoară pentru un sistem server Unix. Necesită doar introducerea comenzii în formatul chmod 777 %filename% în panoul de control al hosterului.

Servere multiplayer

Este important să rețineți că permisiunile 777 există numai pentru fișierele care sunt situate direct pe un server multi-utilizator și nu sunt instalate pe un computer separat. De asemenea, este posibil să setați aceste drepturi pentru cataloage. În acest caz, comportamentul parametrilor indicați va fi exact același ca și pentru folder. Singura diferență este că, în loc să citească obiectele din interior, utilizatorul va putea vizualiza o listă cu tot conținutul. Pentru a seta drepturile de director, trebuie să utilizați metodele descrise mai sus. De asemenea, trebuie să rețineți că nu puteți seta acest tip de acces pentru pachetul Denver, deoarece simulează funcționarea unui serviciu web de rețea, dar de fapt nu este unul, care funcționează pe platforma Windows. Acest sistem de operare nu este de tip server, așa că atunci când instalați scripturi pe Denver, cerințele de modificare a drepturilor de acces trebuie pur și simplu ignorate.

Drepturi de control complet: Dezavantaje

Sistemul server folosește destul de rar drepturile 777. De obicei, majoritatea hosterilor aderă la drepturi precum 755. Diferă prin funcții ușor reduse pentru toți utilizatorii, cu excepția proprietarului. Astfel de drepturi interzic tuturor celorlalți utilizatori posibilitatea de a crea și scrie fișiere. Dacă încercați să setați drepturi care oferă acces deplin la tot conținutul aflat pe server, securitatea resursei poate fi compromisă. Atacatorii nu vor rata șansa de a profita de o astfel de vulnerabilitate semnificativă în sistemul de securitate a informațiilor. Setările de acces configurate incorect oferă oricărui utilizator libertate deplină de acțiune. Astfel, nu numai părțile interesate, ci și pur și simplu utilizatorii fără experiență pot perturba funcționarea serverului. Prin urmare, înainte de a seta drepturile de acces la 777, ar trebui să vă gândiți cu atenție dacă astfel de acțiuni vor duce la piratarea unei resurse de informații.

Astăzi aș vrea să vorbesc despre drepturile de acces la fișiere și foldere (citește). Acest concept a venit în lumea webmastering-ului de la sisteme de tip Linux (Unix) pe care operează majoritatea serviciilor de găzduire.

Și numele Chmod în sine este numele unui program din Linux care vă permite să atribuiți drepturi de acces la diferite obiecte. Și deoarece site-ul dvs. este instalat pe un server care rulează Linux (Unix) dintr-o variantă sau alta, atunci lucrul cu obiectele site-ului dvs. va fi supus regulilor stabilite de sistemele de operare Linux (Unix).

În Windows, practic toate fișierele sunt setate la permisiuni maxime, ceea ce, de fapt, duce la dominație pe computerele noastre și, la rândul său, îi împiedică pe proprietarii companiilor antivirus să moară de foame. În sistemele Linux (Unix) situația este diferită - totul este mai complicat, dar în același timp mai sigur. Dacă configurați totul corect și competent, puteți crește semnificativ securitatea site-ului dvs.

Concepte de bază ale drepturilor de acces la fișiere și foldere

Dacă lăsați totul la voia întâmplării și nu vă deranjați să setați privilegiile necesare, atunci probabilitatea ca resursa dvs. să fie piratată sau infectată cu cod rău intenționat va fi foarte mare. Este bine dacă ți-ai efectuat toate datele, dar dacă nu?!

Prin urmare, este mai bine să configurați și să schimbați imediat, fără întârziere, Chmod-ul pentru toate obiectele importante ale motorului dvs., pe baza principiului minimalismului. Acestea. acorda obiectelor drepturile minime necesare functionarii corecte a site-ului.

Să înțelegem mai întâi esența problemei pentru a înțelege ce anume stabilim și cum. Asadar, haideti sa începem. Drepturile de acces sunt separate pentru fișiere și directoare. Ele sunt desemnate la fel, dar înseamnă lucruri ușor diferite.

La rândul său, în legătură cu fișierele este posibil:

  • r - dreptul de a citi datele.
  • w - pentru a modifica conținutul (înregistrați - schimbați doar conținutul, dar nu ștergeți).
  • x - pentru a executa fișierul.

Să aruncăm o privire mai atentă la capacitățile de execuție a fișierelor. Faptul este că în Linux poate fi executat orice fișier. Dacă este executabil este determinat nu de extensia sa (conceptul de extensie este absent în sistemul de fișiere Unix), ci de drepturile de acces Chmod. Dacă un fișier are dreptul de execuție „X” setat, aceasta înseamnă că poate fi executat.

În legătură cu directoare, este posibil:

  1. r - dreptul de a citi directorul (puteți citi conținutul directorului, adică să obțineți o listă de obiecte aflate în el)
  2. w - pentru a modifica conținutul directorului (puteți crea și șterge obiecte în el, iar dacă aveți permisiunea de scriere, puteți chiar să ștergeți fișiere care nu vă aparțin)
  3. x - pentru a introduce un director (este întotdeauna verificat primul, și chiar dacă aveți toate privilegiile necesare pe un obiect care este îngropat adânc în lanțul de directoare, dar nu aveți atributul „X” pentru a accesa cel puțin un director de pe drumul către fișier, atunci nu vei ajunge niciodată la el)

În sistemele Linux, toate acestea sunt distribuite de administratorul principal al computerului, la care are acces prin introducerea unei parole. Și dacă majoritatea obiectelor au drepturi de numai citire, atunci virușii nu vor avea practic nimic de făcut pe un astfel de computer, deoarece nu vor putea nici să se scrie singuri acolo și nici atunci nu se vor împlini. Acesta este exact rezultatul pe care trebuie să-l obținem prin setarea Chmod-ului necesar pe obiectele site-ului nostru.

Privilegii pentru grupuri de utilizatori

Privilegiile în sine sunt împărțite în trei categorii, în funcție de cine accesează obiectul:

  • „utilizator” - u (direct proprietarul fișierului)
  • „grup” - g (membru al aceluiași grup cu proprietarul)
  • "lume" - o (toate celelalte)

Serverul determină ce grup de utilizatori să vă aloce atunci când vă conectați la server. Când, de exemplu, vă conectați la un server prin FTP, vă conectați cu numele de utilizator (și parola), apoi serverul vă atribuie grupului „utilizator” (“u)”.

Alți utilizatori care se conectează, de asemenea, prin FTP la server, vor fi alocați grupului „grup” (“g”), iar un vizitator care vine pe site-ul dvs. folosind browserul lor va fi atribuit grupului „world” (“o”). .

Variații a trei valori posibile „r”, „w” și „x” pentru trei categorii „u”, „g” și „o” și definiți Chmod la fișiere. Dacă nu este specificată o categorie, aceasta este înlocuită cu o cratimă „-”. Privilegiile sunt specificate secvenţial în ordinea dată:

  1. mai întâi drepturile proprietarului - „u”
  2. apoi pentru grup - „g”
  3. și la sfârșit - pentru toți ceilalți - „o”

După ce serverul atribuie un vizitator unui anumit grup, acesta îi acordă drepturi de a acționa asupra obiectelor, după care vizitatorul va putea citi, scrie sau executa fișierul (în funcție de ceea ce are voie să facă grupul său cu acest obiect) .

Pentru a vizualiza conținutul unui director, acesta trebuie să aibă atributul de citire „r” (pentru grupul căruia serverul i-a alocat vizitatorul). Pentru a crea un fișier sau un folder într-unul existent, acest director existent trebuie să aibă un atribut pentru intrarea „w”.

Pentru claritate, să ne uităm la un exemplu în care proprietarul fișierului („utilizator” - „u”) are toate drepturile: să citească, să scrie și să execute, iar toți ceilalți utilizatori au doar privilegiul de citire. Intrarea pentru un astfel de Chmod va arăta astfel: „rwx r-- r--”.

Să ne uităm la asta în detaliu: „rwx” (această înregistrare specifică drepturile asupra obiectului pentru proprietar - „u”), „r--” (această înregistrare specifică drepturile asupra aceluiași obiect, dar dacă vizitatorul este atribuit către un grup de către server - „g”), „r--” (această intrare setează privilegiile asupra obiectului pentru toți ceilalți utilizatori - „o”).

Care este diferența dintre permisiunile pentru fișiere și foldere?

Se pare că există trei grupuri de utilizatori și trei acțiuni posibile cu obiecte. Inca confuz? Să punem tot ce s-a spus mai sus pe rafturi sub formă de tablete. Mai întâi, să aruncăm o privire la modul în care diferă:

Și, de asemenea, un tabel care arată diverse combinații Chmod pentru diferite tipuri de obiecte:

Nu se poate face nimic

Accesul la director și subdirectoarele acestuia este interzis

Poate vedea și modifica conținutul

Puteți adăuga, șterge, schimba fișierul director

Executați dacă fișierul este binar

Utilizatorul poate executa un fișier binar despre care știe că există, dar nu are voie să intre sau să citească directorul

Chmod exprimat în numere (777, 400, 666, 755, 444)

Puteți vedea că aici folosim intrări care folosesc litere și cratime latine pentru a descrie drepturile de acces, dar probabil ați întâlnit deja faptul că Chmod este de obicei specificat digital, de exemplu, binecunoscuta combinație: 777, care permite totul tuturor.

Într-adevăr, privilegiile sunt indicate și prin numere:

  1. r (citește) se înlocuiește cu 4
  2. w (înregistrare) se înlocuiește cu 2
  3. x (execuție) se înlocuiește cu 1
  4. 0 înseamnă să nu faci nimic (ceea ce este notat cu o cratimă în notație alfabetică)

Să revenim la exemplul de înregistrare pe care l-am dat puțin mai devreme: rwx r-- r-- . Dacă înlocuim literele și cratimele cu numere în el, în conformitate cu regula descrisă tocmai și, în același timp, adunăm numerele din fiecare triplă, vom obține forma digitală a acestei intrări: 744.

Acestea. Se pare că suma acestor numere arată Chmod în raport cu fișierele sau folderul. De exemplu:

  • 7 (rwx) = 4 + 2 +1 (drepturi depline)
  • 5 (r-x)= 4 + 0 + 1 (citește și execută)
  • 6 (rw-) = 4 + 2 + 0 (citiți și scrieți)
  • 4 (r--) =4 + 0 + 0 (numai citire)
  • etc.

Acest tabel prezintă toate combinațiile posibile de privilegii înregistrate digital:

Acum să ne uităm la diferite combinații de notații în numere în relație cu grupurile de utilizatori:

"Proprietar"

"Grup"

"Odihnă"

a executa

a executa

a executa

Tu însuți (cu excepția cazului în care accesezi site-ul prin FTP) și toți ceilalți vizitatori ai resursei tale aparțin grupului „cuvânt” (toți ceilalți), așa că pentru a lucra cu site-ul web trebuie să ne uităm mai întâi la ultimul (al treilea ) cifra acestei intrări.

Pentru ca un fișier script să fie „lansat” atunci când un utilizator lucrează cu un site, va fi suficient ca drepturile asupra acestuia să fie setate, începând de la „4” (r-- – numai în citire) (5,6,7) va face de asemenea, dar acest lucru va fi redundant din punct de vedere al securității).

Pentru directorul în care se află fișierul acestui script, trebuie să setați minimul la „5” (r-x - puteți merge la director și puteți citi conținutul acestuia, nu puteți șterge sau adăuga). 7 va funcționa și el, dar va fi și redundant din punct de vedere al securității.

Dacă aveți nevoie ca scriptul nu numai să citească, ci și să „scrie” unele date (de exemplu, introduse de vizitator), atunci permisiunile minime pentru „dosar” vor fi în continuare „5”, dar pentru „fișierul” pe care îl va avea deja nevoie de „6” (citește și scrie).

Cel mai probabil, pe serverul pe care ați copiat conținutul motorului site-ului dvs., următoarele Chmoduri vor fi instalate pe obiecte:

Dacă ai avea o resursă formată doar din pagini html, atunci ai putea lăsa totul așa. Dar site-urile moderne sunt construite pe motoare și pot exista obiecte care trebuie scrise în numele vizitatorilor din grupul „lume” - o (toți ceilalți). Acestea pot fi directoare utilizate pentru stocarea în cache a paginilor sau acelea în care imaginile etc. vor fi încărcate pe măsură ce lucrați cu site-ul.

Este de la sine înțeles că dacă accesați site-ul prin FTP, puteți scrie în aceste fișiere sau directoare, dar atunci când lucrați cu interfața web ca utilizator obișnuit, este posibil să aveți probleme. Prin urmare, stabilirea anumitor drepturi trebuie abordată selectiv:

pentru toate directoarele în care fișierele ar trebui să fie scrise, dar nu trebuie să fie șterse regulat

pentru folderele în care fișierele ar trebui scrise și șterse (de exemplu, pentru un cache)

pentru fișiere simple doar pentru citire (.html, .php etc.)

pentru fișierele în care poate fi nevoie să fie scrise (de exemplu, cu baze de date .dat)

Cum se atribuie Chmod folosind PHP

Cum pot fi implementate toate acestea în practică pentru site-ul dvs.? În principiu, totul este simplu. Pentru a atribui drepturi de acces puteți:

Dar dacă nu puteți schimba Chmod cu niciun fișier, atunci puteți încerca să le atribuiți folosind instrumente PHP. Puteți folosi următorul cod:

Va trebui să înlocuiți file_name_x.php și directory_name_x cu numele reale ale fișierelor și folderelor pentru care doriți să schimbați modul. În consecință, pentru fișiere va fi setat la 666, iar pentru directoare - 777. Puneți acest cod PHP într-un fișier folosind orice bloc de note text (recomand) și dați-i extensia .php, bine, de exemplu, ca prava.php.

Copiați prava.php prin FTP în directorul în care nu este posibil să atribuiți drepturi de acces folosind mijloace standard. În bara de adrese a browserului, scrieți calea către prava..php) și apăsați „Start” sau introduceți pe tastatură. Asta e, acum privilegiile vor fi complet schimbate folosind PHP.

Pentru Joomla, imediat după instalare, puteți seta 777 la următoarele directoare:

Administrator/backup-uri/ administrator/cache/ administrator/componente/ administrator/module/ administrator/şabloane/ cache/ componente/ imagini/ imagini/bannere/ imagini/povestiri/ language/ language/en-GB/ language/ru-RU/ media/ module/ pluginuri/ pluginuri/conținut/ pluginuri/căutare/ pluginuri/sistem/ șabloane/

După ce instalați toate extensiile pentru Joomla și faceți setările finale, urmează Chmod la majoritatea directoarelor de mai sus pentru a crește securitatea site-ului reveni la 755. Va trebui să lăsați 777 pentru directoarele cu cache, backup și imagini.

Pentru fișierele motor situate în rădăcina site-ului, cu excepția sitemap.xml, este mai bine să setați 444 (numai citire pentru toate grupurile de vizitatori). Pe setting.php se recomandă uneori chiar să-l setați la 400.

Pot da exact același sfat în ceea ce privește setarea drepturilor de acces la obiecte din motoarele SMF și WordPress. Este indicat, dacă este posibil, să-l lăsați permanent. pentru directoare 755(cu excepția memoriei cache, a imaginilor, a directoarelor de rezervă menționate mai sus și, poate, a altora, după cum este necesar) și pentru fișiere - 644.

Este mai bine să setați 444 la fișierele din rădăcina site-ului.

Dacă, atunci când lucrați cu un site, apare o problemă cu incapacitatea de a scrie setări într-un fișier sau imposibilitatea de a crea un fel de director, atunci puteți seta temporar drepturi mai mari pentru ele (777, de exemplu), și apoi returnați totul înapoi (pentru a fi în siguranță). Și sub nicio formă nu ar trebui lăsat(pentru ușurința lucrului cu site-ul) Chmod umflat nerezonabil.

Multă baftă! Ne vedem curând pe paginile site-ului blogului

S-ar putea să fiți interesat

Codificarea textului ASCII (Windows 1251, CP866, KOI8-R) și Unicode (UTF 8, 16, 32) - cum să remediați problema cu crackerele
OpenServer - un server local modern și un exemplu de utilizare pentru a instala WordPress pe un computer
Ce sunt adresele URL, cum diferă linkurile absolute și relative pentru un site?
Căutare Yandex după site și magazin online
Sitemap Sitemap în format xml pentru Yandex și Google - cum să creați un sitemap în Joomla și WordPress sau într-un generator online

(Valoarea inițială a permisiunilor de fișier este rwxrwxrwx - acces complet pentru toată lumea) Eliminarea permisiunii de a executa un fișier pentru toți utilizatorii și grupurile:

$ fisier chmod a-x (rw-rw-rw-)

Pentru a anula scrierea într-un fișier de către un grup și alți utilizatori:

$ fisier chmod go-w (rw-r–r–)

Permisiunea de a executa un fișier de către proprietar:

$ chmod u+x fișier (rwxr–r–)

Acordați grupului aceleași permisiuni ca proprietarul fișierului:

$ chmod g=u fișier (rwxrwxr–)

Anulați citirea și scrierea într-un fișier de către utilizatorii grupului și alți utilizatori:

$ fisier chmod go-rw (rwx–x-)

Exemple de utilizare a comenzii chmod în modul absolut

Permisiunea de a citi, scrie, executa fișierul de către toți utilizatorii și grupurile (control deplin):

Fișier $ chmod 777 (rwxrwxrwx)

Setați permisiunile de citire și scriere pentru proprietar, grup și alți utilizatori:

Fișier $ chmod 666 (rw-rw-rw-)

Setarea accesului complet la fișier pentru proprietar și numai în citire pentru grup și alți utilizatori:

$ chmod 744 fișier (rwxr–r–)

Setarea accesului complet la fișier pentru proprietarul fișierului și interzicerea accesului la grup și alți utilizatori:

Fișier $ chmod 700 (rwx--)

Setarea permisiunilor de citire și scriere pentru proprietarul fișierului și numai citire pentru grup și alții:

$ chmod 644 fișier (rw-r–r–)

Setarea permisiunilor de citire și scriere pentru proprietarul fișierului și grupul său și interzicerea accesului altora:

$ chmod 640 fișier (rw-r-–)

Setarea accesului la fișiere cu permisiunea de citire pentru toți utilizatorii și grupurile:

$ chmod 444 fișier (r–r–r–)

Permisiuni de fișier pentru citire, scriere, execuție de către proprietar și citire, execuție de grup și altele:

$ chmod 755 fișier (rwxr-xr-x)

Permiterea accesului de citire și execuție la un fișier pentru un utilizator și alții și interzicerea accesului la un grup:

$ chmod 505 fișier (r-x-r-x)

Dacă doriți să atribuiți permisiuni tuturor fișierelor din directorul curent, puneți pur și simplu un * (asterisc) după permisiunile pe care le atribuiți:

$chmod 755 *

Ca urmare a executării acestei comenzi, proprietarul va avea drepturi depline (citire, modificare, executare) la toate fișierele din directorul curent, în timp ce grupul și alți utilizatori vor avea doar drepturi de citire și executare. Dacă doriți ca acțiunile dvs. să se propagă recursiv (inclusiv toate subdirectoarele), utilizați opțiunea -R:

$ chmod -R 777 *

Rezultatul executării comenzii de mai sus va fi „a parcurge” recursiv toate subdirectoarele din directorul curent și a atribui acces complet tuturor utilizatorilor și grupurilor. Acest articol acoperă doar câteva exemple de utilizare a comenzii chmod. Dacă doriți să aflați mai multe despre comanda și permisiunile chmod în Linux, aruncați o privire la acest articol.

Modificarea permisiunilor numai pentru directoare (recursiv)

$ find /path/to/base/dir -type d -exec chmod 755() +

$ chmod 755 $(găsiți /cale/la/bază/dir -tip d)

$ chmod 755 `find /path/to/base/dir -type d`

$ find /path/to/base/dir -type d -print0 | xargs -0 chmod 755

Modificați permisiunile numai pentru fișiere (recursiv)

$ find /path/to/base/dir -type f -exec chmod 644() +

$ chmod 644 $(găsiți /cale/la/bază/dir -tip f)

$ chmod 0755 `find ./ -type f`

$ find /path/to/base/dir -type f -print0 | xargs -0 chmod 644

Sintaxa Chmod pentru foldere și fișiere

Să înțelegem mai întâi esența problemei cu Chmod pentru a înțelege ce anume și cum o configuram. Asadar, haideti sa începem. Drepturile de acces sunt împărțite în Chmod pentru fișiere și Chmod pentru directoare. Ele sunt desemnate la fel, dar înseamnă lucruri ușor diferite.

Drepturile de acces (Chmod) la fișiere sunt împărțite în:

    r - dreptul de a citi datele.

    w - dreptul de a modifica conținutul (scrie - modifica doar conținutul, dar nu șterge).

    x - dreptul de a executa dosarul.

Să aruncăm o privire mai atentă asupra drepturilor de execuție ale fișierului. Faptul este că în linux (Unix), orice fișier poate fi executat. Dacă este executabil este determinat nu de extensia sa (conceptul de extensie este absent în sistemul de fișiere Unix), ci de drepturile de acces Chmod. Dacă un fișier are dreptul „X” (chmod x), aceasta înseamnă că poate fi executat.

Acum despre drepturile de acces (Chmod) la folder (director):

    r - dreptul de a citi directorul (puteți citi conținutul directorului, adică să obțineți o listă de obiecte aflate în el)

    w - dreptul de a modifica conținutul directorului (puteți crea și șterge obiecte din acest director, iar dacă aveți permisiunea de scriere, puteți chiar să ștergeți fișiere care nu vă aparțin)

    x - dreptul care vă permite să intrați în director (acest drept este întotdeauna verificat mai întâi și chiar dacă aveți toate drepturile necesare asupra unui obiect care este îngropat adânc în lanțul de directoare, nu aveți dreptul „X” de a accesați cel puțin un directoare de pe calea către acest fișier, apoi nu veți ajunge niciodată la el)

În sistemele Linux (Unix), toate aceste drepturi sunt acordate de administratorul principal al computerului, la care are acces prin introducerea unei parole. Și dacă majoritatea obiectelor au drepturi de acces numai pentru citire (Chmod), atunci virușii nu vor avea practic nimic de făcut pe un astfel de computer, deoarece nu vor putea nici să se scrie singuri acolo și nici atunci nu se vor împlini. Acesta este exact rezultatul pe care trebuie să-l obținem prin setarea drepturilor de acces (Chmod) la obiectele de pe site-ul nostru.

Sintaxa Chmod pentru grupuri de utilizatori

Drepturile de acces în sine (Chmod) sunt împărțite în trei categorii, în funcție de cine accesează obiectul:

    „utilizator” - u (proprietarul direct al fișierului)

    „grup” - g (membru al aceluiași grup cu proprietarul)

    "lume" - o (toate celelalte)

Serverul determină ce grup de utilizatori să vă aloce atunci când vă conectați la server. Când, de exemplu, vă conectați la un server prin FTP, vă conectați cu numele de utilizator (și parola), apoi serverul vă atribuie grupului „utilizator” (“u)”. Alți utilizatori care se conectează și prin FTP la server vor fi alocați grupului „grup” (“g”), iar utilizatorul care vine pe site-ul dvs. folosind browserul lor va fi atribuit grupului „world” (“o”). .

Variațiile celor trei valori posibile „r”, „w” și „x” pentru cele trei categorii „u”, „g” și „o” determină Chmod-ul fișierelor. Dacă nu este specificată o categorie, aceasta este înlocuită cu o cratimă „-”. drepturile de acces (Chmod) sunt specificate secvenţial în ordinea dată:

    mai întâi drepturile proprietarului - „u”

    apoi pentru grup - „g”

    iar la sfârșitul dreptului pentru toți ceilalți - „o”

După ce serverul atribuie un utilizator unui anumit grup, acesta îi acordă drepturi de a acționa asupra obiectelor, după care utilizatorul va putea citi, scrie sau executa fișierul (în funcție de ce are voie să facă grupul său cu acest obiect). Pentru a vizualiza conținutul unui folder, acesta trebuie să aibă atributul de citire „r” (pentru grupul căruia serverul i-a atribuit utilizatorul). Pentru a crea un fișier sau un folder într-unul existent, acesta trebuie să aibă atributul Chmod la intrarea „w”.

Pentru claritate, să ne uităm la un exemplu în care proprietarul fișierului („utilizator” - „u”) are toate drepturile: dreptul de a citi, de a scrie și de a executa, iar toți ceilalți utilizatori au doar dreptul de a citi. Intrarea pentru un astfel de Chmod va arăta astfel: „rwx r-- r--”. Să ne uităm la asta în detaliu: „rwx” (această înregistrare specifică drepturile asupra obiectului pentru proprietar - „u”), „r--” (această înregistrare specifică drepturile asupra aceluiași obiect, dar dacă utilizatorul este atribuit de către server către un grup - „g "), "r--" (această intrare specifică drepturile asupra obiectului pentru toți ceilalți utilizatori - o").

Care este diferența dintre fișierele și folderele Chmod

Nu se poate face nimic

Accesul la director și subdirectoarele acestuia este interzis

Poate vedea și modifica conținutul

Puteți adăuga, șterge, schimba fișierul folderului

Executați dacă fișierul este binar

Utilizatorul poate executa un fișier binar despre care știe că există, dar nu are voie să intre sau să citească directorul

Sintaxa Chmod exprimată în numere (777)

Puteți vedea că aici se folosesc intrări care folosesc litere și cratime latine pentru a descrie drepturile de acces, dar probabil ați întâlnit deja faptul că Chmod este de obicei specificat în formă digitală, de exemplu, binecunoscuta combinație: Chmod 777, care permite totul tuturor. Într-adevăr, drepturile de acces (Chmod) sunt indicate și prin numere:

    w (înregistrare) se înlocuiește cu 2

    x (execuție) se înlocuiește cu 1

0 înseamnă - nu face nimic (ceea ce este notat cu o cratimă în notație alfabetică) Să ne întoarcem la exemplul de drepturi de acces la scriere pe care l-am dat puțin mai devreme: rwx r-- r--. Dacă înlocuim literele și cratimele cu numere în ea, în conformitate cu regula descrisă tocmai și, în același timp, adunăm numerele din fiecare triplă, vom obține forma digitală a acestei intrări: 744. Adică Se pare că suma acestor numere arată Chmod în fișierele sau folderul. De exemplu:

    7 (rwx) = 4 + 2 +1 (drepturi depline)

    5 (r-x)= 4 + 0 + 1 (citește și execută)

    6 (rw-) = 4 + 2 + 0 (citiți și scrieți)

    4 (r--) =4 + 0 + 0 (numai citire)

Acest tabel arată toate combinațiile posibile de Chmod scrise digital:

Acum să ne uităm la diferitele combinații Chmod în numere, în relație cu grupurile de utilizatori:

""Proprietar""

""Grup""

""Odihnă""

a executa

a executa

a executa

Tu însuți (cu excepția cazului în care accesezi site-ul prin FTP) și toți ceilalți vizitatori ai site-ului tău aparțin grupului „cuvânt” (toți ceilalți), așa că pentru a lucra cu site-ul web trebuie să ne uităm mai întâi la ultimul (al treilea ) Numărul Chmod. Pentru ca un script să „ruleze un fișier” atunci când un utilizator lucrează cu un site, va fi suficient ca drepturile de acces (Chmod) să fie setate pe acesta, începând de la „4” (r-- – numai citire) ( 5,6,7 sunt de asemenea potrivite, dar acest lucru va fi inutil din punct de vedere al securității).

„Pentru folderul” în care se află fișierul acestui script, trebuie să setați minimul la „5” (r-x - puteți intra în dosar și puteți citi conținutul acestuia, nu puteți șterge sau adăuga). 7 va funcționa și el, dar va fi și redundant din punct de vedere al securității. Dacă aveți nevoie ca scriptul nu numai să citească, ci și să „scrie” unele date (de exemplu, introduse de utilizator), atunci drepturile minime pentru „dosar” vor fi în continuare „5”, dar pentru „fișier” va avea nevoie deja de drepturile „6” „(citește și scrie).

Cel mai probabil, pe serverul pe care ați copiat conținutul motorului site-ului dvs., următoarele Chmoduri vor fi instalate pe obiecte:

Foldere 755

proprietarul (utilizatorul) poate face totul, grupul și toți ceilalți pot citi doar foldere și le pot introduce, dar le este interzis să scrie fișiere, să schimbe numele și să le ștergă în directoare. (rwxr-xr-x)

Dosarele 644

Dacă ai avea un site web format doar din html, atunci ai putea lăsa totul așa. Dar site-urile moderne sunt construite pe motoare și pot exista obiecte care trebuie scrise în numele utilizatorilor din grupul „lume” - o (toți ceilalți). Acestea pot fi foldere folosite pentru stocarea în cache a paginilor sau cele în care vor fi încărcate imagini etc. pe măsură ce lucrați cu site-ul. Este de la sine înțeles că dacă accesați site-ul prin FTP, puteți crea o intrare în aceste fișiere sau foldere, dar lucrând cu interfața site-ului, ca utilizator obișnuit, este posibil să aveți probleme. Prin urmare, instalarea anumitor Chmoduri trebuie abordată selectiv.

12 august

Am fost confuz cu privire la drepturile mele destul de mult timp - când tocmai am început să lucrez cu Linux. Fără explicații suplimentare, intrarea sub forma „rwx rwx r—” pare destul de neobișnuită și de neînțeles pentru utilizatorii fără experiență. În realitate, este suficient să existe tabele simple de comparație pentru a înțelege cu ușurință acest lucru. Pentru administratorii de sistem și orice fan de Linux, cunoașterea acestor valori este o necesitate!

Deci, drepturile în Linux pentru orice fișier sau folder sunt întotdeauna atribuite celor 3 grupuri de utilizatori:

1. Utilizatorul însuși.

2. Grupul acestui utilizator(drepturile vor fi valabile pentru toți utilizatorii incluși în acest grup).

3. Toți ceilalți utilizatori.

Drepturile pot fi de 3 tipuri:

r- permite vizualizarea conținutului w- permite modificări de conținut X- permite executarea lansărilor

Mai jos este un tabel care arată diferitele combinații Chmod pentru diferite tipuri de obiecte:

Astfel, se poate selecta un tip de acces pentru fiecare grup de utilizatori.

„Drepturi” 'Fişier' 'Pliant'
- Nu se poate face nimic Accesul la director și subdirectoarele acestuia este interzis
r— Puteți citi conținutul Puteți citi conținutul directorului
rw- Poate vedea și modifica conținutul Puteți adăuga, șterge, schimba fișierul director
rwx Citiți, modificați și executați un fișier Puteți citi, șterge, schimba fișiere, puteți face directorul actual, de exemplu. „introduceți” acest director.
r-x Poate fi citit sau executat Puteți intra în director și citi conținutul acestuia; nu puteți șterge sau adăuga fișiere.
-X Executați dacă fișierul este binar Utilizatorul poate executa un fișier binar despre care știe că există, dar nu are voie să intre sau să citească directorul

Tabel de valori:

Puteți vedea că aici intrările care folosesc litere latine și cratime sunt folosite pentru a descrie drepturile de acces. În Linux, comanda chmod este responsabilă pentru atribuirea drepturilor și funcționează numai cu valori numerice. Valorile numerice și ale caracterelor sunt comparate destul de ușor și fără ambiguitate, după cum urmează:

w (înregistrare) se înlocuiește cu 2

X (execuția) se înlocuiește cu 1

0 înseamnă - nu face nimic (ce în notație alfabetică este indicată printr-o cratimă)

Să revenim la exemplul de înregistrare pe care l-am dat puțin mai devreme: rwx rwx r-- . Dacă înlocuim literele și cratimele cu numere în ele, în conformitate cu regula descrisă tocmai și, în același timp, adunăm numerele din fiecare triplă, vom obține forma digitală a acestei intrări: 774.

Acestea. se dovedește că suma acestor numere arată chmod în raport cu fișierele sau folderul. De exemplu:

7 (rwx) = 4 + 2 +1(drepturi depline) 5 (r-x) = 4 + 0 + 1 (citește și execută) 6 (rw-) = 4 + 2 + 0 (Citeste si scrie) 4 (r--) =4 + 0 + 0(doar lectură)

Tabelul prezintă posibile combinații de intrări în numere, în raport cu grupurile de utilizatori:

„Drepturi” 'Proprietar' 'Grup' 'Odihnă'
777 citit
scrie
a executa
citit
scrie
a executa
Citit
scrie
a executa
776 citit
scrie
a executa
citit
scrie
a executa
Citit
scrie
775 citit
scrie
a executa
citit
scrie
a executa
Citiți Execute
774 citit
scrie
a executa
citit
scrie
a executa
Citit
766 citit
scrie
a executa
citit
scrie
Citit
scrie
655 citit
scrie
readexecute Citiți Execute
644 citit
scrie
citit Citit

Comanda de atribuire a drepturilor în sine arată astfel:

chmod „valoarea numerică a drepturilor” „dosarul sau fișierul căruia îi atribuim drepturi”

Exemple

chmod 777 script.sh drepturi complete de scriere, citire și executare pentru toate grupurile de utilizatori pentru conformitatea fișierului script.sh: rwxrwxrwx chmod 644 /home/feanor184/script.sh permisiuni de citire și scriere pentru proprietarul fișierului script.sh care se află în directorul principal rădăcină al utilizatorului feanor184; pentru alte grupuri, acest fișier va fi doar pentru citire. potrivire: rw-r-r- chmod -R 777 /scripturi drepturi complete asupra folderului scripturi și a tuturor atașamentelor acestuia pentru toate grupurile de utilizatori. (comutatorul -R este setat să atribuie drepturi pentru fișierele atașate)