Mijn rechten staan niet goed, ik kan iets niet lezen/(over-)schrijven

In het kort: de juiste groep moet eigenaar zijn van de file en de groep rechten moeten met SGID(Setgid) ingeregeld zijn. Wat betekend dat?

Omdat het voorkomt dat een omroep verschillende ontwikkelaars kan hebben en zelf vaak ook toegang wil hebben tot de bestanden werken we met rechten op basis van groepen. Meestal is het zo dat als de rechten niet meer goed staan binnen een folder dat de groep rechten niet meer goed staan. Als eigenaar van een bestand kun je de groepsrechten aanpassen. Grote kans dus dat je zelf de bestanden weer de juiste rechten kan geven zonder dat je de beheerders hiervoor nodig hebt.

Als je bent ingelogd via SSH kun je de rechten in een directory bekijken met ls -l. De eerste kolom laat zien welke permissies een file of folder heeft. De eerste letter geeft het type van het bestand aan. De 3 letters daarna de rechten van de 'owner', de 3 daarna de rechten van de groep en de 3 laatste letters zijn de rechten voor de andere gebruikers. De derde kolom laat zien wie de owner is van een file en de vierde laat de groep zien. De eerste en vierde kolom zijn dus het belangrijkste.

Goed voorbeeld:

Ls -l
#directory
drwxrwsr-x 4 ontwikkelaar  cwgroep 4.0K Apr  1  2015 directory
#file
-rw-rw-r-- 1 redactie      cwgroep  30K Mar 31  2015 jquery.js
  • Een file en/of directory moet van de juiste groep zijn

In het voorbeeld zie je dat zowel de file als de directory van de contentwriter “cwgroep” groep zijn.

  • Met SGID zorg je ervoor dat de files die binnen een directory geplaatst worden de van de juiste groep zijn.

In de eerste kolom zie je een “s” bij de groepsrechten.

Slecht voorbeeld:

Ls -l

drwxrwxr-x 4 ontwikkelaar  ontwikkelaar 4.0K Apr  1  2015 directory
-rw-r-r-- 1 ontwikkelaar  ontwikkelaar  30K Mar 31  2015 jquery.js
  • Een file en/of directory moet van de juiste groep zijn

In het voorbeeld zie je dat de groep niet de juiste is. Gemakkelijk te herkennen aan het feit dat de user hetzelfde is als de groep (dat werkt bij ons platform bijna nooit) en de groep begint niet met 'rd' 'cw' of 'dw'.

  • Met SGID zorg je ervoor dat de files die binnen een directory geplaatst worden de van de juiste groep zijn.

In de eerste kolom zie je geen “s” bij de groepsrechten.

De user 'ontwikkelaar' kan het met de volgende commando's weer goed zetten:

#SGID groeprechten terug zetten:
chmod g+s directory
#Het eigenaarschap voor de groep goed zetten:
chgrp cwgroep directory
chgrp cwgroep file

Let wel, deze commando's gebruiken geen sudo. Niemand heeft sudo-rechten op de upload-sites omgeving, dus het gebruik van sudo gaat daarom niet werken. Het is meestal ook niet nodig.

  • faq_rechten-filesysteem.txt
  • Last modified: 2020/03/06 07:53
  • (external edit)