Werken met rechten op Linux

Werken met rechten op een Linux-systeem is soms ingewikkeld. Met een goed uitgedachten rechtenstructuur is het mogelijk om een omgeving op te zetten die zowel veilig als toegankelijk is.

Standaardrechten bij True

Indien u een SLA met True heeft afgesloten wordt uw server beheerd door True. Dat houdt in dat True de verantwoordelijkheid neemt voor de systeemconfiguratie van de server. U krijgt een linux-gebruiker om uw applicatie mee te plaatsen en onderhouden. Web-processen draaien onder een eigen gebruiker. Beide gebruikers zitten in eenzelfde groep. Hierdoor heeft het web-proces niet per definitie dezelfde rechten op applicatiebestanden als de beheersgebruiker. Dit betekent dat de webserver uw applicatiebestanden wel mag lezen maar niet mag aanpassen.

True richt uw webserver standaard in op een manier waar veiligheid vooraan staat. Zoals uw server wordt opgeleverd is het mogelijk webapplicaties te plaatsen en aan te roepen. Zaken zoals bestanden uploaden of plugins installeren via de webinterface zal met de standaardinstellingen niet lukken. Dit komt de veiligheid van de omgeving ten goede: op het moment dat uw applicatie misbruikt wordt door kwaadwillenden is het voor hen niet mogelijk uw applicatie aan te passen.
Door de rechten te versoepelen op de locaties waar dat nodig is, houdt u de veiligheid van uw server goed in de gaten.

Let op! Niet alle servers zijn op deze manier ingericht. Wilt u uit onderstaande stappen een handeling uitvoeren? U kan bij onze engineers controleren of de stap past bij uw wensen. Neem daarvoor contact op met onze engineers.

Schrijven en Uploads toestaan binnen de standaard rechtenset

Op het moment dat uw applicatie data moet kunnen schrijven op de webserver, bijvoorbeeld voor uploads of cache-bestanden, geef dan schrijfrechten aan de groep op de directory. Met onderstaande opdracht geeft u schijfrechten aan de groep voor alle directories in de doelmap, dus ook onderliggende directories.

Voer de onderstaanden opdracht uit via de SSH terminal:

$ find directory/ -type d -exec chmod 770 {} \;
Bijvoorbeeld:
 $ find wp-content/uploads/ -type -d -exec chmod 770 {} \;

Wilt u dat uw webapplicatie bestanden binnen de directory kan bewerken? Geef dan schrijfrechten aan de groep op de bestanden in de directory.

$ find directory/ -type -f -exec chmod 660 {} \;
Bijvoorbeeld:
 $ find wp-content/uploads/ -type -f -exec chmod 660 {} \;

Updates van WordPress toestaan binnen de standaard rechtenset

Gebruikt u WordPress, dan witl u graag vanuit het admin-scherm handelingen kunnen uitvoeren op de applicatie. Denk hierbij aan het updaten van WordPress, plugins of thema’s en het beheren van plugins en thema’s. Hiervoor raden wij aan updates via SSH te gebruiken.
Hier leest u hoe u WordPress updates middels SSH-keys mogelijk maakt.

Alternatieve oplossing

Indien u niet uit de voeten komt met de inrichting van rechten, zijn er enkele alternatieven. Deze hebben elk hun eigen voor- en nadelen. U kan hierbij bijvoorbeeld denken aan de scheiding van gebruikers opheffen. Leg uw specifieke gebruikssituatie voor aan onze engineers voor een passende oplossing.

Beheer- en webgebruiker hetzelfde maken

Het is via verschillende configuraties mogelijk om de beheer- en webgebruiker gelijk te maken. In dat geval heeft u slechts met één gebruiker te maken. Dit maakt het makkelijk omdat u geen rekening hoeft te houden met wie de eigenaar is van een bestand. In veel gevallen is het mogelijk om per website een eigen gebruiker in te stellen. Het lijkt in veel gevallen de makkelijkste optie maar is tevens de minst veilige optie. Op het moment dat ergens in de applicatie een veiligheidslek wordt misbruikt, heeft dat lek lees- en schrijftoegang tot alle bestanden van die gebruiker. Advies op maat is zeker verstandig.
Voorbeeld: U uploadt een afbeelding via uw webapplicatie. U verwijdert deze via uw sFTP client.
Voordelen: U hoeft geen rekening te houden met wie de eigenaar is van een bestand.
Nadelen: U verliest hiermee de controle wie een bestand mag bewerken, wat een veiligheidsrisico met zich meebrengt.