informatique:serveur:web-linux-apache:www-data-droits

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
informatique:serveur:web-linux-apache:www-data-droits [2023/02/09 16:12] – ↷ Page déplacée de informatique:serveur-web-linux-apache:www-data-droits à informatique:serveur:web-linux-apache:www-data-droits Cédric ABONNELinformatique:serveur:web-linux-apache:www-data-droits [2025/01/19 07:39] (Version actuelle) – [5. Bloquer les autorisations pour "other" et forcer l'accès en lecture/écriture pour le groupe ''www-data''] Recursion Cédric ABONNEL
Ligne 1: Ligne 1:
 +====== Configurer les droits des fichiers ======
  
 +Cette suite de commandes permet de configurer les droits sur le dossier ''/var/www/html'' afin de garantir un accès sécurisé tout en permettant à votre utilisateur actif, symbolisé par ''${USER}'', d'administrer ce répertoire. Ce dossier est, par défaut sous Debian, utilisé par le service Apache pour héberger les fichiers web.
 +
 +Le groupe ''www-data'' est le groupe utilisé par Apache pour exécuter ses services et accéder aux fichiers nécessaires.
 +
 +===== Étapes de configuration =====
 +
 +---
 +
 +==== 1. Ajouter l'utilisateur courant au groupe ''www-data'' ====
 +
 +Ajoutez votre utilisateur actuel (représenté par ''${USER}'') au groupe ''www-data'', qui est responsable des accès aux ressources du serveur web.
 +
 +<code bash>
 +sudo usermod -a -G www-data ${USER}
 +</code>
 +
 +Vérifiez l'affectation du groupe avec la commande suivante :
 +
 +<code bash>
 +id ${USER}
 +</code>
 +
 +---
 +
 +==== 2. Définir l'utilisateur comme propriétaire du dossier ''/var/www/html'' ====
 +
 +Assignez à votre utilisateur actif les droits de propriété sur le dossier et tous ses sous-dossiers/fichiers.
 +
 +<code bash>
 +sudo chown -R ${USER}:www-data /var/www/html
 +</code>
 +
 +---
 +
 +==== 3. Configurer les permissions d'accès pour l'utilisateur et le groupe ''www-data'' ====
 +
 +Autorisez uniquement l'accès à l'utilisateur et au groupe, en désactivant les permissions pour les "autres" utilisateurs.
 +
 +<code bash>
 +sudo chmod -R 770 /var/www/html
 +</code>
 +
 +Retirez les droits d'exécution inutiles sur les fichiers (uniquement pour l'utilisateur et le groupe) avec cette commande :
 +
 +<code bash>
 +find /var/www/html -type f -exec sudo chmod gu-x {} +
 +</code>
 +
 +---
 +
 +==== 4. Forcer la reprise du groupe pour les nouveaux fichiers et dossiers ====
 +
 +Assurez-vous que tous les nouveaux fichiers et dossiers créés dans ''/var/www/html'' héritent automatiquement du groupe ''www-data''.
 +
 +<code bash>
 +find /var/www/html -type d -exec sudo chmod g+s {} +
 +</code>
 +
 +---
 +
 +==== 5. Bloquer les autorisations pour "other" et forcer l'accès en lecture/écriture pour le groupe ''www-data'' ====
 +
 +Cette étape garantit une sécurité renforcée. Les permissions pour les "autres" utilisateurs sont bloquées, et les membres du groupe ''www-data'' obtiennent automatiquement des droits en lecture et écriture.
 +
 +Cette commande nécessite le programme ACL (Access Control List). Si ce dernier n’est pas installé, utilisez :
 +
 +<code bash>
 +sudo apt install acl
 +</code>
 +
 +Puis appliquez les réglages ACL suivants :
 +
 +<code bash>
 +sudo setfacl -R -m d:g:www-data:rwX,d:o::rX /var/www/html
 +</code>
 +
 +---
 +
 +===== Vérification des configurations =====
 +
 +1. **Vérifiez les permissions sur le dossier :**
 +
 +<code bash>
 +ls -ld /var/www/html
 +</code>
 +
 +2. **Vérifiez les permissions ACL (si configuré) :**
 +
 +<code bash>
 +getfacl /var/www/html
 +</code>
 +
 +---
 +
 +===== Notes supplémentaires =====
 +
 +  * **Sécurité des fichiers sensibles :** Si des fichiers spécifiques nécessitent des permissions plus restrictives (par exemple, des fichiers de configuration contenant des mots de passe), ajustez leurs permissions individuellement.
 +  * **Collaboration multi-utilisateurs :** Si plusieurs utilisateurs doivent collaborer, ajoutez-les au groupe ''www-data'' et appliquez des permissions cohérentes pour éviter les conflits.
 +
 +---
 +
 +Ce guide couvre les étapes essentielles pour sécuriser et administrer le répertoire ''/var/www/html'' tout en permettant une gestion efficace pour les utilisateurs autorisés.