Calculator chmod
Convertește permisiunile Unix între căsuțe, notația octală (755) și cea simbolică (rwxr-xr-x), cu setuid, setgid, sticky bit și comenzi chmod gata de folosit.
| Clasă | Citire (4) | Scriere (2) | Execuție (1) |
|---|---|---|---|
| Proprietar (u) | |||
| Grup (g) | |||
| Alții (o) |
Comenzi
- Numeric
- Simbolic
- Așa cum arată ls -l
- Modificare relativă față de {from}
Cine ce poate face
Presetări uzuale
Cum folosești calculatorul chmod
- Pornește de la orice reprezentare: bifează căsuțele din tabelul Permisiuni, scrie un mod în Octal (de ex. 755 sau 4755) sau lipește un șir precum
rwxr-xr-xoridrwxr-sr-x(direct dinls -l) în Simbolic (de ex. rwxr-xr-x). Celelalte vederi se actualizează instantaneu. - Setează Biți speciali dacă ai nevoie de ei: Setuid (4000), Setgid (2000) sau Sticky (1000). Modul octal va avea atunci patru cifre.
- Introdu Numele fișierului sau al directorului, bifează Este un director și Recursiv (-R) după caz și copiază comanda Numeric sau Simbolic.
- Pentru a testa o modificare relativă, scrie-o în Modificare simbolică (de ex. u+x,go-w) și apasă Aplică modificarea.
Butoanele Presetări uzuale încarcă moduri tipice, precum 644, 600, 755 sau 2775. Linia Modificare relativă față de … arată expresia chmod care transformă ultima presetare sau ultimul mod scris în cel curent, de exemplu a+x de la 644 la 755.
Cum se citesc permisiunile Unix
Fiecare fișier are trei clase de utilizatori: proprietarul (u), grupul (g) fișierului și alții (o), adică toți ceilalți. Fiecare clasă primește trei permisiuni, fiecare cu o valoare numerică: citire = 4, scriere = 2, execuție = 1. Adunându-le se obține o cifră octală pentru fiecare clasă: rwx = 7, rw- = 6, r-x = 5, r– = 4. De aceea rwxr-xr-x înseamnă 755.
Pe un director, aceleași litere au un sens ușor diferit, pe care lista Cine ce poate face îl explică: r permite listarea intrărilor, w permite crearea, redenumirea și ștergerea intrărilor (împreună cu x), iar x permite intrarea în director și accesul la fișierele din el.
Biții speciali
- Setuid (4000) pe un executabil îl face să ruleze cu drepturile proprietarului fișierului.
passwdîl folosește pentru a scrie în baza de date de parole. Apare casîn poziția de execuție a proprietarului, sauSdacă lipsește execuția. - Setgid (2000) pe un executabil îl rulează cu drepturile grupului. Pe un director, fișierele noi moștenesc grupul directorului, ceea ce păstrează coerente dosarele de proiect comune (2775).
- Sticky (1000) pe un director permite doar proprietarului unui fișier să îl șteargă sau să îl redenumească, chiar dacă toți pot scrie acolo.
/tmpeste 1777. Apare cat(sauT) în poziția de execuție a celorlalți.
Modificări simbolice
O expresie simbolică are forma „cine, operator, permisiuni”: u+x adaugă execuția pentru proprietar, go-w elimină scrierea pentru grup și alții, a=r setează doar citirea pentru toți, g=u copiază drepturile proprietarului la grup. Separă clauzele prin virgule. Litera mare X adaugă execuția doar pentru directoare sau pentru fișierele care au deja un bit de execuție, ceea ce face chmod -R a+X sigur pe un arbore cu fișiere de tipuri diferite. Când „cine” lipsește, instrumentul aplică modificarea tuturor claselor, așa cum face GNU chmod cu un umask 0.
Sfaturi de securitate
Evită 777. Acest mod permite oricărui cont de pe mașină, inclusiv unui proces de server web compromis, să modifice sau să înlocuiască fișierul. Alegeri sigure obișnuite sunt 644 pentru fișiere, 755 pentru directoare și scripturi, 600 pentru chei private și 700 pentru directoare private. Calculatorul avertizează asupra modurilor cu scriere pentru toți, asupra lui 777 și asupra programelor setuid.
Întrebări frecvente
Care este diferența dintre chmod 755 și chmod 775?
Cu 755 poate scrie doar proprietarul; grupul și ceilalți pot citi și executa. 775 dă drept de scriere și grupului, ceea ce se potrivește directoarelor comune ale unei echipe.
Ce permisiuni trebuie să aibă o cheie privată SSH?
600 (rw-------). OpenSSH refuză să folosească o cheie privată care poate fi citită de grup sau de alții.
De ce modul octal are uneori patru cifre?
Prima cifră conține biții speciali: 4 pentru setuid, 2 pentru setgid, 1 pentru sticky. 0755 și 755 sunt același mod.
Funcționează chmod 644 pe un director?
Setează biții, dar fără x nimeni nu poate intra în director sau deschide fișierele din el. Folosește 755 sau 750 pentru directoare.
Ce înseamnă un S sau T majuscul în ls -l?
Bitul special este setat, dar bitul de execuție corespunzător nu. De obicei este o greșeală: adaugă permisiunea de execuție sau elimină bitul special.
Instrumente similare
- Convertor de baze numerice Convertește numere între binar, octal, zecimal, hexazecimal și orice bază de la 2 la 36, cu complement față de doi, fracții și rezolvare pas cu pas.
- Generator de redirecționări .htaccess Generează redirecționări 301 și 302 pentru .htaccess sau Nginx, forțează HTTPS și www, mută un domeniu, cu verificarea buclelor și a lanțurilor.
- Generator de expresii cron Construiește o expresie cron câmp cu câmp, citește-o pe înțelesul tuturor, vezi următoarele rulări în orice fus orar și convertește-o în systemd sau AWS.