Droits d'Accès pour la Sécurité du Projet
Droits d'accès et Sécurité
Dans notre projet, le service clé qui doit lire et écrire des fichiers est le serveur web Apache, qui s'exécute sous l'utilisateur www-data.
Voici une analyse complète des droits recommandés et la méthode pour les appliquer sans compromettre la sécurité de votre Raspberry Pi.
I. Comprendre la structure des droits
Les permissions Linux se définissent souvent par trois chiffres (ex: 644). Voici ce qu'ils signifient pour notre projet :
| Chiffre | Permissions | Description |
|---|---|---|
| 7 | rwx | Lecture, Écriture et Accès complet. |
| 6 | rw- | Lecture et Écriture (idéal pour les fichiers JSON). |
| 4 | r-- | Lecture seule (sécurité maximale pour le code PHP). |
Format : Propriétaire | Groupe | Autres
II. Recommandations par fichier
| Fichier / Dossier | Droit | Raison |
|---|---|---|
/var/www/html/*.php | 644 | Le serveur lit le code mais ne doit jamais le modifier. |
/var/www/html/data/ | 775 | Nécessaire pour créer et modifier les fichiers JSON. |
/var/log/camera_status.log | 664 | Permet d'écrire l'historique des événements. |
III. Application des commandes
L'approche la plus sûre : vous (pi) restez propriétaire, mais vous autorisez le groupe www-data à travailler.
1. Propriété du dossier Data :
sudo chown -R pi:www-data /var/www/html/data sudo chmod 775 /var/www/html/data 2. Fichiers de configuration et Logs :
sudo chmod 664 /var/www/html/data/*.json sudo chown pi:www-data /var/log/camera_status.log sudo chmod 664 /var/log/camera_status.log 3. Protection du code PHP :
sudo chmod 644 /var/www/html/*.php Si vous transférez de nouveaux fichiers, ils reprendront souvent les droits par défaut. N'oubliez pas de relancer la commande chmod 644 sur les fichiers PHP après chaque mise à jour importante.