In dit artikel
Wat is chmod?
chmod (change mode) is een Unix- en Linux-commando dat bestands- en mappermissies instelt. Elk bestand op een Unix-systeem heeft drie permissiecategorieen: eigenaar, groep en anderen. Elke categorie kan onafhankelijk lees-, schrijf- en uitvoerrechten krijgen.
Het begrijpen van chmod is essentieel voor systeembeheer, webserverconfiguratie en veilig bestandsbeheer. Onjuiste permissies zijn een van de meest voorkomende oorzaken van beveiligingsproblemen op Linux-servers.
Hoe chmod-permissies werken
Permissies kunnen in twee notaties worden uitgedrukt: numeriek (octaal) en symbolisch. Numerieke notatie gebruikt drie cijfers (bijv. 755).
- Lezen (r = 4) — bestandsinhoud bekijken of mapinhoud opsommen
- Schrijven (w = 2) — bestandsinhoud wijzigen of bestanden toevoegen/verwijderen in een map
- Uitvoeren (x = 1) — een bestand als programma uitvoeren of een map betreden met cd
Elk cijfer is de som van zijn permissies: 7 = lezen + schrijven + uitvoeren (4+2+1), 6 = lezen + schrijven (4+2), 5 = lezen + uitvoeren (4+1), 4 = alleen lezen.
Probeer gratis — geen aanmelding vereist
chmod-permissies berekenen →Veelgebruikte permissiewaarden
Dit zijn de meest gebruikte chmod-waarden en hun typische toepassingen.
- 755 (rwxr-xr-x) — standaard voor uitvoerbare bestanden en mappen; eigenaar heeft volledige toegang
- 644 (rw-r--r--) — standaard voor reguliere bestanden; eigenaar kan lezen en schrijven
- 700 (rwx------) — prive-map of script; alleen de eigenaar heeft toegang
- 600 (rw-------) — prive-bestand zoals SSH-sleutels; alleen de eigenaar kan lezen en schrijven
- 777 (rwxrwxrwx) — volledige toegang voor iedereen; bijna nooit gepast en is een beveiligingsrisico
Beveiligingsimplicaties
Het principe van minimale privileges is direct van toepassing op bestandspermissies: verleen alleen de minimaal vereiste permissies.
Speciale permissiebits voegen een extra laag toe: SUID, SGID en de sticky bit op mappen voorkomen dat gebruikers bestanden verwijderen die niet van hen zijn.
Tips en best practices
Volg deze richtlijnen voor veilige en functionele bestandspermissies.
- Mappen hebben uitvoerpermissie nodig — zonder deze kunnen gebruikers de map niet betreden of bestanden erin openen
- Gebruik recursieve chmod voorzichtig — chmod -R 755 maakt alle bestanden uitvoerbaar; gebruik find met -type f en -type d apart
- Stel umask-standaarden in — umask 022 maakt bestanden als 644 en mappen als 755
Veelgestelde vragen
Wat is het verschil tussen 755 en 777?
Met 755 heeft de eigenaar volledige controle terwijl groep en anderen alleen kunnen lezen en uitvoeren. Met 777 heeft iedereen volledige controle. 777 is bijna nooit nodig en vormt een beveiligingsrisico.
Waarom hebben mappen uitvoerpermissie nodig?
Het uitvoerbit op een map bepaalt het vermogen om erin te navigeren. Zonder uitvoerpermissie kan een gebruiker de map niet betreden. Daarom hebben mappen doorgaans 755 terwijl bestanden 644 hebben.
Wat zijn de standaardpermissies voor nieuwe bestanden?
Standaardpermissies hangen af van de umask-instelling. Met de gangbare umask van 022 worden nieuwe bestanden aangemaakt met 644 en nieuwe mappen met 755.