Cela pourrait être aussi simple que sudo usermod -a -G developers $username
en utilisant ACL.
Cela prend un peu de travail, cependant, pour commencer. Ceci est pour Ubuntu 10.10 au moins.
Montez d'abord les systèmes de fichiers avec l'option acl de / etc / fstab.
sudo vim /etc/fstab
UUID = xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx / ext4 par défaut, acl 0 1
sudo mount -o remount,acl /
Créez ensuite un groupe auquel un utilisateur peut appartenir à cette fin.
sudo groupadd developers
sudo usermod -a -G developers $username
L'utilisateur doit se déconnecter et se reconnecter pour devenir membre du groupe de développeurs.
Bien sûr, ne le faites pas si vous avez du contenu dans le répertoire / var / www que vous voulez,
mais juste pour illustrer la mise en place pour commencer:
sudo rm -rf /var/www
sudo mkdir -p /var/www/public
sudo chown -R root:developers /var/www/public
sudo chmod 0775 /var/www/public
sudo chmod g+s /var/www/public
sudo setfacl -d -m u::rwx,g::rwx,o::r-x /var/www/public
Remplacez ensuite les références à "/ var / www" par "/ var / www / public" dans un fichier de configuration et rechargez.
sudo vim /etc/apache2/sites-enabled/000-default
sudo /etc/init.d/apache2 reload
Si nous voulions restreindre la suppression et le renommage de tous sauf l’utilisateur qui a créé le fichier:
sudo chmod +t /var/www/public
De cette façon, si nous voulons créer des répertoires pour les frameworks qui existent en dehors du
Apache document root ou peut-être créer des répertoires inscriptibles sur le serveur, il est toujours facile.
Répertoire de journaux en écriture Apache:
sudo mkdir /var/www/logs
sudo chgrp www-data /var/www/logs
sudo chmod 0770 /var/www/logs
Répertoire de bibliothèque lisible par Apache:
sudo mkdir /var/www/lib
sudo chgrp www-data /var/www/logs
sudo chmod 0750 /var/www/logs