This page has been robot translated, sorry for typos if any. Original content here.

chmod - change le mode d'accès aux fichiers

On constate de plus en plus que certains constructeurs de sites Web novices qui sont passionnés par les scripts (perl / cgi, php, etc.) ne savent pas ce que chmod est et comment l’utiliser. Dans ce guide de démarrage rapide, vous apprendrez ce que chmod est, comment il est défini et pourquoi il est nécessaire.

Il est parfois très important d’attribuer des autorisations à certains fichiers et dossiers situés sur le serveur Web, que ce soit pour des raisons de sécurité ou tout simplement pour le bon fonctionnement du script. Cette action s'appelle chmod ( ch ange file mod e) ou en russe: change le mode d'accès aux fichiers. Ce nom provient de la commande Unix, chmod, qui modifie les autorisations sur les fichiers. Au fil du temps, «chmod» est devenu synonyme du mot «permission».

Il y a trois groupes d'utilisateurs dont les droits nous intéressent: le propriétaire du fichier, le groupe et les autres utilisateurs.

En créant un fichier, l'utilisateur obtient automatiquement le plus grand droit de faire quoi que ce soit avec ce fichier, son groupe est légèrement inférieur et tous les autres sont complètement insignifiants. Sous Unix, il n’ya que trois droits de base: lire un fichier ou parcourir un répertoire («Lire»), modifier un fichier ou un dossier, écrire quelque chose dans celui-ci ou le supprimer complètement («écrit»). Dernier droit - le droit d'exécuter le fichier (“e X ecute”).

Le mode Chmod peut être indiqué sous forme numérique ou caractère. Par exemple: 755, rwxrxrx, 644, etc.

Comme vous l'avez déjà compris, les symboles r , w et x désignent respectivement lire , écrire et exécuter . Vous pouvez définir les autorisations de fichiers de cette manière via n'importe quel client FTP, par exemple, CuteFTP. Voici à quoi ressemble la fenêtre d’installation de chmod dans ce programme:

Chmod dans CuteFTP


Faites attention à la disposition des tiques. Les premières cases à cocher sont dans les champs Propriétaire: lire, écrire, exécuter (rwx); Viennent ensuite les champs «Groupes»: read, execute (rx); et enfin les champs “Rest”: read, execute (rx). En conséquence, nous avons obtenu les droits rwxrxrx sur le fichier (à son tour, les lettres et les champs). En d'autres termes, le propriétaire peut lire, écrire et exécuter le fichier. "Groupe" et "autres" ont le droit de lire et d'exécuter le fichier, mais pas d'écrire! Maintenant, vous devez comprendre l’importance d’installer des autorisations sur les fichiers et essayer d’assurer une sécurité maximale de vos scripts et de vos données sur le serveur à l’aide de cet outil.


Notez le nombre 755 dans le champ Manuel. Il s'avère que chaque droit a un certain code numérique et peut être défini manuellement:

  • 400 - le propriétaire a le droit de lire;
  • 200 - le propriétaire a le droit d'écrire;
  • 100 - le propriétaire a le droit de jouer;
  • 40 - le groupe a le droit de lire;
  • 20 - le groupe a le droit d'enregistrer;
  • 10 - le groupe a le droit de jouer;
  • 4 - les autres ont le droit de lire;
  • 2 - les autres ont le droit d'enregistrer;
  • 1 - les autres ont le droit de jouer.
La somme de ces points donne le chmod désiré. Par exemple, nous voulons que le propriétaire fasse tout, et que le groupe et le reste ne lisent que le fichier. Nous nous plions: 400 + 200 + 100 + 40 + 4 = 744. C'est-à-dire que nous avons besoin de chmod 744. Maintenant, il ne reste plus qu'à résumer les nombres correspondant aux droits d'accès pour lesquels nous voulons placer le fichier et à les installer.

Exemples:

400 + 40 + 4 = 444 - tout le monde a le droit de lire seulement.

400 + 100 + 10 + 1 = 611 - le propriétaire peut lire et exécuter, le reste - seulement exécuter.

400 + 200 + 40 + 4 = 644 - signifie que vous autorisez tout le monde à le lire, mais seul le propriétaire du fichier peut écrire dans ce fichier. Même si vous êtes le propriétaire du fichier et que vous l'ouvrez dans le navigateur, vous ne pouvez rien y écrire car l'accès via le navigateur vous rend anonyme.

400 + 200 + 40 + 20 + 4 + 2 = 666 - signifie que tout le monde peut lire et écrire ce fichier. Cela est nécessaire pour que les utilisateurs puissent faire des entrées dans les livres d'or, les forums, etc.

400 + 200 + 100 + 40 + 10 + 4 + 1 = 755 est une commande classique du script cgi. Un script CGI est un fichier exécutable auquel tout le monde devrait avoir accès pour la lecture et l’exécution. Seul le propriétaire de ce fichier peut le modifier ou le supprimer.

Je vais donner un tableau encore plus pratique, à mon avis, chmod:

Significations Propriétaire Groupe Public (Autres)
Lire = 4 X X X
Ecrire = 2 X
Execute = 1 X X X
Montant: (4 + 2 + 1) = 7 (4 + 1) = 5 (4 + 1) = 5

Et à la fin, je dirai brièvement comment ces autorisations sont établies. Ceci est fait en utilisant n'importe quel client ftp:

  • Dans Windows Commander, ils sont modifiés via les éléments de menu "Fichier"> "Modifier les attributs". Cela modifie les autorisations sur le ou les fichiers et / ou dossiers sélectionnés.
  • Dans FAR Manager, les autorisations des fichiers sélectionnés sont modifiées en appuyant sur Ctrl + A:
    [x] [x] [] [x] [x] [] [x] [x] [] - 666
    [x] [x] [x] [x] [] [x] [x] [] [x] - 755
  • Dans CuteFTP, les autorisations sont modifiées à l'aide de l'élément «Modifier les attributs du fichier» du menu qui apparaît lorsque vous cliquez avec le bouton droit sur le nom du fichier.