Projectrechten (mappen, bestanden) instellen op Vast
Betekenis van groepen aangemaakt op de server
- Gebruikersaccounts: Alleen de groep voor primaire accounts (automatisch gegenereerd, vereist)
- adm Toestemming om systeemlogs te bekijken (meestal vereist voor beheerdersaccounts, niet nodig voor normale bewerkingen)
- cdrom Toegang tot een CD/DVD-apparaat (niet nodig als de server tegenwoordig geen CD-ROM heeft)
- sudo : Gebruik beheerdersrechten (vereist)
- dip : Inbel/PPP netwerk gerelateerd (voor oude modems, zelden nodig)
- www-gegevens : Webserver-accountgroep (Debian/Ubuntu Apache-Nginx standaard)
- plugdev Toegang tot hotplug-apparaten zoals USB (niet nodig als de server geen USB gebruikt)
- lpadmin Printer Manager (niet nodig als u geen printers op de server gebruikt)
- lxd LXD/LXC container management (niet nodig als je Proxmox of LXD niet direct gebruikt)
- sambashare Toegang tot gedeelde Samba-mappen (niet nodig als je Windows delen niet gebruikt)
- dokwerker : Docker beheerdersrechten (vereist voor Docker schrijven)
- www aaPanel kan worden gebruikt als een webserver account tijdens de installatie (bevestiging van OpenLiteSpeed/Nginx uitvoeringsaccount vereist)
- webdev : een groep die je zelf maakt (user_group + www samengebonden om webontwikkeling te beheren, sterk aanbevolen ✅)
Controleer de lijst met groepen
# Een lijst van alle groepen weergeven
cat /etc/group
Dit bestand bevat de GroupName:x:GID:User1,User2,...
Het zou er ongeveer zo uit moeten zien.
🔎 Zien welke gebruikers in een bepaalde groep zitten
# Voorbeeld: De webdev groep
getent groep webdev
Voorbeelduitvoer:
webdev:x:1002:gebruiker_groep,www
→ naar de webdev-groep gebruikersgroep
, www
is inbegrepen.
1) Voeg www-data toe aan de webdev-groep + OK
Voeg de # groep toe
sudo usermod -aG webdev www-data
Herstart PHP-FPM om # weer te geven
Controleer of # www-data is in webdev
id www-data
# → webdev moet zichtbaar zijn in de groepenlijst
🔎 Alle groepen zien waartoe de huidige gebruiker behoort
groepen gebruiker_groep
Standaard vaste mapmachtigingen
- Eigenaargebruikersgroep
- Groepen:
webdev
- Directory:
2775
(inclusief setgid → nieuwe worden ook automatisch toegevoegd aan dewebdev
) - Bestand:
664
- Speciale bestanden:
wp-config.php
→640
- Speciale mappen:
wp-content/uploads
,wp-content/plugins
,wp-content/thema's
→775
Houd
1) Stel projectrechten in
cd /www/wwwroot/projecten
Wijzig de # eigenaar/groep
sudo chown -R user_group:webdev .
Fix # map permissies
sudo find . -type d -exec chmod 2775 {} \;
Fix # bestandsrechten
sudo find . -type f -exec chmod 664 {} \;
# Beveilig wp-config.php
sudo chmod 640 wp-config.php
# wp-content map schrijven
sudo chmod -R 775 wp-content/uploads wp-content/plugins wp-content/themes
2) Instant Read Test (onmiddellijk controleren of rechten OK zijn)
# Poging om wp-config.php te lezen met www-data rechten
sudo -u www-data head -n 3 /www/wwwroot/projecten/wp-config.php
Als je de inhoud ziet zonder # fout, ben je klaar om te gaan
Hoe beheren
- Wanneer je een nieuw WordPress project installeert, voer dan dezelfde set commando's uit als hierboven → Vaste rechten instellen Setup voltooid.
- De rechten zijn Ontwikkeling/operaties gescheiden houden.
- Als je handmatige wijzigingen moet maken tijdens de productie, gebruik dan gewoon de
gebruikersgroep
Meld u aan bij uw account → Klik opwebdev
Dankzij groepsrechten kan het zonder problemen worden gewijzigd.
Β Onkruid