web-dev-qa-db-fra.com

Quel est le chmod normal?

Sur mon serveur Web, mes autorisations de fichiers sont partout et je veux tout réinitialiser à ce qu'il était à l'origine. Je ne veux pas que des utilisateurs puissent entrer et supprimer des éléments de mon serveur Web! Je veux juste qu'ils puissent regarder les pages php, etc.

Quel chmod dois-je utiliser?

35
James

Ils devraient être aussi restrictifs que possible, mais pas plus.

Habituellement 0644 est un bon choix, qui donne au propriétaire des droits de lecture et d'écriture, mais tout le monde ne lit que. 0755 pour les répertoires. Mais cela peut dépendre de vos paramètres système spécifiques.

29
carl

Voici un résumé que j'ai rassemblé

  • chmod tous les fichiers à 644
  • chmod all. htaccess fichiers vers 644
  • chmod tous les fichiers robots.txt vers 644
  • chmod tous les répertoires à 711
  • chmod tous les répertoires avec la liste des répertoires (.htaccess Options + Indexes) vers 755
  • chmod tous les répertoires dans lesquels les utilisateurs peuvent télécharger les fichiers vers 755 (ex:/uploads /).

Explications:

  • 644 signifie:
    • 6: le propriétaire du fichier/répertoire peut lire et écrire , mais pas exécuter. Puisque les fichiers ne sont pas exécutables, vous n'avez pas besoin d'avoir les droits "x" ici (6 signifie r + w. 7 signifie r + w + x).
    • 44: Le groupe auquel appartient le fichier/répertoire (voir le groupe en utilisant ls -l) et tout le monde (le public) peut lire le fichier, mais ne pas l'exécuter ou y écrire (autorisation numéro 4).
  • 711 signifie:
    • 7: le propriétaire du fichier/répertoire peut lire , écrire , et exécuter . Cela est nécessaire pour les répertoires! Sans "exécuter" lorsque vous essayez de répertorier le répertoire, vous obtiendrez l'autorisation refusée.
    • 11: Le groupe auquel appartient le fichier/répertoire et le public disposer des droits d'exécution uniquement. Cela convient aux répertoires où vous ne voulez pas que d'autres personnes parcourent le contenu, mais souhaitez leur donner accès aux fichiers sélectionnés plus bas dans le répertoire.
  • 755 signifie:
    • 7: le propriétaire du fichier/répertoire peut lire , écrire , et exécuter .
    • 55: Le groupe auquel appartient le fichier/répertoire et le public avoir lire et exécuter les autorisations mais pas écrire. Cela permet aux utilisateurs de voir quels fichiers se trouvent dans un répertoire et de pouvoir lire ces fichiers sans les modifier.

Il existe également une calculatrice interactive en ligne que vous pouvez utiliser pour déterminer les autorisations à utiliser: https://chmod-calculator.com/

24
Katie

Si vous souhaitez tout réinitialiser, exécutez cette commande et triez les conséquences. 644 est généralement une bonne autorisation pour les fichiers et 711 pour les répertoires. Si vous autorisez les listes de répertoire, utilisez 755.

$ find /var/www/html \( -type f -execdir chmod 644 {} \; \) \
                  -o \( -type d -execdir chmod 711 {} \; \)

Si vous voulez quelque chose de moins invasif, supprimez simplement les bits d'écriture pour le groupe et "autre".

$ chmod -R go-w /var/www/html
18
ashawley

Je pense 644 est standard pour les fichiers et 755 pour les répertoires.

5
Eric Conner

Si votre serveur Web ne sert que des pages Web, sans autoriser l'accès via (par exemple) un FTP anonyme, des autorisations de fichiers incorrectes ne permettent pas aux utilisateurs de supprimer des fichiers.

Si d'autres personnes ont accès à votre serveur par d'autres moyens (par exemple SSH), assurez-vous que le bit d'écriture n'est pas défini pour les utilisateurs autres que vous. Exécuter:

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

Cette commande restreindra les autorisations de tous les fichiers et répertoires dans lesquels elle est exécutée.

1
Stephan202

Quelle que soit l'approche que vous utilisez, assurez-vous de faire des tests approfondis s'il y a une chance que votre application Web utilise des fichiers ou des répertoires disposant de certaines autorisations. Bien qu'autoriser des autorisations trop permissives soit probablement une mauvaise conception, cela se produit parfois, vous pouvez donc casser l'application.

0
Dana the Sane