1 votes

Autorisations pour les fichiers PHP

Je viens de lancer un serveur ec2 et j'ai mis tout le code php sur le serveur et j'ai besoin de changer les permissions pour qu'un utilisateur ne puisse pas aller sur le site comme http:example.com/admin et voir la liste des fichiers php....Dois-je changer les permissions sur l'ensemble du dossier ou sur chaque fichier ou y a-t-il une procédure récursive pour modifier les permissions sur l'ensemble du dossier ou sur chaque fichier ? -R Je pense qu'ils sont tous actuellement en 777 ... ce qui est mauvais.

1voto

jammus Points 1796

Si vous utilisez Apache, le fait de cacher des éléments pour qu'ils ne soient pas listés est généralement géré dans un .htaccess ou dans le fichier configuration apache et non avec les autorisations du système de fichiers.

1voto

Matthieu Riegler Points 20160

Pour empêcher les gens de voir quels fichiers se trouvent dans un répertoire, avec Apache, il suffit de désactiver l'option "Indexes" dans le fichier Annuaire directive. Vous pouvez également modifier la valeur par défaut à l'aide d'un fichier .htaccess, mais pour un serveur de production, la valeur par défaut doit être "no indexes".

En ce qui concerne les autorisations de fichiers, je préconise de passer presque tout en lecture seule, ou en lecture et exécution si nécessaire (544 ou 554). Laisser des droits d'écriture sur des fichiers qui n'ont pas besoin d'être écrits, c'est s'exposer à des problèmes.

0voto

Alexander Dzyoba Points 125

Vous devez définir des règles dans votre fichier .htaccess et définir les autorisations sur le répertoire. Le dernier est fait par chmod -R 700 qui est un mode de changement récursif pour le rendre lisible, inscriptible et exécutable seulement par le propriétaire (vous).

0voto

Shadur Points 1247

Pour modifier rapidement les permissions de tous les fichiers d'une arborescence de répertoires (et oui, 777 est un niveau de permission horriblement mauvais à leur accorder), vous aurez besoin d'une commande telle que

find ./ -exec chmod go-w {} \;

Cette opération passe en revue de manière récursive tous les fichiers et dossiers de ce sous-répertoire et supprime l'accès en écriture pour les personnes qui n'en sont pas propriétaires.

Vous pouvez également utiliser

find ./ -type f -exec chmod -x {} \;

pour supprimer le bit exécutable de tous les fichiers qui ne sont pas des répertoires. Apache n'en a pas besoin pour exécuter les scripts.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X