- Leren
- Informatica & ICT
- IT, netwerken & cloud
- Linux: commandoregel, shellscripts, gebruikers en services
- Linux-gebruikers en toegangsrechten
Linux-gebruikers, groepen en toegangsrechten
sudo. Maak en beheer gebruikers en groepen, lees en wijzig eigenaarschap en toegangsrechten met chown en chmod, stel verstandige standaardrechten in met umask en gebruik SUID, SGID en de sticky bit. Spoor tot slot de oorzaak van een foutmelding “Permission denied” op en los die op met de kleinst mogelijke veilige wijziging.BeginnerLes 5 van 7 in Cursus Linux: commandoregel, shellscripts, gebruikers en services
Wat je leert
- Leg uit hoe Linux elke gebruiker en groep aan een nummer herkent, maak onderscheid tussen rootaccounts, gewone gebruikersaccounts en systeemaccounts en lees de bestanden waarin accounts, groepen en wachtwoordgegevens staan.
- Maak onderscheid tussen rootaccounts, gewone gebruikersaccounts en systeemaccountsBeschrijf de drie soorten accounts, de gebruikers-ID waaraan elk account wordt herkend en de commando's die tonen wie je bent en wie is aangemeld.
- Leg uit wat primaire en aanvullende groepen zijnLeg uit hoe groepen meerdere gebruikers dezelfde toegang geven, wat het verschil is tussen de primaire groep en aanvullende groepen van een gebruiker en welke groepen speciale rechten geven.
- Lees de bestanden passwd, shadow en groupLees elk veld van /etc/passwd, /etc/shadow en /etc/group, leg uit waarom wachtwoordhashes apart worden bewaard en leid wachtwoorddatums af uit het shadow-bestand.
- Maak onderscheid tussen rootaccounts, gewone gebruikersaccounts en systeemaccounts
- Werk als gewone gebruiker, verhoog je rechten met sudo of su alleen voor de commando's die dat nodig hebben en geef andere gebruikers precies de beheerdersrechten die ze nodig hebben.
- Gebruik sudo en su om als root te werkenVergelijk su en sudo, voer afzonderlijke commando's uit met verhoogde rechten en vermijd de gebruikelijke valkuilen van sudo, zoals bestanden met root als eigenaar en omleiding die mislukt.
- Verleen sudo-rechten met het sudoers-beleidLees en schrijf sudoers-regels met visudo, maak een gebruiker beheerder via de juiste groep en beperk andere gebruikers tot de paar commando's die ze nodig hebben.
- Gebruik sudo en su om als root te werken
- Voeg gebruikers en groepen toe via de commandoregel, stel wachtwoorden in en beheer ze, wijzig en verwijder accounts en beheer wie tot welke groep behoort.
- Maak gebruikersaccounts met useradd en adduserMaak gewone accounts en systeemaccounts met useradd of adduser, weet welke bestanden en standaardinstellingen elk commando gebruikt en controleer het resultaat.
- Beheer wachtwoorden en wijzig of verwijder accountsStel wachtwoorden in, blokkeer ze en laat ze verlopen, pas wachtwoordverloop toe, wijzig accountgegevens met usermod en verwijder accounts zonder problemen achter te laten.
- Maak groepen en beheer groepslidmaatschappenMaak, hernoem en verwijder groepen, voeg leden toe en verwijder ze, en richt een map in die een team kan delen.
- Maak gebruikersaccounts met useradd en adduser
- Lees de eigenaar, groep en rechtenbits van een bestand of directory, leg uit wat elk recht toestaat en wijzig ze met chmod, chown en chgrp.
- Lees eigenaarschap en toegangsrechten af uit een bestandslijstLees elk onderdeel van een ls -l-regel en bepaal welke rechtenklasse voor een bepaalde gebruiker geldt.
- Leg uit wat leesrecht, schrijfrecht en uitvoerrecht toestaanLeg uit wat r, w en x toestaan op een gewoon bestand en op een directory en voorspel of een bewerking zoals lezen, uitvoeren, aanmaken of verwijderen lukt.
- Wijzig toegangsrechten met chmodStel toegangsrechten in en wijzig ze met symbolische en octale rechtennotatie, zet de ene vorm om in de andere en wijzig hele directorybomen veilig.
- Wijzig eigenaarschap met chown en chgrpWijzig de eigenaar en groepseigenaar van bestanden en directorybomen, weet wie dat mag doen en voorspel wie eigenaar is van nieuw gemaakte, gekopieerde en verplaatste bestanden.
- Lees eigenaarschap en toegangsrechten af uit een bestandslijst
- Kies de rechten die nieuwe bestanden krijgen, gebruik SUID, SGID en de sticky bit waar dat helpt en spoor de oorzaak van een fout met toegangsrechten op en los die op met de kleinst mogelijke veilige wijziging.
- Stel standaardrechten in met umaskLeid de toegangsrechten van nieuwe bestanden en directory's af uit de umask en stel een umask in voor een sessie of permanent.
- Gebruik SUID, SGID en de sticky bitLeg de drie speciale rechtenbits uit, herken ze in bestandslijsten, stel ze in met chmod en gebruik ze veilig voor programma's, teammappen en gedeelde directory's.
- Onderzoek problemen met toegangsrechten en pas het principe van minimale rechten toeSpoor de oorzaak van een foutmelding “Permission denied” stap voor stap op, kies de kleinst mogelijke veilige oplossing en houd gevoelige bestanden en beheerdersrechten strikt afgeschermd.
- Stel standaardrechten in met umask
Linux-gebruikers en toegangsrechten: uitleg
1Begrijp gebruikers, groepen en accountbestanden
Linux kent aan elke persoon en elke actieve service een identiteit toe. Die identiteit verbindt een gebruikers-ID en groepslidmaatschappen met de bestanden waartoe het proces toegang heeft. Door je huidige identiteit, de actieve aanmeldsessies en de accountgegevens te bekijken, kun je toegangsbeslissingen gemakkelijker uitleggen. Het openbare accountbestand beschrijft welk account het is, terwijl beschermde wachtwoordgegevens bepalen hoe aanmelden met een wachtwoord en wachtwoordverloop werken.
1.1 Maak onderscheid tussen rootaccounts, gewone gebruikersaccounts en systeemaccounts
Elk commando draait met een identiteit. Linux gebruikt die identiteit om te bepalen welke bestanden het commando mag openen en welke instellingen het mag wijzigen. Een gebruikersaccount kan een persoon of een service op de achtergrond vertegenwoordigen.
Het nummer achter de naam
De kernel herkent een account aan de gebruikers-ID (UID). Namen zoals alice maken het nummer gemakkelijker te herkennen, maar de toegangsrechten volgen het nummer. Het rootaccount heeft UID 0 en de homedirectory is /root. Een account met een andere naam en UID 0 heeft dezelfde bevoegdheden als de supergebruiker.
Het account van een gewone gebruiker is het dagelijkse account van een persoon. Op de meeste distributies beginnen UID's van gewone gebruikers bij 1000; UID_MIN in /etc/login.defs stelt die grens in. Een gewone gebruiker kan eigen bestanden wijzigen en alle andere bestanden waarvoor de toegangsrechten dat toestaan. Voor het wijzigen van beschermde systeeminstellingen zijn verhoogde rechten nodig.
Een systeemaccount geeft een service een eigen beperkte identiteit. De meeste hebben een UID onder 1000 en een shell zoals /usr/sbin/nologin. Het speciale account nobody heeft vaak UID 65534, dus aan het bereik alleen kun je niet elk serviceaccount herkennen. Debian en Ubuntu gebruiken www-data voor webservices; een SSH-service kan sshd gebruiken.
Bekijk je huidige identiteit
Voer whoami uit voor je gebruikersnaam of id voor de nummers en groepen. Bijvoorbeeld:
uid=1001(alice) gid=1001(alice) groups=1001(alice),27(sudo),1005(developers)
Lees de uitvoer in drie delen. Alice heeft UID 1001. Haar primaire groep is alice, GID 1001. Haar groepenlijst bevat ook sudo en developers. Ze is een gewone gebruiker, geen root: de groep sudo kan toestemming geven voor commando's met verhoogde rechten, maar haar huidige shell draait nog steeds als Alice.
Veel shells tonen # voor root en $ voor een gewone gebruiker. Een prompt is aanpasbaar, dus bekijk id als de identiteit belangrijk is. Het eerste account dat tijdens de installatie wordt gemaakt, is vaak een gewoon account met sudo-toegang, ook op Ubuntu; doordat het als eerste is gemaakt, wordt het geen root.
Controleer aanmeldsessies
| Commando | Wat het toont |
|---|---|
who | Huidige aanmeldsessies, terminals en aanmeldtijden |
w | Huidige sessies, activiteit, actieve tijd en systeembelasting |
last | Geregistreerde eerdere aanmeldingen en herstarts, nieuwste eerst |
wtmpdb last | Aanmeldgeschiedenis op systemen die wtmpdb gebruiken |
Deze commando's beantwoorden een andere vraag dan whoami: ze tonen sessies, niet alleen de identiteit van je shell. Debian 13 is een systeem dat wtmpdb gebruikt voor de geschiedenis.
Afzonderlijke identiteiten ondersteunen het principe van minimale rechten, herleidbaarheid van handelingen en isolatie. Een webservice kan de bestanden lezen die deze aanbiedt zonder de privédocumenten van elke gebruiker te krijgen. Logboeken kunnen tonen welk account heeft gehandeld. Als de service wordt overgenomen, begint de aanval met de rechten van dat serviceaccount. Root kan gewone lees- en schrijfbeperkingen op bestanden omzeilen, dus een tweede account met UID 0 is een ernstig beveiligingsrisico.
Belangrijkste punten
- Linux houdt gebruikersidentiteiten bij aan de hand van de UID; UID 0 heeft rootrechten.
- Gewone accounts zijn voor mensen; systeemaccounts geven services een beperkte identiteit.
idtoont je identiteit en actieve groepen; lidmaatschap vansudomaakt je shell geen root.whoenwtonen huidige sessies;lastofwtmpdb lasttoont de geregistreerde geschiedenis.
1.2 Leg uit wat primaire en aanvullende groepen zijn
Een bestand delen met een team is gemakkelijker als het team een groep heeft. Wijs het bestand toe aan die groep, geef de groep de benodigde rechten en beheer het lidmaatschap als mensen erbij komen of vertrekken.
Eén primaire groep, extra lidmaatschappen
Een groep heeft een naam en een numerieke groeps-ID (GID). Elke gebruiker heeft één primaire groep, opgeslagen als GID in /etc/passwd. Een nieuw bestand krijgt normaal gesproken de primaire groep van het proces dat het maakt. Later volgt een andere regel voor het toewijzen van de groep van een nieuw bestand in een SGID-directory.
Gebruikers kunnen ook meerdere aanvullende groepen hebben. Die lidmaatschappen voegen groepsidentiteiten toe aan hun processen; de gebruiker hoeft niet telkens van primaire groep te wisselen om een bestand van een ander team te openen. Zowel primaire als aanvullende groepen tellen mee wanneer Linux controleert of de gebruiker tot de groep van een bestand behoort.
De meeste distributies maken naast elke gewone gebruiker een persoonlijke gebruikersgroep. Alice kan gebruikersnaam alice, UID 1001, primaire groep alice en GID 1001 hebben. Dit blijven afzonderlijke gebruikers- en groepsidentiteiten, ook als hun namen en nummers overeenkomen. Een bestand dat aan Alice' persoonlijke groep is toegewezen, wordt niet met het hele team gedeeld.
Bekijk een lidmaatschap
Gebruik groups voor de namen van je eigen groepen. groups bob en id bob vragen Bobs lidmaatschappen op; id -Gn toont de groepsnamen van het huidige proces zonder nummers. Het opzoeken van een groep kan dit tonen:
getent group developers
developers:x:1005:alice,bob
De groep heet developers, de GID is 1005 en Alice en Bob staan vermeld als aanvullende leden. Een account met primaire GID 1005 behoort ook tot de groep, zelfs als de naam ontbreekt in die laatste lijst. Gebruik id met de naam van een persoon om het volledige lidmaatschap te controleren, in plaats van alleen op die lijst te vertrouwen.
Pas de rechten van een groep toe
Stel dat plan.txt toebehoort aan bob:developers en rechten rw-r----- heeft. Alice is Bob niet, maar behoort wel tot developers. Daarom gebruikt ze het middelste drietal toegangsrechten, r--: ze kan het plan lezen, maar de inhoud niet wijzigen. Chen is niet de eigenaar en behoort niet tot de groep, dus voor hem geldt het laatste drietal, ---.
Als je de groepsnaam bij een bestand wijzigt, ontstaan niet vanzelf toegangsrechten. Als het drietal van de groep --- is, krijgen leden via die klasse nog steeds geen toegang. Het groepseigenaarschap geeft het team aan; de rechtenbits bepalen wat het team kan doen.
Herken groepen met veel rechten
Sommige lidmaatschappen geven veel meer dan toegang tot een projectmap. Debian en Ubuntu geven de groep sudo gewoonlijk toestemming voor beheercommando's; Fedora en Red Hat Enterprise Linux gebruiken hiervoor gewoonlijk wheel. Op Debian en Ubuntu geeft adm toegang tot veel systeemlogboeken. De groep docker beheert de Docker-service en geeft feitelijk controle op rootniveau.
Ga voordat je iemand aan een groep toevoegt na waartoe die groep toegang heeft. Een projectgroep kan een beperkte manier zijn om werk te delen, terwijl een beheerdersgroep controle over de hele computer kan geven.
Belangrijkste punten
- Elke gebruiker heeft één primaire groep en kan meerdere aanvullende groepen hebben.
- Nieuwe bestanden krijgen normaal gesproken de primaire groep van het proces dat ze maakt.
- Een persoonlijke gebruikersgroep bevat meestal alleen de bijbehorende gebruiker.
- Controleer alle groepen van een gebruiker met
id username; primaire leden hoeven niet in/etc/groupte staan. - Groepseigenaarschap en groepsrechtenbits werken samen.
- Behandel lidmaatschappen zoals
sudo,wheelendockerals toegang met veel rechten.
1.3 Lees de bestanden passwd, shadow en group
Linux bewaart openbare accountgegevens apart van wachtwoordgegevens. Als je de volgorde van de velden leest, kun je de identiteit, aanmeldinstellingen en het wachtwoordbeleid van een account uitleggen zonder de bestanden met de hand te wijzigen.
Lees een accountvermelding
/etc/passwd heeft zeven velden, gescheiden door dubbele punten:
name:password:UID:GID:comment:home:shell
alice:x:1001:1001:Alice Moreau:/home/alice:/bin/bash
Alice' UID en primaire GID zijn allebei 1001. Het commentaar, ook wel het GECOS-veld genoemd, geeft haar volledige naam. Haar homedirectory is /home/alice en haar loginshell is Bash. De x verwijst naar wachtwoordgegevens in /etc/shadow; die betekent niet dat haar wachtwoord leeg is.
Gewone gebruikers kunnen /etc/passwd lezen, normaal gesproken met rechten 644. Programma's hebben de openbare gegevens nodig om opgeslagen UID's in namen om te zetten. Doordat wachtwoordhashes in een apart beschermd bestand staan, kan niet elke lokale gebruiker ze lezen.
Lees wachtwoordgegevens
/etc/shadow heeft negen velden: naam, wachtwoordhash, dag van de laatste wijziging, minimumduur, maximumduur, waarschuwingsdagen, inactiviteitsdagen, dag waarop het account verloopt en een gereserveerd veld. Root kan het bestand lezen; sommige systemen geven ook de groep shadow toegang.
Een wachtwoordhash is een eenrichtingsresultaat, geen omkeerbare versleuteling. Bij het aanmelden past het systeem de opgeslagen methode en salt toe op het ingevoerde wachtwoord en vergelijkt het resultaat met de opgeslagen hash. Een willekeurige salt laat de hashes verschillen, zelfs als twee gebruikers hetzelfde wachtwoord kiezen. SHA-512 crypt-vermeldingen gebruiken $6$salt$hash, eventueel met een veld rounds=N; yescrypt gebruikt $y$parameters$salt$hash.
Een ! aan het begin blokkeert het wachtwoord terwijl de hash behouden blijft. Een veld dat alleen !, !! of * bevat, heeft geen bruikbaar wachtwoord. Andere aanmeldmethoden, zoals SSH-sleutels, kunnen bij een geblokkeerd wachtwoord nog werken.
Bereken de datums
Bekijk deze verkorte hashvermelding:
alice:$y$j9T$...:20514:0:90:7:::
Datums tellen dagen sinds 1 januari 1970, UTC. Dag 20514 is 2 maart 2026. Een minimumduur van 0 staat een onmiddellijke wachtwoordwijziging toe; een maximum van 90 betekent dat het wachtwoord op 31 mei 2026 verloopt. De waarschuwing van zeven dagen begint op 24 mei. Lege velden voor inactiviteit en accountverloop stellen geen van beide grenzen in. Een waarde van 0 voor de laatste wijziging dwingt bij de volgende aanmelding een wijziging af; een maximum van 99999 is in de praktijk een zeer lange levensduur van het wachtwoord. Wachtwoordverloop en accountverloop zijn aparte velden.
Lees groepsvermeldingen veilig
/etc/group gebruikt name:password:GID:members. In developers:x:1005:alice,bob bevat het laatste veld de aanvullende leden. Primaire leden vind je via de GID in hun passwd-vermeldingen. Het beschermde /etc/gshadow bewaart gegevens over groepswachtwoorden en groepsbeheerders.
Gebruik getent passwd alice of getent group developers om gegevens op te zoeken. getent raadpleegt zowel geconfigureerde accountbronnen als lokale bestanden. cut -d: -f1,3 /etc/passwd toont lokale namen en UID's. Wijzig vermeldingen met accountcommando's zoals usermod en passwd; als direct bewerken onvermijdelijk is, vergrendelen vipw en vigr de bestanden tijdens het bewerken.
Belangrijkste punten
/etc/passwdbewaart openbare identiteits- en aanmeldgegevens;xverwijst naar/etc/shadow./etc/shadowbewaart wachtwoordhashes, wachtwoordverloop en accountverloop apart.- Een salt zorgt dat gelijke wachtwoorden verschillende opgeslagen hashes opleveren.
- Bij een geblokkeerd wachtwoord kunnen andere aanmeldmethoden beschikbaar blijven.
- Shadow-datums tellen dagen vanaf 1 januari 1970, UTC.
/etc/groupvermeldt aanvullende leden; het primaire lidmaatschap komt uit/etc/passwd.- Gebruik accountbeheercommando's om vermeldingen te wijzigen en
getentom ze op te zoeken.
2Voer beheercommando's veilig uit
Beheercommando's kunnen het hele systeem wijzigen, dus de identiteit waarmee ze worden uitgevoerd is belangrijk. Met sudo kan een bevoegde gebruiker een specifiek commando met verhoogde rechten uitvoeren en wordt de poging vastgelegd; su opent een shell van een andere gebruiker. Met een passend beleid kun je een team één onderhoudsactie toestaan zonder een algemene rootshell te geven. De regel lezen, veilig bewerken en het daadwerkelijk toegepaste resultaat controleren horen allemaal bij het verlenen van die toegang.
2.1 Gebruik sudo en su om als root te werken
Beheertaken hebben meer toegang nodig dan dagelijks werk. Houd je gewone shell onder je eigen account en verhoog je rechten voor de actie die dat nodig heeft. Bestanden die door een commando met verhoogde rechten zijn gemaakt, kunnen van root zijn, zelfs als ze in je homedirectory staan.
Kies sudo of su
| Commando | Wat start | Gewoonlijk gevraagd wachtwoord |
|---|---|---|
su | Een shell als root | Het wachtwoord van root |
su - bob | Een loginshell als Bob | Bobs wachtwoord |
sudo command | Eén commando als root | Je eigen wachtwoord |
sudo -u postgres psql | Eén commando als postgres | Je eigen wachtwoord |
Een loginshell laadt de aanmeldomgeving van de doelgebruiker, waaronder de homedirectory en opstartbestanden. Gebruik exit om een met su gestarte shell te verlaten. sudo -i opent een rootloginshell; sudo -s opent een rootshell. Die zijn handig voor een reeks samenhangende beheertaken, maar elk commando in die shell heeft verhoogde rechten totdat je de shell verlaat.
Sudo controleert het beleid voordat het commando wordt uitgevoerd en legt de poging vast. Logboeken kunnen naar het systeemlogboek, /var/log/auth.log op systemen uit de Debian-familie of /var/log/secure op systemen uit de Red Hat-familie gaan. sudo -l toont welke commando's je account mag uitvoeren. Toestemming om sudo te gebruiken is een beleidsbeslissing en volgt niet uit het kennen van het wachtwoord van iemand anders.
Begrijp authenticatie
Standaard vraagt sudo om het wachtwoord van de gebruiker die sudo aanroept, niet om dat van root. Het beleid kan dat gedrag wijzigen. Het authenticatietijdstempel van sudo zelf geldt standaard vijf minuten; distributie-instellingen kunnen een andere waarde gebruiken, zoals 15 minuten. Het tijdstempel geldt normaal gesproken binnen die terminal. Voer sudo -k uit om het ongeldig te maken als je klaar bent.
Ubuntu begint normaal gesproken zonder bruikbaar rootwachtwoord en plaatst de installatiegebruiker in sudo. Fedora en systemen uit de Red Hat-familie gebruiken gewoonlijk wheel. Bij een geweigerde poging kan worden gemeld dat de gebruiker niet in het sudoers-bestand staat; de poging wordt vastgelegd.
Voer de schrijfbewerking uit met sudo
Dit commando mislukt als je gewone account niet naar /etc/hosts kan schrijven:
sudo echo "192.0.2.10 test.local" >> /etc/hosts
Je huidige shell opent het bestand voor >> voordat sudo draait. Alleen echo krijgt rootrechten en echo is niet het programma dat de bestemming opent. Geef de schrijftaak aan een proces met verhoogde rechten:
echo "192.0.2.10 test.local" | sudo tee -a /etc/hosts
Hier opent tee het beschermde bestand als root. De optie -a voegt achteraan toe; als je die optie weglaat, wordt de inhoud van het bestand vervangen. Voor een interactieve bewerking voert sudoedit /etc/hosts, ook geschreven als sudo -e /etc/hosts, je editor uit onder jouw account en verzorgt het de wijziging van het beschermde bestand.
Herken werk dat eigendom is van root
Bekijk na sudo mkdir ~/project het resultaat met ls -ld ~/project. De directory staat in je homedirectory, maar is door root gemaakt. De eigenaarsrechten gelden daarom voor root, terwijl je account mogelijk alleen lees- en uitvoerrecht heeft. Herstel de bedoelde eigenaar met sudo chown alice: ~/project wanneer het project van Alice is. De dubbele punt aan het einde selecteert ook Alice' aanmeldgroep. Gewoon bewerken en bestanden maken kan daarna onder Alice' account.
Belangrijkste punten
suvraagt normaal gesproken om het wachtwoord van de doelgebruiker; sudo vraagt normaal gesproken om dat van jou.- Gebruik
sudo -lom toegestane commando's te bekijken ensudo -kom de onthouden authenticatie ongeldig te maken. - Shellomleiding gebeurt vóór sudo; geef het programma dat het beschermde bestand opent verhoogde rechten.
sudoeditlaat je eigen editor werken op een kopie van een beschermd bestand.- Een commando met verhoogde rechten kan bestanden van root in je homedirectory maken.
2.2 Verleen sudo-rechten met het sudoers-beleid
Een sudo-regel bepaalt wie een actie mag uitvoeren, op welke host en onder welke identiteit. Door een team één beheeractie te geven, kun je voorzien in wat het nodig heeft zonder onbeperkte controle over de computer te verlenen.
Lees de onderdelen van een regel
Het basispatroon is who where = (as_whom) what. Bijvoorbeeld:
alice ALL=(ALL:ALL) ALL
%sudo ALL=(ALL:ALL) ALL
De eerste regel laat Alice elk commando op elke host uitvoeren als elke gebruiker en groep. De tweede geeft dezelfde rechten aan de groep sudo; % markeert een groepsnaam. Een veelgebruikte regel in de Red Hat-familie is %wheel ALL=(ALL) ALL.
Om Alice via een bestaande distributieregel volledige beheerdersrechten te geven, voer je sudo usermod -aG sudo alice uit op Debian of Ubuntu, of gebruik je wheel op Fedora en verwante systemen. Alice moet zich opnieuw aanmelden voordat het lidmaatschap haar sessie bereikt. De -a is belangrijk: zonder die optie vervangt -G haar andere aanvullende groepen.
Bewerk en controleer het beleid
Het hoofdbestand is /etc/sudoers; aanvullende regels kunnen in /etc/sudoers.d/ staan. Gebruik sudo visudo of een specifiek bestand:
sudo visudo -f /etc/sudoers.d/webteam
visudo vergrendelt het beleidsbestand tijdens het bewerken en controleert de syntaxis vóór het opslaan. Een defect beleid kan ervoor zorgen dat beheerders sudo niet meer kunnen gebruiken. Noem het bestand webteam, niet webteam.conf: bij het opnemen van een directory slaat sudo namen over die een punt bevatten of eindigen op ~.
Bestanden in de opgenomen directory worden op naamvolgorde gelezen. Als meerdere regels passen, bepaalt de laatste passende regel het resultaat; de regel die het specifiekst lijkt, wint niet noodzakelijk. De opname staat normaal gesproken tegen het einde van het hoofdbeleid, zodat een extra bestand een eerder geschreven regel kan beïnvloeden.
Sta één exacte actie toe
Een team dat een webservice beheert, kan dit krijgen:
%webteam ALL=(root) /usr/bin/systemctl restart nginx
Een lid kan sudo systemctl restart nginx uitvoeren. De regel vermeldt het volledige commandopad en de argumenten. Die staat systemctl stop nginx of bash niet toe. Controleer de daadwerkelijk geldende rechten met sudo -l; een beheerder kan Bobs beleid bekijken met sudo -l -U bob.
Het toegestane programma is ook belangrijk. Een rootshell kan alles doen. Editors en paginagewijze tekstviewers kunnen shells starten en onbeperkt gebruik van cp of tee kan beschermde configuratie overschrijven. Een ogenschijnlijk korte lijst commando's kan daarom volledige controle geven.
Bepaal of een wachtwoord nodig is
NOPASSWD: verwijdert de authenticatievraag voor een passend commando:
backup ALL=(root) NOPASSWD: /usr/local/bin/backup.sh
Dit kan een automatische taak ondersteunen. Het script moet onder controle van root staan: als backup het kan herschrijven, kan het account de inhoud vervangen door elk willekeurig rootcommando. Beperk de toegestane actie en bescherm het script.
Defaults-regels wijzigen beleidsinstellingen. Defaults timestamp_timeout=10 stelt een authenticatietijdstempel van tien minuten in; Defaults logfile=/var/log/sudo.log kiest een extra logbestand. Deze instellingen bepalen het gedrag van sudo, terwijl commandoregels bepalen welke acties sudo toestaat.
Belangrijkste punten
- Een sudoers-regel vermeldt wie, de host, de doelidentiteit en het toegestane commando.
- Bewerk het beleid met
visudo, zodat vergrendeling en syntaxiscontrole het bestand beschermen. - Een exact commando met argumenten kan één actie toestaan zonder een shell toe te staan.
- Bescherm scripts die door
NOPASSWD-regels worden gebruikt tegen wijzigingen door het aanroepende account. - Namen met een punt worden overgeslagen in
/etc/sudoers.d/. - Als meerdere regels passen, is hun volgorde van belang.
3Maak en beheer gebruikersaccounts en groepen
Bij het instellen van een account hoort meer dan een aanmeldnaam: er zijn een gebruikers-ID, groepen, een homedirectory, een shell en authenticatie-instellingen nodig. Die gegevens veranderen ook als mensen andere rollen krijgen of vertrekken. Groepsbeheer maakt toegang voor teams gemakkelijker, maar actieve sessies behouden de identiteiten die ze al hebben geladen. Doorloop het aanmaken, later wijzigen en verwijderen en controleer zowel de accountgegevens als de bestanden waarnaar die gegevens verwijzen.
3.1 Maak gebruikersaccounts met useradd en adduser
Bij het aanmaken van een account stel je een identiteit en een aanmeldomgeving in en maak je vaak een homedirectory. Door de opties expliciet te kiezen, wordt het resultaat op verschillende distributies voorspelbaar.
Maak een gewoon account
Stel dat de groep developers al bestaat. Maak Priya's account en stel haar wachtwoord in met twee commando's:
sudo useradd -m -s /bin/bash -c "Priya Shah" -G developers priya
sudo passwd priya
-m maakt /home/priya en kopieert de beginbestanden uit /etc/skel. -s /bin/bash kiest Bash als loginshell en -c geeft het commentaar op. -G developers voegt een aanvullend lidmaatschap toe; meerdere groepsnamen vormen een kommagescheiden lijst zonder spaties. Het account krijgt normaal gesproken ook een persoonlijke primaire groep.
Het eerste commando voegt accountvermeldingen toe aan /etc/passwd en /etc/shadow, en waar nodig groepsvermeldingen aan /etc/group en /etc/gshadow. Het oorspronkelijke wachtwoordveld is geblokkeerd, vaak met ! of !!. Het account bestaat voordat het een bruikbaar wachtwoord heeft. passwd priya stelt dat wachtwoord in; door de invoervraag komt het wachtwoord niet op de commandoregel terecht.
Begrijp standaardinstellingen van distributies
useradd is het accountaanmaakcommando op laag niveau dat op Linux-distributies wordt gebruikt. Debian en Ubuntu bieden ook een interactief script adduser dat om gegevens vraagt en een homedirectory maakt. Op systemen uit de Red Hat-familie is adduser een andere naam voor useradd, zodat het niet dezelfde interactieve werkwijze biedt.
Zonder expliciete opties hangt useradd af van lokale standaardinstellingen. De standaardinstellingen van de Red Hat-familie maken gewoonlijk een homedirectory; die van Debian en Ubuntu niet, tenzij -m is opgegeven. Ook de standaardshell kan verschillen. Bekijk useradd -D voor standaardinstellingen zoals de basisdirectory voor homedirectory's en de shell. /etc/default/useradd en /etc/login.defs bieden instellingen voor onder meer UID-bereiken, persoonlijke groepen en wachtwoordverloop.
Geef een andere homedirectory of identiteit op
Handige opties beschrijven afzonderlijke onderdelen van het account:
| Optie | Doel |
|---|---|
-u 1500 | Kies een UID |
-g staff | Kies een bestaande primaire groep |
-d /data/priya | Stel het pad van de homedirectory in |
-e 2026-12-31 | Stel een datum voor accountverloop in |
-r | Maak een systeemaccount |
Een pad naar een homedirectory in de vermelding maakt de directory niet vanzelf. Combineer -d met -m als de nieuwe homedirectory moet worden gemaakt. Op Debian kan het weglaten van -m een verder geldig account achterlaten zonder bruikbare homedirectory bij het aanmelden.
Voor een service-identiteit vraagt sudo useradd -r -s /usr/sbin/nologin backupsvc een systeem-UID en een niet-interactieve shell aan. Systeemaccounts hebben standaard geen homedirectory. De nologin-shell voorkomt dat iemand zich onder die identiteit aanmeldt bij een gewone interactieve shell.
Controleer de instellingen
Voer getent passwd priya, id priya en ls -la /home/priya uit. Controleer het pad van de homedirectory, de shell, primaire groep, extra groepen en gekopieerde verborgen bestanden. /etc/skel is een sjabloon: als je daar .bash_aliases toevoegt, heeft dat invloed op homedirectory's die later worden gemaakt, niet op bestaande homedirectory's. Gebruik eenvoudige accountnamen met kleine letters en na de eerste letter eventueel cijfers, koppeltekens of underscores; veel hulpmiddelen weigeren spaties en ongebruikelijke namen of verwerken ze verkeerd.
Belangrijkste punten
- Gebruik
useradd -mom een homedirectory te maken en/etc/skelte kopiëren. - Stel het eerste wachtwoord apart in met
passwd. -gkiest een primaire groep;-Gkiest aanvullende groepen.- De interactieve
adduservan Debian verschilt van het gelijknamige commando uit de Red Hat-familie. useradd -rmaakt een systeemaccount; een nologin-shell voorkomt aanmelding bij een interactieve shell.- Controleer na het aanmaken de accountvermelding, groepen en homedirectory.
3.2 Beheer wachtwoorden en wijzig of verwijder accounts
Een account kan een nieuw wachtwoord, een andere homedirectory, een tijdelijke toegangsblokkering of permanente verwijdering nodig hebben. Deze bewerkingen wijzigen verschillende onderdelen van het account, dus bepaal het gewenste resultaat voordat je een commando kiest.
Wijzig een wachtwoord of stel het verloop in
Voer passwd uit om je eigen wachtwoord te wijzigen, normaal gesproken nadat je het huidige hebt ingevoerd. Een beheerder gebruikt sudo passwd priya om Priya's wachtwoord in te stellen zonder het oude te kennen. Controles op wachtwoordkwaliteit kunnen korte of eenvoudige keuzes weigeren.
sudo passwd -S priya toont de wachtwoordstatus. sudo passwd -l priya blokkeert het wachtwoord door ! voor de hash te plaatsen en sudo passwd -u priya heft de blokkering op. sudo passwd -e priya laat het wachtwoord verlopen, zodat de gebruiker bij de volgende aanmelding een ander wachtwoord moet kiezen. Een wachtwoord laten verlopen is handig wanneer je een tijdelijk wachtwoord verstrekt.
Gebruik sudo chage -l priya om datums voor het wachtwoordverloop te bekijken. Bijvoorbeeld:
sudo chage -M 90 -m 1 -W 7 priya
De maximumduur is 90 dagen, de minimumduur tussen wijzigingen is één dag en waarschuwingen beginnen zeven dagen vóór het verloop. Deze waarden komen in /etc/shadow. sudo chage -E 2026-12-31 priya stelt de verloopdatum van het hele account in, los van de levensduur van het wachtwoord.
Blokkeer toegang zonder gegevens te verwijderen
Een wachtwoordblokkering blokkeert authenticatie met een wachtwoord. Die verwijdert geen SSH-sleutels en houdt niet elke andere authenticatiemethode tegen. Om toekomstige aanmeldingen bij het account van een vertrekkende gebruiker uit te schakelen, blokkeer je het wachtwoord en stel je een voorbije verloopdatum voor het account in, bijvoorbeeld met sudo usermod -e 1 priya. De waarde 1 is een dagtelling in januari 1970, dus die datum ligt al in het verleden. Dit beëindigt geen processen die al draaien; die hebben afzonderlijk aandacht nodig.
Wijzig een bestaand account
usermod kan het commentaar wijzigen met -c, de shell met -s en het pad van de homedirectory met -d. Combineer -d en -m om de inhoud van de homedirectory te verplaatsen, zoals in sudo usermod -d /data/priya -m priya. -l newname wijzigt de aanmeldnaam, maar de homedirectory en persoonlijke groep behouden hun bestaande namen tenzij je die ook wijzigt. -L en -U blokkeren en deblokkeren het wachtwoord.
Om een aanvullend lidmaatschap toe te voegen, voer je sudo usermod -aG developers priya uit. De -a betekent toevoegen. Zonder die optie vervangt usermod -G developers priya Priya's volledige lijst met aanvullende groepen; een eerder lidmaatschap van sudo kan verdwijnen. Haar primaire groep is een afzonderlijke instelling die wordt bepaald door -g.
Verwijder het account en handel de bestanden af
sudo userdel priya verwijdert de accountgegevens, maar laat de homedirectory staan. sudo userdel -r priya verwijdert ook de homedirectory en de mailspool. Het gewone commando weigert verwijdering zolang de gebruiker nog actieve processen heeft.
Bestanden elders behouden hun numerieke UID van de eigenaar. Na het verwijderen van het account kan een bestandslijst 1003 als eigenaar tonen omdat er geen naam bij past. Als die UID voor een nieuw account wordt hergebruikt, wordt dat account eigenaar van de oude bestanden. Gebruik sudo find / -nouser om bestanden zonder bijbehorende gebruiker te vinden en archiveer ze of wijs ze opnieuw toe. Bij een vertrek blokkeer je eerst toekomstige aanmeldingen, handel je actieve processen af en bewaar je de benodigde bestanden. Verwijder daarna het account als die taken zijn afgerond.
Belangrijkste punten
- Wachtwoordblokkering, wachtwoordverloop en accountverloop hebben verschillende doelen.
- Gebruik
chageom datums voor wachtwoordverloop en accountverloop te bekijken of te wijzigen. - Behoud
-abijusermod -Gals je groepen toevoegt zonder bestaande lidmaatschappen te verwijderen. - Als je een aanmeldnaam wijzigt, veranderen de namen van de homedirectory en persoonlijke groep niet mee.
userdel -rverwijdert de homedirectory en mailspool, maar bestanden elders behouden de oude UID.- Archiveer resterende bestanden of wijs ze opnieuw toe voordat die UID kan worden hergebruikt.
- Accountverloop beëindigt geen processen die al draaien.
3.3 Maak groepen en beheer groepslidmaatschappen
Een gedeelde map heeft een groep, leden en directoryrechten nodig waarmee die leden kunnen werken. Na een wijziging in het groepslidmaatschap kunnen de accountdatabase en de groepen van een al actieve shell tijdelijk verschillen.
Maak en beheer de groep
sudo groupadd developers kent de eerstvolgende beschikbare GID toe. Voeg -g 1500 toe om een specifieke GID te kiezen of -r voor een systeemgroep. Controleer met getent group developers; een leeg laatste veld betekent dat er nog geen aanvullende leden zijn vermeld.
Voeg een lid toe met een van deze commando's:
sudo usermod -aG developers priya
sudo gpasswd -a priya developers
sudo gpasswd -d priya developers verwijdert dat aanvullende lidmaatschap. sudo gpasswd -M alice,bob developers stelt de volledige ledenlijst in en vervangt wat er stond. Kies toevoegen, verwijderen of vervangen afhankelijk van de gewenste wijziging.
Vernieuw de groepen van een sessie
Nadat Priya is toegevoegd, vraagt id priya de accountdatabase op en toont meteen het nieuwe lidmaatschap. Alleen id in haar bestaande shell toont de groepen die die shell daadwerkelijk gebruikt. Die zijn vastgesteld toen de sessie begon.
Een nieuwe aanmelding laadt de nieuwe lijst. newgrp developers biedt een andere mogelijkheid: het start een nieuwe shell met developers als primaire groep. Gebruik exit om die shell te verlaten. Bekijk bij het onderzoeken van een geweigerde bewerking de identiteit in de sessie die de bewerking probeert uit te voeren, niet alleen de databasevermelding.
Hernoem of verwijder een groep
sudo groupmod -n devteam developers wijzigt de naam maar behoudt de GID. Bestaande bestanden blijven naar dezelfde numerieke groep verwijzen. Daarentegen wijzigt sudo groupmod -g 1600 developers het nummer van de groep. Bestanden die nog de oude GID 1005 dragen, hebben aandacht nodig; zoek ze met sudo find / -gid 1005 en gebruik daarna chgrp om de bedoelde groep toe te wijzen.
sudo groupdel developers weigert als een bestaande gebruiker de groep nog als primaire groep heeft. Stel met usermod -g een andere primaire groep in voordat je de groep verwijdert. Als je een groepsnaam verwijdert, worden bestanden met de oude GID niet gewist.
Richt een teammap in
Voor het webteam van Priya en Kenji:
sudo groupadd webteam
sudo usermod -aG webteam priya
sudo usermod -aG webteam kenji
sudo mkdir /srv/web
sudo chgrp webteam /srv/web
sudo chmod 2770 /srv/web
Nadat beide gebruikers zich opnieuw hebben aangemeld, kunnen ze bestanden maken in /srv/web. Rechten 2770 geven eigenaar en groep rwx, overige gebruikers --- en stellen SGID in op de directory. Een nieuw bestand krijgt de groep webteam, ook als de primaire groep van de maker diens persoonlijke groep is. Nieuwe subdirectory's erven ook SGID.
De directory maakt het teamlidmaatschap bruikbaar en houdt andere gebruikers buiten, maar elk bestand heeft nog steeds eigen rechten. Bij de gebruikelijke bestandsaanvraag van 666 geeft een umask van 002 de groep schrijfrecht, terwijl bij 022 de groep alleen leesrecht krijgt. Als teamleden elkaars bestanden moeten kunnen bewerken, controleer dan zowel deze standaardinstellingen voor aanmaak als de map.
Belangrijkste punten
- Gebruik
groupaddom groepen te maken engpasswdofusermod -aGom leden toe te voegen. - Wijzigingen in groepslidmaatschap in de database bereiken een bestaande sessie na een nieuwe aanmelding of een geschikte nieuwe shell.
- Een groep hernoemen behoudt de GID; na een wijziging van de GID moeten de GID's van bestaande bestanden worden aangepast.
- Een groep kan niet worden verwijderd zolang een account die nog als primaire groep gebruikt.
- Een gedeelde SGID-directory geeft nieuwe bestanden zijn groep; de rechten van elk bestand bepalen nog steeds of het kan worden bewerkt.
4Lees en wijzig eigenaarschap en toegangsrechten
Toegang hangt af van twee samenhangende vragen: welke gebruiker of groep is eigenaar van een object en wat staan de rechtenbits ervan toe? Een uitgebreide bestandslijst levert de informatie, maar dezelfde bits hebben bij een bestand en een directory een andere functie. Voor het lezen van een document, het binnengaan van een map en het verwijderen van een naam zijn daarom verschillende controles nodig. Gebruik chmod om de toegestane acties in te stellen en chown of chgrp om de identiteiten toe te wijzen waarvoor die acties gelden.
4.1 Lees eigenaarschap en toegangsrechten af uit een bestandslijst
Een uitgebreide bestandslijst zet de informatie die nodig is voor een toegangsbeslissing op één regel. Lees de eigenaar en groep samen met de negen rechtenbits; de bits alleen vertellen niet welke rechten een bepaalde persoon krijgt.
Ontleed een uitgebreide bestandslijst
-rw-r----- 1 priya developers 2048 Oct 22 09:15 report.txt
Het eerste veld bevat het bestandstype en de toegangsrechten. De volgende velden geven het aantal harde koppelingen, de eigenaar, de groepseigenaar, de grootte in bytes, de wijzigingstijd en de naam. Dit gewone bestand is van Priya en de groep developers. De grootte is 2048 bytes; de getoonde tijd geeft de laatste wijziging van de inhoud aan.
Het eerste teken is - voor een gewoon bestand, d voor een directory of l voor een symbolische koppeling. Je kunt ook c en b tegenkomen voor tekenapparaten en blokapparaten, p voor een benoemde pipe en s voor een socket.
Splits de volgende negen posities in drie drietallen:
| Klasse | Bits hier | Toegang tot een gewoon bestand |
|---|---|---|
| Eigenaar | rw- | Inhoud lezen en wijzigen |
| Groep | r-- | Inhoud lezen |
| Overige gebruikers | --- | Geen toegang via deze klasse |
Binnen elk drietal betekenen de posities achtereenvolgens lezen, schrijven en uitvoeren. Een streepje geeft een ontbrekend recht aan, niet een lege positie die je bij het tellen overslaat.
Kies precies één klasse
Bij een gewone controle van toegangsrechten vraagt Linux:
- Komt de gebruiker van het proces overeen met de eigenaar van het bestand? Gebruik het drietal van de eigenaar.
- Zo niet, komt een van de groepen van het proces overeen met de groep van het bestand? Gebruik het drietal van de groep.
- Gebruik anders het drietal van overige gebruikers.
De klassen worden niet bij elkaar opgeteld. Stel dat Priya eigenaar is van een bestand met de volledige type- en rechtenreeks ----rw-rw-. Haar eigenaarsdrietal is ---, dus ze kan het niet lezen via de gewone bits, ook al hebben de groep en overige gebruikers rw-. Als eigenaar kan ze de rechten wijzigen. Een minder beperkend drietal voor de groep of overige gebruikers gaat niet boven het gekozen eigenaarsdrietal.
Root kan gewone controles op lees- en schrijfrecht omzeilen. Om een gewoon programmabestand uit te voeren, heeft zelfs root minstens één uitvoerbit op dat bestand nodig. Voor een controle van de rechten moet je daarom zowel de identiteit van de gebruiker als de beoogde bewerking kennen.
Bekijk directory's en nummers
ls -ld /srv/web toont de directory zelf. Zonder -d toont ls -l /srv/web normaal gesproken de vermeldingen erin, waardoor je een beperking op de directory zelf over het hoofd kunt zien. ls -a toont ook verborgen namen, terwijl ls -n numerieke eigenaren en groepen toont. Bestanden slaan UID's en GID's op; als een account of groep is verwijderd, kan ook een gewone bestandslijst het overgebleven nummer tonen.
Voer voor een beknopt overzicht dit commando uit:
stat -c '%A %a %U %G %n' report.txt
Dit kan -rw-r----- 640 priya developers report.txt tonen, met letters en octale cijfers naast elkaar. Een + na de letters duidt op extra vermeldingen in een toegangscontrolelijst. Een symbolische koppeling toont vaak lrwxrwxrwx; Linux gebruikt voor toegang de rechten van het doel, niet de getoonde bits van de koppeling.
Belangrijkste punten
- Lees eerst het bestandstype en daarna de drietallen voor eigenaar, groep en overige gebruikers.
- De eerste passende klasse bepaalt de gewone toegangsrechten; klassen worden niet gecombineerd.
- Bestanden slaan numerieke UID's en GID's op, ook als een bestandslijst namen toont.
ls -ldbekijkt de directory zelf enstatkan de rechten in zowel letters als octale cijfers tonen.
4.2 Leg uit wat leesrecht, schrijfrecht en uitvoerrecht toestaan
Leesrecht, schrijfrecht en uitvoerrecht beschrijven verschillende acties op bestanden en directory's. Een directory bewaart namen die naar bestanden leiden, dus het wijzigen van de inhoud van een bestand en het verwijderen van de naam ervan vereisen verschillende controles van toegangsrechten.
Koppel de bit aan het object
| Bit | Gewoon bestand | Directory |
|---|---|---|
r | Inhoud lezen of kopiëren | Namen van vermeldingen tonen |
w | Inhoud wijzigen, overschrijven of aanvullen | Vermeldingen aanmaken, verwijderen of hernoemen, samen met x |
x | Als programma uitvoeren | Binnengaan en benoemde vermeldingen bereiken |
Aan een bestand met schrijfrecht maar zonder leesrecht kun je gegevens toevoegen zonder het te lezen. Een shell kan bijvoorbeeld een schrijfbaar logbestand openen voor echo text >> log.txt, ook als cat log.txt mislukt. Een editor heeft vaak zowel lees- als schrijfrecht nodig, omdat die eerst de bestaande inhoud laadt.
Een script dat je als ./backup.sh uitvoert, heeft uitvoerrecht nodig en moet leesbaar zijn voor de interpreter. Als het script leesbaar is maar uitvoerrecht mist, kan bash backup.sh het nog steeds lezen en uitvoeren: Bash is het uitvoerbare programma in dat commando.
Maak onderscheid tussen tonen en zoeken
Met leesrecht op een directory kun je namen zien. Met uitvoerrecht op een directory, ook zoekrecht genoemd, kun je een vermelding op naam bereiken. Met leesrecht maar zonder uitvoerrecht kan ls namen tonen, terwijl ls -l hun details niet kan ophalen en mogelijk fouten en vraagtekens toont. Je kunt de genoemde bestanden niet via die directory openen.
Met uitvoerrecht maar zonder leesrecht is het omgekeerde mogelijk: je kunt notes.txt bereiken als je de exacte naam al kent, maar je kunt de inhoud van de directory niet tonen om de namen te ontdekken. De eigen rechten van het bestand moeten de gevraagde toegang nog steeds toestaan.
Volg het hele pad
Om /home/priya/notes/public.txt te lezen heeft Kenji uitvoerrecht nodig op elke directory in het pad en leesrecht op het bestand. Als /home/priya rechten 700 heeft, is het drietal voor overige gebruikers ---; Kenji komt daar niet verder, ook als public.txt rechten 644 heeft. Meer leesrecht op het bestand toevoegen kan een ontbrekende zoekbit op een bovenliggende directory niet herstellen.
Gebruik ls -ld /home/priya /home/priya/notes om de directory's zelf te bekijken. Kies op elk niveau de klasse die voor Kenji geldt en controleer de uitvoerbit daarvan. De relevante klasse kan per directory verschillen, omdat de eigenaren en groepen kunnen verschillen.
Voorspel verwijderen en hernoemen
Als je een bestand verwijdert, verwijder je een directoryvermelding. Kenji heeft schrijf- en uitvoerrecht nodig op de directory die het bestand bevat, niet schrijfrecht op het bestand. In een gewone schrijfbare directory zonder sticky bit kan hij Priya's alleen-lezenbestand verwijderen. Omgekeerd kan hij een bestand waarvan hij eigenaar is niet verwijderen uit een directory waarop hij geen schrijfrecht heeft.
Schrijfrecht van een bestand verwijderen helpt dus om de inhoud tegen wijzigingen te beschermen, maar beschermt de naam niet tegen verwijdering. De sticky bit van een directory voegt een beperking op basis van eigenaarschap toe voor verwijderen en hernoemen in gedeelde schrijfbare mappen. Toegang tot bestanden en toegang tot directoryvermeldingen beantwoorden verschillende vragen.
Belangrijkste punten
r,wenxop een bestand bepalen of je het kunt lezen, wijzigen en uitvoeren.rop een directory toont namen;xbereikt vermeldingen;wmetxwijzigt vermeldingen.- Om een bestand te bereiken is uitvoerrecht nodig op elke directory in het pad ernaartoe.
- Een leesbaar script kan ook zonder eigen uitvoerbit aan de interpreter worden doorgegeven.
- Een bestand verwijderen hangt af van de rechten op de directory, met een extra beperking in directory's met een sticky bit.
4.3 Wijzig toegangsrechten met chmod
Gebruik chmod om de toegangsrechten te wijzigen van een bestand of directory waarvan je eigenaar bent. Root kan die ook wijzigen. Schrijftoegang via een groep laat je de inhoud van een bestand wijzigen, maar maakt je geen eigenaar en laat je de rechten ervan niet instellen.
Maak een gerichte symbolische wijziging
Een symbolische rechtennotatie heeft een klasse, een operator en bits. De klassen zijn u voor eigenaar, g voor groep, o voor overige gebruikers en a voor alle drie. + voegt rechten toe, - verwijdert ze en = stelt die klasse exact in.
chmod u+x deploy.sh
chmod go-w notes.txt
chmod u=rw,g=r,o= report.txt
Het eerste commando voegt alleen de uitvoerbit van de eigenaar toe. Het tweede verwijdert schrijfrecht voor de groep en overige gebruikers, maar behoudt hun andere bits. Het derde geeft de eigenaar lees- en schrijfrecht, de groep leesrecht en overige gebruikers geen rechten: rw-r-----.
Geef de klasse op als je een precieze wijziging wilt. Als je die weglaat, zoals in chmod +w notes.txt, beperkt de umask welke klassebits worden beïnvloed. Met umask 022 voegt dat commando alleen schrijfrecht voor de eigenaar toe; chmod a+w notes.txt omvat expliciet alle drie de klassen.
Zet elk drietal om in een octaal cijfer
Lezen heeft waarde 4, schrijven 2 en uitvoeren 1. Tel de aanwezige waarden in elke klasse op:
| Cijfer | Bits | Berekening |
|---|---|---|
| 7 | rwx | 4 + 2 + 1 |
| 6 | rw- | 4 + 2 |
| 5 | r-x | 4 + 1 |
| 4 | r-- | 4 |
| 0 | --- | Geen |
Splits rw-r----- in rw-, r--, ---: de cijfers zijn 6, 4, 0. chmod 640 report.txt stelt die negen gewone bits in, ongeacht de vorige gewone rechten. Draai het proces om voor 750: 7 geeft rwx, 5 geeft r-x en 0 geeft ---, samen rwxr-x---.
Kies bruikbare uiteindelijke rechten
Rechten 600 houden een bestand privé voor de eigenaar. Rechten 644 laten andere gebruikers een gewoon bestand lezen. Rechten 664 laten ook de groep bewerken. Privédirectory's gebruiken vaak 700, door de groep leesbare directory's 750 en door de groep schrijfbare directory's 770. Programma's of openbare directory's gebruiken vaak 755.
Dezelfde cijfers staan bij verschillende objecten verschillende nuttige acties toe. Als je 644 op een directory toepast, verwijder je uitvoerrecht voor elke klasse. Zelfs de eigenaar kan de directory niet meer binnengaan of er bestanden doorheen openen. Gebruik directoryrechten met zoekrecht voor de mensen die toegang nodig hebben.
Pas wijzigingen toe op een boom
chmod -R 755 site/ maakt ook elk gewoon bestand uitvoerbaar. Gebruik voor een boom met directory's en gewone documenten voorwaardelijk uitvoerrecht:
chmod -R u=rwX,go=rX site/
Een hoofdletter X voegt uitvoerrecht toe aan directory's en aan bestanden die al een uitvoerbit hebben. Niet-uitvoerbare bestanden worden 644; directory's worden 755. Bestaande uitvoerbare bestanden behouden hun uitvoerrecht. Zo blijft het mogelijk de boom te doorlopen zonder elk document als programma te markeren. Speciale bits staan hier los van: GNU chmod behoudt SUID en SGID op directory's tenzij je ze expliciet wist, bijvoorbeeld met chmod g-s site/.
Belangrijkste punten
- Alleen de eigenaar of root kan de toegangsrechten van een bestand wijzigen.
- Symbolische
+en-wijzigen geselecteerde bits;=stelt een klasse exact in. - Octale rechtennotatie telt voor elke klasse lezen 4, schrijven 2 en uitvoeren 1 op.
- Als je in symbolische rechtennotatie de klasse weglaat, speelt de umask een rol.
- Directory's hebben zoekrecht nodig voor gebruikers die hun vermeldingen moeten bereiken.
- Een hoofdletter
Xmaakt recursieve wijzigingen mogelijk zonder elk gewoon bestand uitvoerbaar te maken.
4.4 Wijzig eigenaarschap met chown en chgrp
Het eigenaarschap bepaalt van welke gebruiker en groep de drietallen toegangsrechten worden gecontroleerd. Met het juiste eigenaarschap kun je een werkmap herstellen die per ongeluk met sudo is gemaakt, zonder alle anderen ruimere toegang te geven.
Lees de vormen van chown
chown kan een gebruiker, een groep of beide wijzigen:
| Commando | Resultaat |
|---|---|
sudo chown kenji report.txt | Wijzig eigenaar; behoud de groep |
sudo chown kenji:webteam report.txt | Wijzig eigenaar en groep |
sudo chown :webteam report.txt | Wijzig alleen de groep |
sudo chown kenji: report.txt | Stel eigenaar en Kenji's aanmeldgroep in |
chgrp webteam report.txt | Wijzig alleen de groep |
Numerieke ID's werken ook, zoals in sudo chown 1002:1005 report.txt. De namen worden omgezet in nummers; het bestand slaat die nummers op.
Alleen root kan een bestand aan een andere eigenaar overdragen. Een eigenaar kan de groep van een eigen bestand wijzigen in een groep waarvan die eigenaar lid is. Priya kan dus chgrp webteam plan.txt gebruiken als ze eigenaar is van het bestand en tot webteam behoort. Om het aan finance toe te wijzen zou ook lidmaatschap van die groep nodig zijn. Dat een ander lid het bestand kan bewerken, geeft die persoon niet de mogelijkheid om de eigenaar of toegangsrechten te wijzigen.
Herstel een map die per ongeluk van root is
Kenji heeft een aanmaakcommando met sudo uitgevoerd. De bestandslijst is:
drwxr-xr-x 2 root root 4096 Oct 22 10:02 /home/kenji/app
Hij is niet de eigenaar en gebruikt niet de groepseigenaar, dus krijgt hij de r-x van overige gebruikers. Hij kan de map bekijken en binnengaan, maar kan geen vermeldingen maken omdat schrijfrecht ontbreekt. Als je de map voor iedereen schrijfbaar zou maken, geef je meer toegang dan zijn project nodig heeft.
Als het project van Kenji is, herstelt sudo chown -R kenji: ~/app zijn eigenaarschap en aanmeldgroep voor de hele map. Zijn eigenaarsdrietal is nu rwx, zodat hij bestanden kan maken. Controleer het doelpad vóór elk recursief eigenaarscommando: toepassing op /etc of /usr kan de werking van het systeem verstoren. -R betekent de directory en alles daaronder.
Voorspel eigenaarschap na bestandsbewerkingen
Een nieuw aangemaakt bestand is van de gebruiker van het proces dat het maakt. De groep komt normaal gesproken van de primaire groep van dat proces, of van een bovenliggende SGID-directory. Als je met cp een gewone nieuwe kopie maakt, wordt de aanroepende gebruiker dus de eigenaar. Een mv binnen hetzelfde bestandssysteem wijzigt de locatie van een bestaand bestand en behoudt de eigenaar en groep. Kopieeropties die eigenaarschap behouden, werken anders dan een gewone nieuwe kopie.
Dit onderscheid verklaart waarom het verplaatsen van een oud bestand naar een gedeelde map de regel voor groepsovererving van die map niet op dat bestand toepast. SGID geldt bij het aanmaken; gebruik chgrp als de groep van een bestaand bestand moet veranderen.
Combineer identiteit met toegang
Als je met chgrp de groep webteam toewijst, kies je wie de groepsklasse vertegenwoordigt. Dat voegt geen lees- of schrijfrecht voor de groep toe. Gebruik chmod om na het kiezen van de groep de benodigde bits te geven. Als je het eigenaarschap van een uitvoerbaar bestand wijzigt, kunnen ook SUID- of SGID-rechten worden gewist; controleer de resulterende rechten als die bits van belang zijn.
Belangrijkste punten
chownwijst de eigenaar of groepseigenaar toe;chgrpwijzigt alleen de groep.- Alleen root kan de eigenaar wijzigen.
- Eigenaren mogen hun bestanden toewijzen aan groepen waarvan ze lid zijn.
- Een nieuwe kopie is normaal gesproken van de maker; een verplaatsing binnen hetzelfde bestandssysteem behoudt het eigenaarschap.
- SGID-overerving geldt voor nieuw gemaakte bestanden, niet voor een bestaand bestand dat naar de directory wordt verplaatst.
5Beheer standaardrechten en speciale rechten en los toegangsproblemen op
Nieuwe bestanden erven instellingen voor het aanmaken, terwijl speciale rechtenbits veranderen hoe programma's of gedeelde directory's zich gedragen. Een teammap werkt alleen als de groep, het overgeërfde groepseigenaarschap en de rechten van nieuwe bestanden op elkaar aansluiten. Als toegang mislukt, volg dan de daadwerkelijke gebruiker en het pad tot het eerste ontbrekende recht. Met die diagnose kun je het benodigde recht herstellen en privégegevens en beheerdersbevoegdheden beperkt houden.
5.1 Stel standaardrechten in met umask
De rechten van een nieuw bestand komen uit twee bronnen: de rechten die het aanmakende programma aanvraagt en de umask van het proces. Het masker verwijdert aangevraagde bits; het voegt nooit rechten toe die het programma niet heeft aangevraagd.
Begin met de aanvraag bij aanmaak
Editors en shellomleiding vragen voor gewone nieuwe bestanden meestal 666, of rw-rw-rw-, aan. Bij het aanmaken van een directory wordt meestal 777, of rwxrwxrwx, aangevraagd. Een umask is een verzameling bits die uit die aanvraag moet worden gewist. Een bit blijft alleen behouden als die in de aanvraag staat en niet in het masker.
Bij umask 022 behoud je alle aangevraagde eigenaarsbits, verwijder je schrijfrecht voor de groep en verwijder je schrijfrecht voor overige gebruikers. Een bestand wordt 644; een directory wordt 755. Lees elk cijfer als bits, niet als een gewoon decimaal getal.
| Masker | Bestand aangevraagd als 666 | Directory aangevraagd als 777 |
|---|---|---|
| 022 | 644 | 755 |
| 027 | 640 | 750 |
| 077 | 600 | 700 |
| 002 | 664 | 775 |
| 033 | 644 | 744 |
Bij 027 verliest de groep schrijfrecht, terwijl overige gebruikers alle drie de bits verliezen. Dit is handig als een team nieuwe bestanden moet kunnen lezen, maar gebruikers buiten het team geen toegang mogen hebben. Bij 002 blijft schrijfrecht voor de groep beschikbaar; de groepseigenaar van het bestand bepaalt nog steeds wie dat krijgt.
Waarom aftrekken niet werkt
Neem bestandsaanvraag 666 en masker 033. Elke 3 betekent schrijven plus uitvoeren. Maar elk aangevraagd bestandsdrietal is rw-: uitvoerrecht ontbreekt al. Als je schrijf- en uitvoerrecht wist, blijft r-- over voor de groep en overige gebruikers, dus het resultaat is 644. Cijfers aftrekken zou 633 opleveren, wat ten onrechte suggereert dat uitvoerbits kunnen verschijnen.
Bij een directoryaanvraag van 777 geeft het wissen van dezelfde bits 744. Die directory mist uitvoerrecht voor de groep en overige gebruikers, zodat die klassen de vermeldingen niet kunnen bereiken, ook al kunnen ze namen tonen. Een masker dat de gewenste bestandsrechten geeft, kan een onhandig resultaat voor directory's opleveren.
Bekijk en stel je masker in
Voer umask uit om de huidige instelling te zien, vaak getoond met een voorloopnul, zoals 0022. De voorloopnul is opmaak; Linux gebruikt de negen gewone rechtenbits. umask -S toont toegestane bits, zoals u=rwx,g=rx,o=rx bij 022; een programma kan een deel van die bits aanvragen.
umask 027 wijzigt de huidige shell en wordt overgeërfd door programma's die de shell start. Bestaande bestanden behouden hun rechten. Gebruik chmod als een al gemaakt bestand andere rechten nodig heeft.
Kies een blijvende standaardinstelling
Een regel zoals umask 027 in ~/.profile of ~/.bashrc kan de waarde instellen voor de shells die dat opstartbestand lezen. Systeemstandaarden kunnen uit /etc/profile of UMASK in /etc/login.defs komen. De distributie en accountinstellingen bepalen welke bestanden worden gelezen en wanneer.
Veel systemen gebruiken 022, terwijl systemen met persoonlijke groepen voor gewone gebruikers vaak 002 gebruiken. Een compiler kan uitvoerbare uitvoer aanvragen met rechten 777; bij 022 wordt dat 755. Een aanvraag van 666 door een teksteditor heeft geen uitvoerbits, dus als je een script schrijft, wordt het niet vanzelf uitvoerbaar.
Belangrijkste punten
- Nieuwe rechten behouden bits die het programma heeft aangevraagd, tenzij de umask ze verwijdert.
- Aanvragen voor gewone bestanden beginnen meestal bij 666; aanvragen voor directory's meestal bij 777.
- Pas het masker bit voor bit toe; aftrekken zoals bij decimale getallen kan een verkeerd resultaat geven.
- Een wijziging van het masker beïnvloedt latere aanmaak, niet bestaande bestanden.
- Een overgeërfd shellmasker en de door een programma aangevraagde rechten zijn afzonderlijke invoergegevens.
- Controleer bij het kiezen van een standaardinstelling het resultaat voor zowel bestanden als directory's.
5.2 Gebruik SUID, SGID en de sticky bit
Drie speciale bits voegen gedrag toe aan de gewone rechten van eigenaar, groep en overige gebruikers. Hun betekenis hangt ervan af of het object een programma of een directory is.
Herken het extra cijfer
Een octaal cijfer vooraan combineert SUID 4, SGID 2 en sticky 1. Rechten 4755 zijn SUID plus gewone rechten 755. Rechten 2770 zijn SGID plus 770. Rechten 3770 combineren SGID en sticky omdat 2 plus 1 gelijk is aan 3.
In een uitgebreide bestandslijst delen de bits de posities voor uitvoerrecht. Een kleine s op de eigenaarspositie betekent SUID en uitvoerrecht voor de eigenaar; een kleine s op de groepspositie betekent SGID en uitvoerrecht voor de groep. Een kleine t op de positie van overige gebruikers betekent sticky en uitvoerrecht voor overige gebruikers. Een hoofdletter S of T betekent dat de speciale bit aanwezig is maar uitvoerrecht op die positie ontbreekt.
SUID en SGID op programma's
Met SUID kan een uitvoerbaar bestand draaien met de effectieve identiteit van de eigenaar van het bestand. /usr/bin/passwd verschijnt vaak als -rwsr-xr-x root root: het programma kan beschermde wachtwoordgegevens bijwerken en tegelijk bepalen van welke gebruiker de aanroeper het wachtwoord mag wijzigen. Het starten ervan geeft de aanroeper geen rootshell. Linux negeert SUID op scripts en directory's.
SGID op een uitvoerbaar bestand gebruikt op dezelfde manier de groepsidentiteit van het bestand. Deze bits geven toegang onder controle van het programma, dus het gedrag van het programma is belangrijk. Voeg nooit SUID toe aan een shell, editor of script. Een beheerder kan gewone SUID-bestanden inventariseren met sudo find / -perm -4000 -type f 2>/dev/null; gebruik -perm -2000 voor SGID-bestanden en vergelijk de resultaten met de verwachte systeeminstellingen.
SGID op een teamdirectory
Op een directory zorgt SGID dat nieuwe vermeldingen de groep van de directory krijgen en dat nieuwe subdirectory's SGID erven. Stel dat /srv/web van root:webteam is, met rechten 2770, getoond als drwxrws---. Priya heeft een persoonlijke primaire groep maar behoort tot webteam. Als ze index.html in deze directory maakt, wordt de groep ervan webteam.
De gewone rechten hangen nog steeds af van de aanmaak. Bij een bestandsaanvraag van 666 en umask 002 wordt het 664 en kan Kenji, een ander teamlid, het bewerken. Bij 022 wordt het 644, zodat Kenji alleen leesrecht heeft. SGID geeft de groep, geen extra schrijfbit.
Sticky-directory's en verwijderen
De sticky bit beperkt verwijderen en hernoemen: met de benodigde directorytoegang kan een vermelding worden verwijderd door de eigenaar van het bestand, de eigenaar van de directory of root. Zo zijn gedeelde schrijfbare directory's bruikbaar zonder dat gebruikers elkaars vermeldingen kunnen verwijderen. /tmp en /var/tmp gebruiken vaak 1777, getoond als drwxrwxrwt. De sticky bit voorkomt niet dat de inhoud van bestanden wordt gewijzigd als de bestandsrechten dat toestaan. Linux negeert de bit op gewone bestanden.
Stel bits in met chmod u+s prog, chmod g+s /srv/web of chmod o+t /srv/drop. Wis ze met u-s, g-s of o-t. Bij GNU chmod behoudt chmod 755 /srv/web een bestaande SGID-bit op een directory; gebruik chmod g-s /srv/web om die expliciet te wissen.
Belangrijkste punten
- SUID gebruikt de eigenaarsidentiteit van een programmabestand; SGID op een uitvoerbaar bestand gebruikt de groepsidentiteit.
- SGID op een directory geeft nieuwe bestanden de groep van die directory en geeft SGID door aan nieuwe subdirectory's.
- Een directory met sticky bit beperkt verwijderen en hernoemen op basis van eigenaarschap.
- Een kleine
softomvat uitvoerrecht; bij een hoofdletterSofTontbreekt uitvoerrecht op die positie. - Groepsovererving via SGID en het schrijfrecht van een nieuw bestand staan los van elkaar.
- GNU chmod behoudt SGID op een directory wanneer rechten met drie cijfers worden gebruikt.
- De sticky bit beschermt vermeldingen tegen verwijdering, niet schrijfbare inhoud tegen bewerking.
5.3 Onderzoek problemen met toegangsrechten en pas het principe van minimale rechten toe
Een foutmelding “Permission denied” duidt op een mislukte bewerking, niet noodzakelijk op verkeerde bestandsrechten. De blokkering kan liggen aan de groepen van je sessie, een bovenliggende directory, het bestand zelf of eigenaarschap dat is achtergebleven na een commando met verhoogde rechten.
Volg identiteit, pad, klasse en bewerking
Begin met alleen id in de getroffen sessie. Als onlangs een groep is toegevoegd, vergelijk dan de actieve lijst met id username, dat de database opvraagt. Een nieuwe aanmelding kan het nieuwe lidmaatschap laden.
Bekijk vervolgens het hele pad:
namei -l /srv/reports/q3.txt
namei -l toont eigenaren, groepen en rechten langs het pad. Je kunt ook elke directory met ls -ld bekijken. Kies bij elk object de eerste passende klasse: eigenaar, anders groep, anders overige gebruikers. Vraag je vervolgens af wat de beoogde bewerking nodig heeft. Lezen vereist r op het bestand en zoekrecht op alle bovenliggende directory's. Een vermelding aanmaken, verwijderen of hernoemen vereist w en x op de directory, met beperkingen van de sticky bit waar die aanwezig is.
Zoek de eerste geblokkeerde bewerking
Kenji behoort tot finance en probeert cat /srv/reports/q3.txt. De relevante objecten zijn:
drwxr-xr-x root root /srv
drwxr-x--- root finance /srv/reports
-rw------- maria finance /srv/reports/q3.txt
Kenji kan door /srv met het uitvoerrecht van overige gebruikers. In /srv/reports kiest zijn lidmaatschap van finance de groepsrechten r-x, zodat hij ook daar doorheen kan. Bij q3.txt is hij niet Maria en is het drietal van finance ---. Het ontbrekende recht is leesrecht voor de groep op het bestand.
Als leden van finance het rapport mogen lezen, kan Maria of root chmod g+r /srv/reports/q3.txt uitvoeren. De resulterende rechten zijn 640. Dit geeft het ontbrekende recht zonder de groep schrijfrecht te geven of het rapport voor anderen open te stellen. Een beheerder kan testen met sudo -u kenji cat /srv/reports/q3.txt en het commando zo als Kenji uitvoeren in plaats van het als root te testen.
Kies de kleinste oplossing
Een juiste oplossing kan zijn: een teamlidmaatschap toevoegen, leesrecht voor de groep instellen, de eigenaar van een project herstellen of zoekrecht op een directory toevoegen voor de bedoelde klasse. chmod -R 777 geeft elk lokaal account schrijftoegang in de hele boom en maakt gewone bestanden uitvoerbaar. Het kan bovendien niet elke oorzaak van een toegangsprobleem oplossen.
Controleer veelvoorkomende oorzaken voordat je een grote boom bewerkt: een nieuw lidmaatschap dat nog niet actief is, een ontbrekende x op een bovenliggende directory, werk van root dat met sudo is gemaakt en nieuwe bestanden waarvan de umask de benodigde teamtoegang heeft verwijderd. FAT32- en exFAT-schijven slaan geen eigen Linux-UID's, GID's en rechten op; koppelopties leveren die waarden, zodat chmod of chown per bestand kan mislukken of geen effect heeft.
Houd privégegevens privé
Een privé-SSH-sleutel zoals ~/.ssh/id_ed25519 hoort normaal gesproken rechten 600 te hebben; de directory .ssh heeft meestal 700. SSH controleert de bescherming van privésleutels en kan een sleutel weigeren die te toegankelijk is. /etc/shadow blijft ontoegankelijk voor gewone gebruikers. Beheerders met volledige sudo-rechten kunnen gewone privacy van bestanden omzeilen, dus houd die groep klein en sta specifieke acties toe wanneer volledig beheer niet nodig is.
Belangrijkste punten
- Controleer de identiteit en actieve groepen van de getroffen sessie voordat je bestandsrechten wijzigt.
- Bekijk elke bovenliggende directory en ook het doelbestand.
- Stem het recht af op de bewerking en gebruik de kleinst noodzakelijke wijziging.
- Test het resultaat als de betrokken gebruiker; een test als root kan een ontbrekend gewoon recht verbergen.
- Standaardinstellingen bij aanmaak en niet-Linux-bestandssystemen kunnen onverwachte rechten verklaren.
Linux-gebruikers en toegangsrechten: voorbeelden
1Lees een identiteit en de bijbehorende accountgegevens
13 stappen
- 1IntroductieBegin bij de identiteit die het werk uitvoert
Een bestandsaanvraag komt van een actief proces en dat proces draagt een gebruikersidentiteit en groepen. Je leest Alice' identiteit, verbindt die met accountgegevens en maakt onderscheid tussen huidige sessies en opgeslagen accountgegevens. Dit zijn de aanwijzingen die je nodig hebt voordat je bepaalt welke toegang haar commando's krijgen.
- 2UitlegEen nummer geeft root zijn bevoegdheden
Linux gebruikt een UID, niet de spelling van een naam, om een gebruiker te identificeren. UID 0 is root; gewone accounts beginnen vaak bij 1000. Services draaien meestal onder beperkte systeemaccounts met een nologin-shell. Een service heeft dus geen persoonlijke aanmelding of volledige rootrechten nodig om zijn eigen werk te doen.
- 3VoorbeeldLees Alice' uitvoer van id
Alice voert
iduit en ziet:uid=1001(alice) gid=1001(alice) groups=1001(alice),27(sudo),1005(developers)De UID identificeert Alice. De GID is haar primaire groep. De laatste lijst bevat haar primaire groep plus sudo en developers. UID 1001 is geen root, ook al kan de groep sudo toestemming geven voor bepaalde commando's met verhoogde rechten.
- 4UitdagingEen machtige naam of een machtige UID?
Een account met de naam
maintainerheeft UID 0. Een ander account met de naamroot-helperheeft UID 1030. Welke identiteit heeft rootrechten zonder sudo te gebruiken en waarom?---reveal---
Maintainer heeft rootrechten omdat de UID 0 is. De naam root-helper verandert UID 1030 niet in de supergebruikersidentiteit. Bekijk het nummer, niet een suggestieve naam of een aangepaste prompt.
- 5VerbandIdentiteit en aanmeldgeschiedenis beantwoorden verschillende vragen
whoamiidentificeert de huidige gebruiker;idvoegt ID's en groepen toe.whotoont huidige aanmeldsessies enwvoegt activiteit, actieve tijd en systeembelasting toe.lasttoont geregistreerde eerdere aanmeldingen en herstarts. Gebruik op systemen met wtmpdb, zoals Debian 13,wtmpdb lastvoor die geschiedenis. Een vermelding in de geschiedenis is niet de groepenlijst van je huidige shell. - 6UitlegDeel via een extra groep
Alice' primaire groep is haar persoonlijke groep, die ook alice heet. Developers is een extra aanvullende groep. Een proces kan zowel primaire als aanvullende lidmaatschappen gebruiken voor groepstoegang. Als je een rapport aan developers geeft, kun je het dus delen met Alice en Bob, terwijl toewijzing aan Alice' persoonlijke groep het normaal gesproken niet met collega's deelt.
- 7VoorbeeldKoppel een rapport aan developers
Het rapport is van
bob:developers, met rechtenrw-r-----. Alice is niet de eigenaar, maar haar lidmaatschap van developers selecteert de groepsrechtenr--: ze mag lezen, niet bewerken. Chen valt buiten developers en krijgt---voor overige gebruikers. De groepseigenaar geeft het team aan; het middelste drietal bepaalt de toegestane acties van het team. - 8UitdagingEen lege lijst met een werkelijk lid
Een accountvermelding geeft Robin primaire GID 1440. Het opzoeken van de groep levert
review:x:1440:op. Is Robin ondanks het lege laatste veld lid van review?---reveal---
Ja. Robins primaire GID komt overeen met review. Het laatste groepsveld vermeldt aanvullende leden, dus primaire leden hoeven er niet in te staan. Een volledige gebruikersopvraging met
id robincontroleert beide soorten lidmaatschap. - 9VoorbeeldSplits de openbare accountregel
Lees
alice:x:1001:1001:Alice Moreau:/home/alice:/bin/bashals zeven velden, gescheiden door dubbele punten. Alice is de naam, x verwijst naar beschermde wachtwoordgegevens, 1001 is de UID en de volgende 1001 is de primaire GID. De overige velden geven een commentaar, homedirectory en loginshell. De openbare passwd-vermelding bevat niet Alice' leesbare wachtwoord. - 10UitlegEen hash wordt gecontroleerd, niet ontsleuteld
Het shadow-bestand bewaart wachtwoordhashes en velden voor wachtwoordverloop met beperkte toegang. Bij het aanmelden wordt van het wachtwoord een hash berekend met de opgeslagen methode en salt, waarna het resultaat wordt vergeleken met de opgeslagen waarde. Door verschillende salts kunnen gelijke wachtwoorden verschillende hashes hebben. Een
!aan het begin blokkeert authenticatie met een wachtwoord, maar verwijdert niet elke andere aanmeldmethode. - 11VoorbeeldLees de velden voor wachtwoordverloop
In
alice:$y$j9T$...:20514:0:90:7:::is dag 20514 gelijk aan 2 maart 2026. Minimumduur 0 staat direct een volgende wijziging toe. Maximumduur 90 laat het wachtwoord op 31 mei verlopen en waarschuwing 7 begint op 24 mei. De lege velden voor inactiviteit en accountverloop stellen geen van beide grenzen in. Alle datumwaarden gebruiken dagen sinds 1 januari 1970, UTC. - 12UitdagingMaak onderscheid tussen wachtwoordproblemen en identiteit
Een opvraging toont een account met UID 1090, primaire groep 1090 en een shadow-hash met
!ervoor. Een teamgenoot zegt: “Het account is verdwenen, dus de groep doet er niet meer toe.” Wat klopt er niet?---reveal---
Het account bestaat nog steeds met zijn UID en groep. Het voorvoegsel blokkeert het wachtwoord; het verwijdert de identiteit niet. De bestanden en groepslidmaatschappen zijn nog steeds van betekenis en een aanmeldmethode zonder wachtwoord kan nog beschikbaar zijn.
- 13SamenvattingKies de juiste informatie
Gebruik de actieve procesidentiteit om te begrijpen wie handelt. Groepslidmaatschap verbindt die identiteit met gedeelde rechten. Passwd- en group-vermeldingen beschrijven openbare accountrelaties; shadow bevat beschermde gegevens over wachtwoorden en wachtwoordverloop. Vraag gegevens op met
getenten gebruik accountbeheercommando's als gegevens moeten worden gewijzigd.
2Geef één actie verhoogde rechten en lees het beleid
13 stappen
Sla deze les op om elke Walkthrough stap voor stap te volgen.
- 1IntroductieHoud de beheeractie in beeld
- 2UitlegWissel van shell of voer één commando uit
- 3TipControleer rechten en tijdelijke authenticatie
- 4UitdagingWiens wachtwoord bij een ander doel?
- 5VoorbeeldVolg de mislukte toevoeging
- 6VoorbeeldGeef het schrijvende programma verhoogde rechten
- 7UitdagingBehoud de oude inhoud
- 8UitlegLees een volledige machtiging
- 9TipBewerk een regel met syntaxiscontrole
- 10UitdagingToestemming voor herstarten is geen toestemming voor stoppen
- 11KernpuntEen script kan een beperkte regel verruimen
- 12UitdagingControleer zowel het beleid als het proces
- 13SamenvattingBeperk de reikwijdte tot wat de taak nodig heeft
3Maak een account en zorg dat teamtoegang werkt
15 stappen
Sla deze les op om elke Walkthrough stap voor stap te volgen.
- 1IntroductieRicht een bruikbare werkidentiteit in
- 2VoorbeeldMaak het account expliciet aan
- 3UitlegRond de inrichting van wachtwoord en homedirectory af
- 4TipControleer het resultaat op drie plaatsen
- 5UitdagingEen pad zonder homedirectory
- 6UitlegKies een wijziging van wachtwoord of account
- 7VoorbeeldStel wachtwoordverloop in zonder datums te verwarren
- 8UitdagingBehoud bestaande teamlidmaatschappen
- 9UitlegVoeg groepsleden toe en verwijder ze
- 10VoorbeeldVergelijk database en sessie
- 11UitdagingHerstel eerst de sessie en daarna de bestanden
- 12VerbandGeef het team een gedeelde plek om bestanden te maken
- 13KernpuntVerwijdering laat numeriek eigenaarschap achter
- 14UitdagingEen vertrek heeft meerdere afzonderlijke gevolgen
- 15SamenvattingControleer de gegevens en de werksessie
4Lees toegangsrechten en voorspel een bewerking
17 stappen
Sla deze les op om elke Walkthrough stap voor stap te volgen.
- 1IntroductieVraag wat de gebruiker probeert te doen
- 2VoorbeeldVerdeel de bestandslijst in velden
- 3UitlegKies het eerste passende drietal
- 4UitdagingDe groep gaat niet boven de eigenaar
- 5UitlegGebruik de betekenis van x voor elk object
- 6VoorbeeldVolg een geblokkeerd pad
- 7UitdagingEen alleen-lezenbestand in een schrijfbare map
- 8KernpuntEen interpreter leest een script
- 9UitlegVoeg rechten toe, verwijder ze of stel een klasse in
- 10VoorbeeldZet 750 per klasse om
- 11TipHoud directory's in een boom doorzoekbaar
- 12UitdagingVoeg één recht toe zonder de rest te vervangen
- 13UitlegWijs de juiste identiteiten toe
- 14VoorbeeldHerstel de eigenaar van een werkmap
- 15UitdagingVerplaatsen of een nieuwe kopie maken?
- 16UitdagingKies een wijziging van rechten of eigenaar
- 17SamenvattingVerbind identiteit, object en actie
5Beheer rechten van nieuwe bestanden en onderzoek een geweigerde aanvraag
19 stappen
Sla deze les op om elke Walkthrough stap voor stap te volgen.
- 1IntroductieVerklaar de rechten voordat je ze wijzigt
- 2UitlegBegin bij wat het programma aanvraagt
- 3VoorbeeldPas masker 027 toe op een bestand
- 4VoorbeeldTest de verkorte rekenmethode met aftrekken
- 5UitdagingVoorspel twee resultaten bij aanmaak
- 6TipMaak onderscheid tussen toekomstige standaardrechten en bestaande bestanden
- 7UitlegHerken speciale bits in de weergave
- 8VoorbeeldEen programma krijgt gecontroleerde extra bevoegdheden
- 9VoorbeeldVolg een nieuw bestand naar de teammap
- 10UitlegBescherm namen in een gedeelde schrijfbare directory
- 11UitdagingBewerken zonder toestemming om te verwijderen
- 12TipWis een speciale bit expliciet
- 13UitlegStel vier onderzoeksvragen
- 14VoorbeeldControleer eerst Kenji's pad
- 15VoorbeeldZoek het ontbrekende recht
- 16UitdagingStop bij de geblokkeerde bovenliggende directory
- 17VerbandControleer de oorzaak van onverwachte resultaten
- 18UitdagingEen nieuwe standaardinstelling en een bestaand bestand vereisen verschillende oplossingen
- 19SamenvattingHoud de mechanismen voor toegangsrechten uit elkaar
Linux-gebruikers en toegangsrechten: oefenvragen
Set 1: Herken accounts en beheer toegang10 Oefenvragen
Vraag 1 van 10
rescue heeft UID 0. Welke beheerdersbevoegdheden heeft die identiteit?Toon antwoordVerberg antwoord
rescue heet. Namen helpen mensen een account te herkennen; ze bepalen niet de identiteit ervan voor de kernel. Als je de naam als bron van rootrechten ziet, mis je een tweede account met UID 0.Vraag 2 van 10
design:x:1420:. Betekent het lege laatste veld dat het account niet bij design hoort?Toon antwoordVerberg antwoord
Vraag 3 van 10
x in nora:x:1042:1042:Nora:/home/nora:/bin/bash?Toon antwoordVerberg antwoord
x verwijst voor het opzoeken van wachtwoordgegevens naar de beschermde shadow-vermelding. De overige velden geven nog steeds de openbare UID, primaire GID, homedirectory en shell. De uitleg dat het wachtwoord leeg is, klopt niet: de aanduiding laat niet zien of het shadow-wachtwoord bruikbaar of geblokkeerd is.Vraag 4 van 10
Toon antwoordVerberg antwoord
Vraag 5 van 10
sudo echo "ready" >> /etc/team-status mislukken als alleen root naar het bestand mag schrijven?Toon antwoordVerberg antwoord
>> voordat sudo het commando uitvoert. Echo verhoogde rechten geven verhoogt daarom niet de rechten van het proces dat de bestemming opent. Uitvoerrecht toevoegen aan de bestemming helpt niet: toevoegen vereist dat het bestand voor schrijven kan worden geopend, wat een schrijvend programma met verhoogde rechten zoals tee kan doen.Vraag 6 van 10
Toon antwoordVerberg antwoord
-m maakt de homedirectory en kopieert de sjabloonbestanden ernaartoe. Met -s kies je alleen de loginshell, ook als die shell bij het aanmelden een homedirectory verwacht. Een accountvermelding kan bestaan met een pad naar een homedirectory die nooit is gemaakt.Vraag 7 van 10
Toon antwoordVerberg antwoord
passwd -e laat het wachtwoord verlopen, zodat bij de volgende aanmelding een nieuw wachtwoord nodig is. Het wachtwoord blokkeren voorkomt authenticatie met dat wachtwoord in plaats van alleen vervanging te vereisen. Een voorbije verloopdatum voor het account instellen zou toekomstige aanmeldingen bij het account uitschakelen, een ruimere wijziging dan Omar nodig heeft.Vraag 8 van 10
id lena de groep media, maar alleen id in Lena's oude shell niet. Wat moet Lena doen voordat ze groepstoegang opnieuw probeert?Toon antwoordVerberg antwoord
Vraag 9 van 10
004 en behoort tot de groepseigenaar. Welke gewone rechtenklasse bepaalt of hij het kan lezen?Toon antwoordVerberg antwoord
--- bepaalt de gewone controle. De leesbit van overige gebruikers wordt daar niet bij opgeteld, ook al geeft die klasse meer rechten. Als je overige gebruikers kiest, behandel je de drietallen ten onrechte als rechten die kunnen worden gecombineerd.Vraag 10 van 10
docs. /srv is root:root met rechten 755, /srv/notes is root:docs met rechten 750 en a.txt daarin is maya:docs met rechten 440. Kan Tariq het bestand met gewone toegangsrechten lezen en verwijderen?Toon antwoordVerberg antwoord
/srv/notes; de groep heeft daar alleen lees- en uitvoerrecht. De alleen-lezenrechten van het bestand houden de verwijdering niet tegen: de ontbrekende schrijfbit op de directory is beslissend.Set 2: Beheer accounts en gedeelde bestanden10 Oefenvragen
Sla deze les op om elk antwoord te zien en elke set te oefenen.
Vraag 1 van 10
sudo -u postgres psql onder het standaardauthenticatiebeleid van sudo?Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 2 van 10
sudo en editors. Een beheerder voert usermod -G reviewers mei uit. Wat is haar lijst met aanvullende groepen bij een nieuwe aanmelding?Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 3 van 10
/data/zoe nodig, die nu moet worden aangemaakt, en Bash als shell. Welk commando vraagt alle drie aan?Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 4 van 10
audit naar records zonder de GID te wijzigen. Wat gebeurt er met bestanden die aan die GID zijn toegewezen?Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 5 van 10
brief.txt en behoort tot writers, maar niet tot sales. Welke groepswijziging mag ze zonder sudo uitvoeren?Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 6 van 10
rwxr-----?Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 7 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 8 van 10
/srv/art is root:artists met rechten 2770. Inez behoort tot artists, heeft primaire groep inez en umask 027. Ze maakt een bestand met aanvraag 666. Welke groep en gewone rechten zijn het resultaat?Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 9 van 10
%ops ALL=(root) /usr/bin/systemctl reload nginx toe. Welke actie geeft die toestemming?Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 10 van 10
lab. /srv heeft rechten 755, /srv/lab is root:lab met rechten 740 en het bestand daarin is ana:lab met rechten 640. Alle eerdere bovenliggende directory's zijn doorzoekbaar. Welke kleinste wijziging van een klasse laat Niko het bestand lezen?Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Set 3: Voorspel toegangsrechten en toegang tot directory's10 Oefenvragen
Sla deze les op om elk antwoord te zien en elke set te oefenen.
Vraag 1 van 10
check.sh toe en behoudt de andere bits?Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 2 van 10
/srv/box. Ze kent de exacte naam van een bestand en dat bestand geeft haar leesrecht. Wat kan ze doen?Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 3 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 4 van 10
umask 077 uitvoert?Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 5 van 10
drwxr-S--- over SGID en de uitvoerbit van de groep?Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 6 van 10
ben:ben wordt op hetzelfde bestandssysteem naar een SGID-teammap verplaatst. Welk eigenaarschap behoudt het?Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 7 van 10
/srv/drop is root:shared met rechten 3770. Dev en Eva zijn actieve leden van shared. Eva maakt een bestand met aanvraag 666 en umask 002. Kan Dev haar bestand volgens de gewone toegangsrechten bewerken en verwijderen?Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 8 van 10
chmod -R u=rwX,g=rX,o= tree/ op?Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 9 van 10
root:review met rechten 705. Sam behoort tot review en is geen root. Welke directoryrechten krijgt Sam via de gewone klassen?Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 10 van 10
x.txt lezen maar niet hernoemen in root:team met rechten 1750; Oli zit in team en is eigenaar van x.txt. Welke kleinste wijziging van toegangsrechten maakt hernoemen mogelijk met behoud van de sticky bit?Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Set 4: Kies veilige beheerwijzigingen10 Oefenvragen
Sla deze les op om elk antwoord te zien en elke set te oefenen.
Vraag 1 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 2 van 10
/etc/sudoers.d/ op, maar de geldige regel in release.conf wordt niet toegepast. Met welke wijziging van de bestandsnaam kan dat regelbestand worden gelezen?Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 3 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 4 van 10
draft.txt in authors?Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 5 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 6 van 10
pat met UID 1088 wordt verwijderd, waarna /data/archive eigenaar 1088 behoudt. Een nieuw account krijgt UID 1088. Wat verklaart de toegang van dat account tot het archief als eigenaar?Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 7 van 10
memo in /srv/review lezen maar niet bewerken. De directory is root:review 2750 en memo is jo:review 640; Rae zit in review. Rae hoeft alleen de inhoud ter plekke te wijzigen. Welke kleinste oplossing voldoet?Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 8 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 9 van 10
chmod 750 team/ uit en maakt daarna een subdirectory daarin. Welk gedrag van de speciale bit mag de beheerder verwachten?Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 10 van 10
research is nog steeds Kims primaire groep. Waarom weigert gewone groupdel research, ook nadat Kim uit de lijst met aanvullende leden is verwijderd?Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Set 5: Onderzoek toegang via gebruikers en paden10 Oefenvragen
Sla deze les op om elk antwoord te zien en elke set te oefenen.
Vraag 1 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 2 van 10
/srv is 755; /srv/qa is root:qa met rechten 2710 en result daarin is lee:qa met rechten 640. Alle eerdere bovenliggende directory's zijn doorzoekbaar. Kan Uma namen tonen, het bekende bestand lezen en een nieuw bestand maken?Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 3 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 4 van 10
/var/log/team-run. Welk commando geeft het schrijvende proces verhoogde rechten en behoudt de eerdere inhoud?Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 5 van 10
cp een gewone nieuwe kopie van het bestand van een collega. Wie is eigenaar van het nieuwe doelbestand?Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 6 van 10
edit. /srv/edit is root:edit 2770. Noor kan daar bestanden maken, maar een bestaand bestand kai:edit is 640 en ze kan er niets aan toevoegen. Makers gebruiken programma's die rechten 666 aanvragen. Welke wijziging bij het toekomstig aanmaken van gewone bestanden laat teamleden gegevens toevoegen zonder bestanden voor anderen open te stellen?Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 7 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 8 van 10
drwxrwx---, eigenaar teo, groep build. Teo zit ook in build. Welke klasse wordt gebruikt voor Teo's gewone toegang?Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 9 van 10
mira:team met rechten 1770. Ren zit in team; Sol is eigenaar van een vermelding daarin. Wie van Mira en Ren mag Sols vermelding verwijderen volgens de gewone bits en de regel van de sticky bit?Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 10 van 10
NOPASSWD: /usr/bin/systemctl restart nginx, waarna een latere passende regel PASSWD: gebruikt voor hetzelfde commando. Er is geen geldig tijdstempel. Wat gebeurt er bij die toegestane actie?Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Kom je niet uit je eigen opgave? Huiswerkhulp
Kernbegrippen
A
Aangevraagde rechten bij aanmaak
Aanvullende groep
design laat een gebruiker de rechten van design op gedeelde bestanden gebruiken.Accountverloop
ACL-markering
-rw-r-----+ heeft een ACL-markering na de negen gewone rechtenposities.Actieve groepen
id toont de actieve groepen in de oude shell van een gebruiker voordat die een nieuwe aanmeldsessie start.Adduser
adduser om accountgegevens en maakt het tijdens de inrichting de homedirectory van de nieuwe gebruiker.Authenticatietijdstempel
sudo -k.C
Chage
chage -l lea om de datums te bekijken voordat de verloopinstellingen van het account worden gewijzigd.Chgrp
chgrp editors draft.txt uit op een eigen bestand nadat de gebruiker lid is geworden van de groep editors.Chmod
chmod g+w draft.txt uit om de groepseigenaar van het eigen bestand de inhoud van het document te laten wijzigen.Chown
chown lea:editors draft.txt om zowel de eigenaar als de groep van het bestand toe te wijzen.Cijfer voor speciale rechten
D
Defaults-vermelding
timestamp_timeout=10 stelt een authenticatieperiode van tien minuten in.Directoryvermelding
Drietal toegangsrechten
r--, zodat leden het bestand kunnen lezen maar niet bewerken.E
Effectieve gebruikers-ID
Eigenaarsklasse
G
Gebruikers-ID
uid=1051(ava) identificeert Ava, ook als haar accountnaam later verandert.Gebruikersaccount
GECOS-veld
priya bevat het GECOS-veld “Priya Shah”, terwijl de aanmeldnaam het kortere priya blijft.Gpasswd
gpasswd -a lea editors voegt Lea toe zonder de andere aanvullende leden van de groep editors te vervangen.Groep
editors, wordt het drietal groepsrechten bruikbaar voor dat team.Groeps-ID
Groepsklasse
Group-bestand
/etc/group bewaart groepsnamen, tijdelijke aanduidingen voor wachtwoorden, GID's en lijsten met namen van aanvullende leden.Groupadd
groupadd bevestigt de beheerder de nieuwe teamgroep met getent group.Groupmod
groupmod behoudt de GID, zodat bestanden naar de hernoemde groep blijven verwijzen.H
Herleidbaarheid van handelingen
Homedirectory
/home begint./data/lea is vastgelegd, moet nog worden gemaakt als die nog niet bestaat.I
Inactiviteitsperiode na wachtwoordverloop
Interpreter
task.sh lezen via bash task.sh, ook als het script geen uitvoerbit heeft.K
Klasse overige gebruikers
--- is.Koppelopties
L
Leesrecht
Loginshell
sudo -i start een rootloginshell, zodat latere commando's in die shell onder de identiteit van root draaien.N
Namei
-l informatie over eigenaarschap en toegangsrechten toont voor onderdelen langs een bestandspad.namei -l om een bovenliggende directory te vinden die de toegang tot een leesbaar bestand blokkeert.Newgrp
newgrp editors uit en controleert de identiteit van de nieuwe shell met id.Nologin-shell
NOPASSWD-label
Numeriek eigenaarschap
O
Octale rechtennotatie
rwx krijgt, de groep r-x en overige gebruikers geen rechten.Omleiding
>> een bestemming te openen om gegevens toe te voegen.sudo echo start, omdat de gewone shell het beschermde bestand opent.Overerving van groepseigenaarschap
editors zorgt overerving van groepseigenaarschap dat een nieuw rapport bij editors hoort, maar de eigen rechten bepalen of editors mogen schrijven.Overgeërfd rechtenmasker
P
Passwd-bestand
/etc/passwd, waarin namen, ID's, paden naar homedirectory's, commentaar en loginshells staan./home heeft.Persoonlijke gebruikersgroep
Primaire groep
mina als primaire groep krijgt een nieuw bestand buiten een SGID-map normaal gesproken die groep.Principe van minimale rechten
Proces
R
Recursieve wijziging
-R van het commando.Root
Runas-specificatie
(root) beperkt een onderhoudsactie tot uitvoering onder de rootidentiteit.S
Salt
Schrijfrecht
SGID
Shadow-bestand
/etc/shadow waarin lokale wachtwoordhashes en velden voor accountverloop staan.Sjabloondirectory
/etc/skel..bash_aliases toe aan de sjabloondirectory voor accounts die daarna worden aangemaakt.Sticky bit
/tmp laat gebruikers tijdelijke bestanden maken zonder dat ze elkaars vermeldingen kunnen verwijderen.Su
su - bob uit om Bobs aanmeldomgeving te starten en typt daarna exit om naar de eigen shell terug te keren.Sudo
sudo uit om een service te herstarten en bewerkt daarna eigen projectbestanden zonder verhoogde rechten.Sudoers-beleid
SUID
Symbolische rechtennotatie
g+w om schrijfrecht voor de groep toe te voegen.go-w verwijdert schrijfrecht voor de groep en overige gebruikers en behoudt hun overige rechten.Systeemaccount
www-data laat een webservice draaien zonder het gewone account van een persoon te gebruiken.U
Uitvoerrecht
Umask
Useradd
useradd uit met -m en -s om een homedirectory te maken en een loginshell te kiezen.Usermod
-a toe te voegen aan usermod -G blijven eerdere aanvullende lidmaatschappen behouden terwijl een nieuw lidmaatschap wordt toegevoegd.V
Verplaatsing binnen hetzelfde bestandssysteem
Verweesd bestand
Visudo
visudo uit op een beleidsbestand voor een team, zodat een typefout wordt ontdekt voordat het bestand wordt opgeslagen.Voorwaardelijk uitvoerrecht
X van chmod, die uitvoerrecht selecteert voor directory's en bestanden die al een uitvoerbit hebben.W
Wachtwoordblokkering
! voor de hash te plaatsen.Wachtwoordhash
Wachtwoordverloop
passwd -e laat het wachtwoord verlopen, zodat een gebruiker een verstrekt tijdelijk wachtwoord moet vervangen.Wissen van rechtenbits
Z
Zoekrecht
- 1Linux en opensource
- 2Linux-commandoregel
- 3Linux-pipes, omleiding en tekstverwerking
- 4Shellscripts
- 5Linux-gebruikers en toegangsrechten
- 6Linux-processen, pakketten en services
- 7Opslag en netwerken in Linux
Over deze les
Door StudeliFout melden
Maak je eigen Studiemateriaal
Maak van je aantekeningen, slides en documenten Leermodules, Oefenvragen, Flashcards en 6 andere tools.