Pitanja
Kako da bezbedno popravim ceo veb root?
find /var/www -type d -exec chmod 755 {} + i find /var/www -type f -exec chmod 644 {} +, zatim chown -R www-data: /var/www. Nikad chmod -R 777.
Ceo sistem dozvola staje na jednu stranicu. Odštampajte je, ili držite otvoren chmod kalkulator za sve interaktivno.
| -rwxr-xr-x | tip, vlasnik rwx, grupa r-x, ostali r-x |
| r = 4, w = 2, x = 1 | saberite po grupi → oktalna cifra |
| rwx r-x r-x | = 7 5 5 = 755 |
| d l c b p s | direktorijum, simbolički link, znakovni uređaj, blok uređaj, pipe, socket |
| 644 | datoteke: vlasnik rw, svi r |
| 755 | direktorijumi, skripte, binarne datoteke |
| 600 / 700 | privatna datoteka / direktorijum (SSH ključevi, .env, ~/.ssh) |
| 664 / 775 | datoteka / direktorijum sa pisanjem za grupu |
| 2775 | deljeni direktorijum: nove datoteke nasleđuju grupu (setgid) |
| 1777 | /tmp: svako piše, samo vlasnici brišu (sticky) |
| 4755 | setuid binarna datoteka (passwd, sudo) |
| 777 | gotovo uvek pogrešno |
| u g o a | korisnik (vlasnik), grupa, ostali, svi |
| + - = | dodaj, ukloni, postavi tačno |
| chmod u+x f | vlasnik sme da izvršava |
| chmod go-w f | grupa i ostali gube pisanje |
| chmod a=r f | svi samo čitanje |
| chmod u=rwx,g=rx,o= f | = 750 |
| chmod -R u=rwX,go=rX dir | rekurzivno; X = izvršavanje samo za direktorijume i već izvršne datoteke |
| chmod g+s dir | setgid na direktorijumu |
| chmod +t dir | sticky bit |
| chmod --reference=a b | kopiraj mod od a na b |
| 4 setuid | pokreće se kao vlasnik datoteke; prikazuje se kao s na vlasnikovom x |
| 2 setgid | pokreće se kao grupa; na direktorijumima: nasleđivanje grupe; s na x grupe |
| 1 sticky | u direktorijumima: samo vlasnik sme da briše; t na x ostalih |
| S / T | veliko slovo = specijalni bit postavljen bez izvršavanja (obično greška) |
| chown user file | promeni vlasnika (samo root) |
| chown user:group file | vlasnik i grupa |
| chown -R www-data: /var/www | rekurzivno; prazna grupa = korisnikova login grupa |
| chgrp group file | samo grupa (član može da uradi) |
| chown -h | promeni sam simbolički link, a ne odredište |
| umask 022 | datoteke 644, direktorijumi 755 (podrazumevano) |
| umask 077 | datoteke 600, direktorijumi 700 (privatno) |
| umask 002 | datoteke 664, direktorijumi 775 (grupni rad) |
| UMask=0077 | u systemd [Service] sekciji |
| find . -type f -perm -o+w | datoteke u koje svi mogu da pišu |
| find / -perm -4000 -type f | setuid binarne datoteke |
| find . -type d -exec chmod 755 {} + | popravi samo direktorijume |
| find . -type f -exec chmod 644 {} + | popravi samo datoteke |
| stat -c '%a %U %G %n' * | oktalni mod, vlasnik, grupa, ime |
| ls -ld dir | sam direktorijum, a ne njegov sadržaj |
| getfacl file | prikaži; + u ls -l znači da postoji |
| setfacl -m u:alice:rw file | daj alice rw |
| setfacl -m d:g:dev:rwx dir | podrazumevani ACL za nove datoteke u dir |
| setfacl -b file | ukloni sve ACL-ove |
x = može se ući; r = može se izlistati; w = mogu se praviti/brisati stavke.w na direktorijumu, a ne na datoteci.ls -l pre chmod 777.Rezultati i poruke ovog alata prikazuju se na engleskom.
find /var/www -type d -exec chmod 755 {} + i find /var/www -type f -exec chmod 644 {} +, zatim chown -R www-data: /var/www. Nikad chmod -R 777.