Vanwege de aard van Linux-systemen zijn er veel beperkingen en autorisatie-instellingen voor bestanden en mappen op het gebied van beveiliging. De enige gebruiker met al deze rechten is de rootgebruiker.

Daarom, terwijl we het systeem gebruiken, als we root-gebruikers zijn, zal de waarschuwing die voor ons ligt niet a beperkend mechanisme, en in sommige gevallen kunnen de wijzigingen die we aanbrengen grote problemen veroorzaken met de systeem. Dit is de reden waarom kennis over Linux-gebruikersautorisaties erg belangrijk is voor elke Linux-gebruiker.

Acties die gebruikers kunnen ondernemen met betrekking tot bestanden en mappen

Elke gebruiker kan handelen in het kader van de hem verleende machtigingen. Er zijn drie acties die gebruikers kunnen ondernemen met betrekking tot bestanden of mappen.

  • lees (r): Het gaat erom de mappenlijst en bestandsinhoud te kunnen bekijken.
  • schrijf (w): Het gaat om het aanbrengen van wijzigingen in het bestand of de map.
  • uitvoeren (x): Het gaat erom het doelbestand uit te voeren of toegang te krijgen tot de map.
instagram viewer

Als u bekend bent met de chmod-opdracht en Linux-bestandsrechten, heb je misschien al eerder van deze drie machtigingen gehoord.

Voer de in ls -l commando om te zien welke rechten uw huidige bestand heeft.

De onderdelen die we zien als drwxr-xr-x en -rw-r--r-- raadpleeg bestandsrechten. De brief d aan het begin van sommige uitdrukkingen geeft aan dat die uitdrukking een directory is. Als we de overige delen apart uitleggen, worden de delen gescheiden door de - teken vertegenwoordigen de gebruikersgroep met die toestemming.

Verdeel ze voor een beter begrip in groepen van drie, exclusief de letter d.

rwxr-xr-x = rwxr-xr-x

rw-r--r-- = rw-r--r--

De eerste reeks letters specificeert de machtigingen van de bestandseigenaar, de tweede van groepsmachtigingen en de laatste reeks specificeert de machtigingen van andere gebruikers.

Dienovereenkomstig zijn de machtigingen in de bovenstaande bestanden:

  • r: leesvoorrecht
  • met wie: schrijfrecht
  • x: privilege uitvoeren
  • rwx: de gebruiker die eigenaar is van het bestand kan lezen, schrijven, uitvoeren
  • r-x: andere gebruikers kunnen lezen, uitvoeren, maar niet schrijven

Machtigingen wijzigen met chmod

Alleen root, die de meest geautoriseerde persoon is, kan het toegangsprivilege wijzigen. Dit veranderingsproces is eenvoudig uit te voeren met de chmod opdracht.

De parameters en betekenissen van de chmod commando worden hieronder gegeven.

  • jij: Eigenaar van het bestand of de map
  • g: Gebruikers in dezelfde groep als de eigenaar van het bestand of de map
  • O: Andere gebruikers
  • a: Open voor iedereen
  • =: Autorisatie synchronisatie
  • +: autorisatie toevoegen
  • -: Verwijdering van autorisatie

Nu u de betekenissen van de parameters hebt gezien, kunt u nu een voorbeeldbewerking overwegen. Voor deze, maak een voorbeeldmap aan en volg de onderstaande stappen in volgorde.

Gebruik de ls -l opdracht om door de machtigingen van de bestanden in de map die u hebt gemaakt te bladeren. Denk er daarbij aan dat de permissiestructuur van uw bestanden als volgt is.

ls -l
totaal 4
1 wortelwortel 0 april 25 16:20voorbeeld.tekst
1 wortelwortel 0 april 25 16:21ex_Bestand
d 2 wortelwortel 4096 april 25 16:21ex_Folder
1 wortelwortel 0 april 25 16:20ex_Text

Open daarna alle bestanden in de map met * teken en laat schrijven (w) openbaar worden met chmod +w * opdracht.

chmod +w *
ls -l
totaal 4
--w-r-x 1 wortelwortel 0 april 25 16:20voorbeeld.tekst
--w-r-x 1 wortelwortel 0 april 25 16:21ex_Bestand
d-w-r-x 2 wortelwortel 4096 april 25 16:21ex_Folder
--w-r-x 1 wortelwortel 0 april 25 16:20ex_Text

Probeer nu lees-schrijf-uitvoerautorisatie (rwx) te geven aan gebruikers in de groep (g), schrijfrechten (w) aan gebruikers (u) en alleen uitvoerrechten (x) aan andere gebruikers.

chmod g+rwx, u+w, o+x *
ls -l
totaal 4
--w-rwx--x 1 wortelwortel 0 april 25 16:20voorbeeld.tekst
--w-rwx--x 1 wortelwortel 0 april 25 16:21ex_Bestand
d-w-rwx--x 2 wortelwortel 4096 april 25 16:21ex_Folder
--w-rwx--x 1 wortelwortel 0 april 25 16:20ex_Text

En ten slotte kunt u een opdracht zoals hieronder gebruiken om de autorisatie van bestanden op uw locatie in te trekken.

chmod a-rwx *
<code>ls -l
totaal 4
1 wortelwortel 0 april 25 16:20voorbeeld.tekst
1 wortelwortel 0 april 25 16:21ex_Bestand
d 2 wortelwortel 4096 april 25 16:21ex_Folder
1 wortelwortel 0 april 25 16:20ex_Text

Afgezien van deze toepassingen, kunnen autorisatieprocessen ook worden uitgedrukt in numerieke termen die u waarschijnlijk al eerder bent tegengekomen en zonder het te beseffen.

Nummers zijn gedefinieerd voor elke autorisatie

Eigenaar van het bestand Gebruikers in dezelfde groep als de eigenaar van het bestand Andere gebruikers
r 4 4 4
met wie 2 2 2
x 1 1 1

Stel je bijvoorbeeld voor dat je alle rechten alleen aan de eigenaar van het bestand wilt geven. Hiervoor moet u eerst de nummerequivalenten van de autorisatiepatronen verzamelen. Met andere woorden, aangezien u alle rechten geeft, is r=4 + w=2 + x=1=totaal aantal 7.

U wilt deze toestemming alleen verlenen aan de eigenaar van het bestand. Om dit te doen, kunt u de chmod rwx- commando dat u normaal gesproken zou gebruiken. Als je een commando gebruikt zoals chmod 700-bestand, heeft alleen de eigenaar van het bestand alle rechten.

Om dit beter te begrijpen, kun je een ander voorbeeld bedenken. Stel je voor dat de eigenaar van het bestand alle rechten heeft, die in de openbare groep schrijfrechten en andere gebruikers leesrechten.

U kunt de vergelijking r (4)+w (2)+x (1)=7 gebruiken voor alle privileges die aan de eigenaar van het bestand worden gegeven.

De schrijfautorisatie die u geeft aan de gebruikers in de gemeenschappelijke groep met de bestandseigenaar, zal het nummer 2 gebruiken, wat het numerieke equivalent is van het schrijf (w) teken. De leesautorisatie die u aan andere gebruikers geeft, zal het cijfer 4 gebruiken, wat het numerieke equivalent is van het leesteken (r).

Zoals uit de uitvoer blijkt, moeten de numerieke equivalenten de gewenste autorisatie hebben uitgevoerd.

Maak uw autorisatie-instellingen geldig in submappen met -R

Bovendien, als u wilt dat de machtigingen die u geeft van kracht worden voor die map en zijn submappen, moet u uw opdracht gebruiken met de -R parameter.

Noem bijvoorbeeld de toegangsrechten van de map met de naam "ex_Folder" op uw locatie. Het resultaat is een uitvoer waarin staat dat er geen rechten zijn gevonden.

ls -l 
totaal 4
1 wortelwortel 0 april 25 16:20voorbeeld.tekst
-rwx-w-r-- 1 wortelwortel 0 april 25 16:21ex_Bestand
d 2 wortelwortel 4096 april 25 16:21ex_Folder
1 wortelwortel 0 april 25 16:20ex_Text

Ga vervolgens naar de map met de naam "ex_Folder".

Dan terug naar de bovenliggende directory. Gebruik de -R parameter en schrijf een commando zoals chmod -R 422 ex_Folder zodat de toegangsrechten voor toegevoegd geldig zijn voor alle subbestanden.

Als gevolg hiervan zijn alle bestanden, inclusief alle bestanden en mappen en submappen, geautoriseerd op een manier die overeenkomt met de 422-instructie.

De beste oplossing voor per ongeluk verwijderde bestanden: chattr

Wat de reden ook is, als er bestanden zijn die u belangrijk vindt, is het mogelijk deze te beschermen voordat ze per ongeluk worden verwijderd. De opdracht die deze beschermingsmogelijkheid geeft, is de chattr opdracht. De chattr commando beschermt niet alleen tegen verwijdering, het wordt ook gebruikt om te voorkomen dat het bestand wordt gewijzigd.

U kunt uw lsattr commando om dergelijke bestanden weer te geven.

Probeer de te beschermen main.cpp bestand dat hier verschijnt met de chattr +i main.cpp opdracht.

Zoals te zien is in de uitvoer, is er een -i verklaring in de sectie machtigingen. Deze verklaring is een teken dat het bestand niet meer kan worden bewerkt. Om dit te bevestigen, kunt u proberen dit bestand te verwijderen met een commando als rm -rf main.cpp.

rm-rfhoofd.cpp
rm: kan niet verwijderen 'main.cpp': Bediening niet toegestaan

Als u deze bewerking ongedaan wilt maken en het bestand bewerkbaar wilt maken, gebruikt u gewoon de chattr -i main.cpp opdracht.

Toegangsrechten zijn belangrijk voor de beveiliging van het bestandssysteem

Toegangsautorisatie vormt de ruggengraat van de beveiliging van het Linux-bestandssysteem. Dankzij de toegangsrechten die aan elk bestand afzonderlijk kunnen worden gegeven, kan een veel comfortabeler systeembeheer worden gerealiseerd.

Toegangsrechten per gebruiker kunnen soms zelfs nog zinvoller zijn. Daarom wilt u misschien de projecten en bestanden op uw systeem benaderen met de autorisatiemethoden die in dit artikel worden beschreven.

Hoe u bestandsmachtigingen op Linux-desktops kunt wijzigen

Lees volgende

DelenTweetenDelenE-mail

Gerelateerde onderwerpen

  • Linux
  • Gebruikersaccount controle
  • Bestandsbeheer
  • Linux
  • Terminal

Over de auteur

Fatih Küçükkarakurt (2 artikelen gepubliceerd)

Een ingenieur en softwareontwikkelaar die een fan is van wiskunde en technologie. Hij heeft altijd van computers, wiskunde en natuurkunde gehouden. Hij heeft zowel game-engine-projecten als machine learning, kunstmatige neurale netwerken en lineaire algebra-bibliotheken ontwikkeld. Bovendien blijft men werken aan machine learning en lineaire matrices.

Meer van Fatih Küçükkarakurt

Abonneer op onze nieuwsbrief

Word lid van onze nieuwsbrief voor technische tips, recensies, gratis e-boeken en exclusieve deals!

Klik hier om je te abonneren