Modulelessen (1/2)
Machtigingen beheren (chmod)
In Linux wordt de toegang tot bestanden en mappen geregeld door een toestemmingssysteem. Elk bestand/map behoort toe aan een eigenaar-gebruiker en een groep gebruikers.
Machtigingen zijn onderverdeeld in drie categorieën ontvangers:
- Gebruiker (u): de eigenaar van het bestand.
- Groep (g): Leden van de groep die aan het bestand is gekoppeld.
- Anderen (o): alle anderen op het systeem.
Voor elke categorie zijn er drie soorten acties toegestaan of geweigerd:
- Lezen (r): bestandsinhoud bekijken of mapinhoud weergeven.
- Schrijven (w): bewerk het bestand of maak/verwijder bestanden in een map.
- Uitvoeren (x): voer een bestand uit (bijvoorbeeld een script) of voer een map in.
Typische notatie weergegeven door ls -l: -rwxr-xr-x.
Het eerste teken geeft het type aan (bijvoorbeeld - voor bestand, d voor map), gevolgd door drie drietallen voor user, group en others.
Machtigingen wijzigen: chmod
Met de opdracht chmod (wijzigmodus) kunt u de bestandsrechten wijzigen. Er zijn twee manieren om ze te specificeren:
1. Symbolische modus
Gebruikt letters en operatoren (+, -, =) om machtigingen toe te voegen, te verwijderen of in te stellen:
chmod u+x script.sh # Adds execute permission (x) to the owner (u)
chmod g-w file.txt # Removes write permission (w) from the group (g)
chmod a+r file.txt # Makes the file readable by everyone (all: u, g, o)2. Octale modus (numeriek)
Gebruikt drie octale cijfers van 0 tot 7, waarbij elk cijfer de som van de machtigingen van de categorie vertegenwoordigt (r=4, w=2, x=1):
7=rwx(4 + 2 + 1)6=rw-(4 + 2)5=r-x(4 + 1)4=r--(4)0=---(geen rechten)
chmod 755 script.sh # Owner: rwx (7), Group: r-x (5), Others: r-x (5)
chmod 600 private.key # Owner: rw- (6), Group: --- (0), Others: --- (0)Probeer het zelf
Oefening 1: Standaardrechten instellen
Stel de machtigingen voor 'script.sh' zo in dat de eigenaar kan lezen, schrijven en uitvoeren (rwx), terwijl de groep en anderen alleen kunnen lezen en uitvoeren (r-x). Gebruik de octale modus.
Toon hint
De octale code voor rwx is 7 (4+2+1), en voor r-x is deze 5 (4+1). Gebruik dus chmod 755.
Oplossing beschikbaar na 3 pogingen
Oefening 2: Bescherm een privésleutel
Wijzig de machtigingen van het bestand 'private.key' om het alleen door de eigenaar leesbaar en beschrijfbaar te maken (rw-), waarbij alle toegang voor de groep en anderen wordt verwijderd (---).
Toon hint
Gebruik chmod met octale code 600 (eigenaar heeft 4+2, groep 0, anderen 0).
Oplossing beschikbaar na 3 pogingen
Oefening 3: Maak een bestand uitvoerbaar voor iedereen
Maak het bestand 'runner.sh' uitvoerbaar voor alle gebruikerscategorieën met behulp van de symbolische modus (a+x).
Toon hint
Gebruik de syntaxis chmod a+x gevolgd door de bestandsnaam.
Oplossing beschikbaar na 3 pogingen