Maison / l'Internet / Commande chmod - Exemples d'utilisation. Définir les droits d'accès sous forme de code numérique Qu'est-ce que Chmod

Commande chmod - Exemples d'utilisation. Définir les droits d'accès sous forme de code numérique Qu'est-ce que Chmod

Chaque fichier et dossier possède 3 attributs d'accès (droits) :

  1. Lecture à droite (indiquée par la lettre "r" de l'anglais "lire").
  2. Le droit de modifier et d'écrire dans un fichier (indiqué par la lettre "w" de l'anglais "écrire").
  3. Le droit d'exécuter (exécuter) un script (indiqué par la lettre "X" de l'anglais "exécuter"). Sur l'hébergement mutualisé, le droit d'exécution s'applique uniquement aux dossiers et scripts CGI. Pour les fichiers ordinaires (pages HTML, images, scripts PHP, etc.) le droit d'exécution ne s'appliquera pas.

Pour les dossiers, ces attributs signifient :

  • Droit à en lisant Permet à l'utilisateur de lister le contenu d'un dossier.
  • Droit à enregistrer vous permet de créer et de supprimer des fichiers dans ce dossier.
  • Droit à exécution vous permet d'accéder à ce dossier.

Il existe plusieurs manières d'enregistrer les droits d'accès : notation alphabétique et numérique. Vous trouverez ci-dessous les correspondances entre les deux types d'enregistrements :

Enregistrement numériqueSaisie de lettresDroits
«0» --- Rien n'est permis
1 --XExécution
2 -w-Enregistrer
3 -wxEnregistrement et performance
4 r--En lisant
5 r-xLecture et exécution
6 rw-Lire et écrire
7 rwxLire, écrire et exécuter

Catégories d'utilisateurs

Pour chaque fichier (et dossier), il existe 3 catégories d'utilisateurs :

  1. Propriétaire du fichier (dossier).
  2. Groupe d'utilisateurs auquel appartient le propriétaire.
  3. Tous les autres utilisateurs.

Si un enregistrement numérique est utilisé, le premier chiffre détermine les droits du propriétaire, le deuxième - les droits du groupe et le troisième - les droits de tous les autres utilisateurs.

Lors de l'écriture alphabétique, les trois premiers caractères déterminent les droits du propriétaire, les trois seconds déterminent les droits du groupe et les trois troisièmes déterminent les droits de tous les autres utilisateurs.

Exemples de droits d’accès aux notices numériques et alphabétiques et explications de ceux-ci :

NumériqueLettrePropriétaireGroupeAutre
755 rwxr-xr-xaccès totallire et jouerlire et jouer
644 rw-r--r--écrire et lireseulement en train de lireseulement en train de lire
555 r-xr-xr-xlire et jouerlire et jouerlire et jouer

Quels droits faut-il fixer ?

Généralement, les autorisations correctes pour les dossiers sont "755", et pour les fichiers - "644", mais il peut y avoir des exceptions dont le développeur du site doit être conscient. Vous pouvez également trouver des informations sur les attributs d'accès utilisés dans la documentation ou sur les forums thématiques du CMS que vous utilisez.

Comment modifier les autorisations sur les fichiers et dossiers ?

Il existe deux manières de modifier les droits d'accès à un fichier ou un dossier : dans votre panneau de contrôle d'hébergement Et via SSH.

Modification des autorisations dans le panneau de contrôle d'hébergement

Pour modifier les autorisations dans votre panneau de contrôle d'hébergement :


Modification des autorisations via SSH

Pour définir les autorisations pour un fichier individuel:

Prêt! Les autorisations de fichiers/dossiers seront modifiées.

Que sont les scripts CGI ?

CGI - Interface de passerelle commune est une norme pour l'interface (communication) d'un programme d'application externe avec un serveur d'informations tel que HTTP, serveur Web. Généralement, les documents hypertextes récupérés sur les serveurs WWW contiennent des données statiques. À l'aide de CGI, vous pouvez créer des programmes CGI, appelés passerelles, qui, en interaction avec des systèmes d'application tels qu'un système de gestion de base de données, une feuille de calcul, des graphiques commerciaux, etc., peuvent afficher des informations dynamiques sur l'écran de l'utilisateur. Le programme de passerelle est lancé par le serveur WWW en temps réel. Le serveur WWW garantit que la demande de l'utilisateur est transmise à la passerelle et la passerelle, à son tour, à l'aide des outils du système d'application, renvoie le résultat du traitement de la demande à l'écran de l'utilisateur. Le programme de passerelle peut être codé en C/C++, Fortran, Perl, TCL, Unix Schell, Visual Basic, Apple Script. En tant que module exécutable, il est écrit dans un sous-répertoire nommé cgi sur le serveur WWW.

Quelles mesures doivent être prises pour définir les droits d'accès aux sous-répertoires à l'intérieur de public_html, que signifie 711 (rwx--x--x) et pourquoi le site ne fonctionnera-t-il pas correctement sans définir ces droits ?

Sous Unix OS (Linux), il existe une commande chmod - qui modifie les droits d'accès aux fichiers et aux répertoires. Par conséquent, pour définir les autorisations sur 644 pour le fichier de test, vous devez exécuter la commande :

test chmod 644

Les droits d'accès sont définis sur les répertoires, ainsi que sur les fichiers.
Si l'utilisateur dispose de l'autorisation de lecture (r) sur un répertoire, il peut alors visualiser son contenu avec la commande ls. Avec l'autorisation d'écriture dans le répertoire (w), l'utilisateur peut créer, supprimer et modifier des fichiers dans le répertoire. Si le droit d'exécuter (x) est défini, alors l'utilisateur peut accéder au répertoire avec la commande CD ou utilisez les fichiers qu'il contient. Ainsi, si les autorisations sont définies sur 711 (rwx--x--x) sur un répertoire, cela signifie que seul son propriétaire peut créer, éditer, supprimer des fichiers et visualiser le contenu du répertoire. Les fichiers contenus dans ce répertoire peuvent être utilisés (exécutés, visualisés) aussi bien par son propriétaire que par d'autres utilisateurs. Définir de tels droits d'accès sur les répertoires à l'intérieur public_html dicté par des considérations de sécurité. Si vous définissez des restrictions plus clémentes sur l'accès aux répertoires, vous ouvrez la possibilité d'un accès non autorisé aux fichiers qu'ils contiennent. Sur cgi-scripts (fichiers exécutables) qui doivent être situés dans le répertoire public_html/cgi, les autorisations doivent être définies sur 700 (rwx------), puisque les scripts sont exécutés sous l'UID du propriétaire.

Que signifie « Autorisations de fichier 644 (rw-r--r--) » ?

Le premier chiffre est l'autorité du propriétaire du fichier,
le second - le groupe auquel appartient le propriétaire,
le troisième - les utilisateurs restants.
Dans ce cas : le propriétaire a un accès en lecture et en modification (rw) à ce fichier, tous les autres n'ont qu'un accès en lecture (r).

Dans quel système numérique les droits d'accès aux répertoires et aux fichiers sont-ils indiqués ?

En octal.

1 - x (eXecute) -- la possibilité d'exécuter ce fichier ;
2 - w (Écriture) -- capacité d'écriture ;
4 - r (Lire) - capacité de lire.

En conséquence, les chiffres définitifs sont obtenus par addition.

Comment faire avec .htaccess-file, de sorte que par défaut (par défaut) ils lisent également .shtm-files (c'est-à-dire que maintenant dans un dossier vide, vous pouvez mettre index.htm/.html/.shtml comment ajouter à cette liste .shtm, .phtml(si nécessaire) ou .php3 et ainsi de suite.

Veuillez indiquer dans .htaccess directif AjouterType, dans les paramètres duquel répertorient les types de fichiers requis.
Notons immédiatement que .php3 Et .phtml ne sera pas exécuté comme
scripts php.
Tous les scripts doivent être dans le répertoire public_html/cgi, avoir une extension .cgi et droits 700 .

Puis-je coller dans un fichier index.html SSI instructions et que dois-je faire pour cela ?

Spécifiez la directive dans .htaccess AddHandler analysé par le serveur, dans les paramètres desquels répertorient les types de fichiers requis.
Dans ce cas, la directive ressemblera à ceci :

AddHandler serveur-parsed.html

Je vais héberger votre serveur web en encodage koi8r. Que dois-je faire pour cela ?

Notre Apache est configuré par défaut pour afficher du contenu contenant du texte russe codé gagner-1251.
Pour utiliser un encodage différent, vous devez l'écrire dans le fichier .htaccess directif CharsetSourceEnc. Puisque vous utilisez l'encodage koi8-r, cette directive ressemblera à :

CharsetSourceEnc koi8-r

Où pouvez-vous lire sur Apache, Perl, PHP et PostgreSQL ?

Où se trouve le programme de messagerie sur votre serveur ?

/usr/bin/sendmail

Aujourd'hui, je voudrais parler des droits d'accès aux fichiers et dossiers (lecture). Ce concept est apparu dans le monde du webmastering à partir de systèmes de type Linux (Unix) sur lesquels fonctionnent la plupart des services d'hébergement.

Et le nom Chmod lui-même est le nom d'un programme sous Linux qui vous permet d'attribuer des droits d'accès à divers objets. Et puisque votre site Web est installé sur un serveur exécutant Linux (Unix) d'une variante ou d'une autre, l'utilisation des objets de votre site Web sera soumise aux règles établies par les systèmes d'exploitation Linux (Unix).

Sous Windows, pratiquement tous les fichiers sont définis avec des autorisations maximales, ce qui, en fait, conduit à une domination sur nos ordinateurs et empêche également les propriétaires de sociétés antivirus de mourir de faim. Dans les systèmes Linux (Unix), la situation est différente : tout est plus compliqué, mais en même temps plus sûr. Si vous configurez tout correctement et avec compétence, vous pouvez augmenter considérablement la sécurité de votre site Web.

Concepts de base des droits d'accès aux fichiers et dossiers

Si vous laissez tout au hasard et ne vous souciez pas de définir les privilèges nécessaires, la probabilité que votre ressource soit piratée ou infectée par un code malveillant sera très élevée. C'est bien si vous avez réalisé toutes vos données, mais et sinon ?!

Par conséquent, il est préférable de configurer et de modifier immédiatement et sans délai le Chmod pour tous les objets importants de votre moteur, sur la base du principe du minimalisme. Ceux. donner aux objets les droits minimaux nécessaires au bon fonctionnement du site.

Comprenons d'abord l'essence du problème afin de comprendre ce que nous mettons exactement en place et comment. Alors, commençons. Les droits d'accès sont séparés pour les fichiers et les répertoires. Ils sont désignés de la même manière, mais signifient des choses légèrement différentes.

A son tour, en ce qui concerne les fichiers, il est possible :

  • r - droit de lire les données.
  • w - pour modifier le contenu (enregistrer - modifier uniquement le contenu, mais pas supprimer).
  • x - pour exécuter le fichier.

Examinons de plus près les capacités d'exécution de fichiers. Le fait est que sous Linux, n'importe quel fichier peut être exécuté. Qu'il soit exécutable n'est pas déterminé par son extension (le concept d'extension est absent dans le système de fichiers Unix), mais par les droits d'accès Chmod. Si un fichier a le droit d'exécution « X », cela signifie qu'il peut être exécuté.

En ce qui concerne les répertoires, il est possible :

  1. r - droit de lire le répertoire (vous pouvez lire le contenu du répertoire, c'est-à-dire obtenir une liste des objets qui s'y trouvent)
  2. w - pour modifier le contenu du répertoire (vous pouvez y créer et supprimer des objets, et si vous disposez des droits d'écriture, vous pouvez même supprimer des fichiers qui ne vous appartiennent pas)
  3. x - pour entrer dans un répertoire (c'est toujours coché en premier, et même si vous disposez de tous les privilèges nécessaires sur un objet qui est enfoui profondément dans la chaîne de répertoires, mais que vous n'avez pas l'attribut « X » pour accéder à au moins un répertoire sur le chemin vers ce fichier, alors vous n'y parviendrez jamais)

Dans les systèmes Linux, tout cela est distribué par l'administrateur principal de l'ordinateur, auquel il accède en saisissant un mot de passe. Et si la plupart des objets ont des droits en lecture seule, alors les virus n'auront pratiquement rien à faire sur un tel ordinateur, car ils ne pourront ni s'y écrire ni ensuite s'accomplir. C'est exactement le résultat que nous devons obtenir en définissant le Chmod nécessaire sur les objets de notre site.

Privilèges pour les groupes d'utilisateurs

Les privilèges eux-mêmes sont divisés en trois catégories selon qui accède à l'objet :

  • "utilisateur" - vous (directement le propriétaire du fichier)
  • "groupe" - g (membre du même groupe que le propriétaire)
  • "monde" - o (tous les autres)

Le serveur détermine à quel groupe d'utilisateurs vous attribuer lorsque vous vous connectez au serveur. Lorsque vous vous connectez par exemple à un serveur via FTP, vous vous connectez avec votre nom d'utilisateur (et votre mot de passe), puis le serveur vous affecte au groupe « utilisateur » (« u) ».

Les autres utilisateurs qui se connectent également via FTP au serveur seront affectés au groupe « groupe » (« g »), et un visiteur qui accède à votre site Web en utilisant son navigateur sera affecté au groupe « monde » (« o »). .

Variations de trois valeurs possibles "r", "w" et "x" pour trois catégories "u", "g" et "o" et définir Chmod dans les fichiers. Si une catégorie n'est pas précisée, elle est remplacée par un trait d'union « - ». Les privilèges sont spécifiés séquentiellement dans l'ordre indiqué :

  1. d'abord les droits du propriétaire - "u"
  2. puis pour le groupe - "g"
  3. et à la fin - pour tout le monde - "o"

Une fois que le serveur a attribué un visiteur à un certain groupe, il lui accorde le droit d'agir sur les objets, après quoi le visiteur pourra lire, écrire ou exécuter le fichier (en fonction de ce que son groupe est autorisé à faire avec cet objet). .

Pour visualiser le contenu d'un répertoire, celui-ci doit avoir l'attribut read « r » (pour le groupe auquel le serveur a assigné le visiteur). Pour créer un fichier ou un dossier dans un répertoire existant, ce répertoire existant doit avoir un attribut pour l'entrée « w ».

Pour plus de clarté, regardons un exemple où le propriétaire du fichier (« utilisateur » - « u ») a tous les droits : lire, écrire et exécuter, et tous les autres utilisateurs n'ont que le privilège de lecture. L'entrée pour un tel Chmod ressemblera à ceci : "rwx r-- r--".

Regardons cela en détail : "rwx" (cet enregistrement précise les droits sur l'objet pour le propriétaire - "u"), "r--" (cet enregistrement précise les droits sur le même objet, mais si le visiteur est attribué à un groupe par le serveur - " g"), "r--" (cette entrée définit les privilèges sur l'objet pour tous les autres utilisateurs - "o").

Quelle est la différence entre les autorisations de fichiers et de dossiers ?

Il s'avère qu'il existe trois groupes d'utilisateurs et trois actions possibles avec les objets. Vous êtes encore confus ? Mettons tout ce qui est dit ci-dessus sur les étagères sous forme de tablettes. Voyons d’abord en quoi ils diffèrent :

Et aussi un tableau montrant différentes combinaisons Chmod pour différents types d'objets :

Rien ne peut être fait

L'accès au répertoire et à ses sous-répertoires est refusé

Peut voir et modifier le contenu

Vous pouvez ajouter, supprimer, modifier le fichier de répertoire

Exécuter si le fichier est binaire

L'utilisateur peut exécuter un fichier binaire dont il sait qu'il existe, mais n'est pas autorisé à entrer ou à lire le répertoire

Chmod exprimé en chiffres (777, 400, 666, 755, 444)

Vous pouvez voir qu'ici nous utilisons des entrées utilisant des lettres latines et des traits d'union pour décrire les droits d'accès, mais vous avez probablement déjà rencontré le fait que Chmod est généralement spécifié numériquement, par exemple, la combinaison bien connue : 777, qui permet tout à tout le monde.

En effet, les privilèges sont également indiqués par des chiffres :

  1. r (lire) est remplacé par 4
  2. w (enregistrement) est remplacé par 2
  3. x (exécution) est remplacé par 1
  4. 0 signifie ne rien faire (ce qui est indiqué par un trait d'union en notation alphabétique)

Reprenons l'exemple d'enregistrement que j'ai donné un peu plus tôt : rwx r-- r-- . Si nous remplaçons les lettres et les traits d'union par des chiffres, conformément à la règle qui vient d'être décrite, et en additionnant en même temps les chiffres de chaque triplet, nous obtiendrons la forme numérique de cette entrée : 744.

Ceux. Il s'avère que la somme de ces nombres montre Chmod par rapport aux fichiers ou dossiers. Par exemple:

  • 7 (rwx) = 4 + 2 +1 (pleins droits)
  • 5 (r-x)= 4 + 0 + 1 (lire et exécuter)
  • 6 (rw-) = 4 + 2 + 0 (lecture et écriture)
  • 4 (r--) =4 + 0 + 0 (lecture seule)
  • etc.

Ce tableau montre toutes les combinaisons possibles de privilèges enregistrés numériquement :

Examinons maintenant différentes combinaisons de notations de nombres en relation avec les groupes d'utilisateurs :

"Propriétaire"

"Groupe"

"Repos"

effectuer

effectuer

effectuer

Vous-même (sauf dans le cas où vous accédez au site via FTP) et tous les autres visiteurs de votre ressource appartiennent au groupe « mot » (tous les autres), donc pour travailler avec le site Web, nous devons d'abord examiner le dernier (troisième ) chiffre de cette entrée.

Pour qu'un fichier script soit « lancé » lorsqu'un utilisateur travaille sur un site, il suffira que les droits sur celui-ci soient définis, à partir de « 4 » (r-- – lecture seule) (5,6,7 fera également l'affaire, mais cela sera redondant en termes de sécurité).

Pour le répertoire dans lequel se trouve le fichier de ce script, vous devez définir le minimum sur « 5 » (r-x - vous pouvez accéder au répertoire et lire son contenu, vous ne pouvez pas supprimer ou ajouter). 7 fonctionnera également, mais il sera également redondant en termes de sécurité.

Si vous avez besoin que le script non seulement lise, mais aussi « écrive » certaines données (par exemple, saisies par le visiteur), alors les autorisations minimales pour le « dossier » seront toujours « 5 », mais pour le « fichier » vous aura déjà besoin de « 6 » (lecture et écriture).

Très probablement, sur le serveur sur lequel vous avez copié le contenu du moteur de votre site Web, les Chmods suivants seront installés sur les objets :

Si vous aviez une ressource composée uniquement de pages HTML, vous pourriez tout laisser ainsi. Mais les sites modernes sont construits sur des moteurs, et il peut y avoir des objets sur lesquels il faut écrire au nom des visiteurs du groupe « monde » - o (tous les autres). Il peut s'agir de répertoires utilisés pour mettre les pages en cache ou de ceux dans lesquels des images, etc. seront chargées lorsque vous travaillez avec le site.

Il va sans dire que si vous accédez au site via FTP, vous pouvez écrire dans ces fichiers ou répertoires, mais lorsque vous travaillez avec l'interface Web en tant qu'utilisateur régulier, vous pouvez rencontrer des problèmes. Ainsi, l'établissement de certains droits doit être abordé de manière sélective :

pour tous les répertoires dans lesquels les fichiers doivent être écrits, mais n'ont pas besoin d'être effacés régulièrement

pour les dossiers dans lesquels les fichiers doivent être écrits et effacés (par exemple, pour un cache)

pour les fichiers simples en lecture seule (.html, .php, etc.)

pour les fichiers dans lesquels il peut être nécessaire d'écrire (par exemple, avec des bases de données .dat)

Comment attribuer Chmod en utilisant PHP

Comment tout cela peut-il être mis en pratique pour votre site Web ? En principe, tout est simple. Pour attribuer des droits d'accès, vous pouvez :

Mais si vous ne pouvez modifier Chmod en aucun fichier, vous pouvez essayer de les attribuer à l'aide des outils PHP. Vous pouvez utiliser le code suivant :

Vous devrez remplacer file_name_x.php et directory_name_x par les noms réels des fichiers et dossiers pour lesquels vous souhaitez modifier le mod. En conséquence, pour les fichiers, il sera défini sur 666 et pour les répertoires - 777. Placez ce code PHP dans un fichier à l'aide de n'importe quel bloc-notes de texte (je recommande) et donnez-lui l'extension .php, enfin, par exemple, comme prava.php.

Copiez prava.php via FTP dans le répertoire dans lequel il n'est pas possible d'attribuer des droits d'accès par des moyens standards. Dans la barre d'adresse de votre navigateur, écrivez le chemin vers prava..php) et appuyez sur « Démarrer » ou entrez sur votre clavier. Ça y est, désormais les privilèges seront complètement modifiés en utilisant PHP.

Pour Joomla, immédiatement après l'avoir installé, vous pouvez définir 777 sur les répertoires suivants :

Administrateur/sauvegardes/ administrateur/cache/ administrateur/composants/ administrateur/modules/ administrateur/modèles/ cache/ composants/ images/ images/bannières/ images/histoires/ langue/ langue/en-GB/ langue/ru-RU/ media/ modules/ plugins/ plugins/content/ plugins/search/ plugins/system/ templates/

Après avoir installé toutes les extensions pour Joomla et effectué les réglages finaux, Chmod suit la plupart des répertoires ci-dessus afin d'augmenter la sécurité du site. retour au 755. Vous devrez laisser 777 pour les répertoires avec cache, sauvegarde et images.

Pour les fichiers moteur situés à la racine du site, à l'exception de sitemap.xml, il est préférable de définir 444 (lecture seule pour tous les groupes de visiteurs). Sur settings.php, il est parfois recommandé de le définir sur 400.

Je peux donner exactement les mêmes conseils concernant la définition des droits d'accès aux objets dans les moteurs SMF et WordPress. Il est conseillé, si possible, de le laisser de manière permanente. pour les répertoires 755(à l'exception du cache, des images, des répertoires de sauvegarde mentionnés ci-dessus, et peut-être quelques autres, si nécessaire), et pour les fichiers - 644.

Il est préférable de définir 444 sur les fichiers à la racine du site.

Si, lorsque vous travaillez avec un site, un problème survient avec l'impossibilité d'écrire des paramètres dans un fichier ou l'impossibilité de créer une sorte de répertoire, vous pouvez alors définir temporairement des droits plus importants sur ceux-ci (777, par exemple), puis tout restituer. retour (pour être en sécurité). Et en aucun cas ne devrait pas être laissé(pour faciliter l'utilisation du site) Chmod déraisonnablement gonflé.

Bonne chance à toi! A bientôt sur les pages du site blog

Vous pourriez être intéressé

Codage de texte ASCII (Windows 1251, CP866, KOI8-R) et Unicode (UTF 8, 16, 32) - comment résoudre le problème des crackers
OpenServer - un serveur local moderne et un exemple de comment l'utiliser pour installer WordPress sur un ordinateur
Que sont les adresses URL, en quoi les liens absolus et relatifs pour un site diffèrent-ils ?
Recherche Yandex par site et boutique en ligne
Plan du site Plan du site au format XML pour Yandex et Google - comment créer un plan du site dans Joomla et WordPress ou dans un générateur en ligne

De nombreux utilisateurs novices du système d'exploitation Linux sont souvent confus lorsqu'ils attribuent des droits d'accès à l'aide de la commande chmod.


Dans ce conseil, accessible et visuel, je donnerai exemples d'utilisation de la commande chmod . Utilisez simplement ces exemples dans votre travail, en remplaçant les fichiers ou répertoires nécessaires.

commande chmod est un outil pratique pour augmenter la sécurité du système d'exploitation et vous permet d'attribuer des droits d'accès vers des fichiers ou des répertoires.

Si vous exécutez le système en utilisant (ou en bénéficiant) des privilèges de superutilisateur étendus en tant que root, vous pourrezmodifier les droits d'accès de tout fichier et répertoire appartenant à n'importe quel utilisateur du système.

Si vous êtes un utilisateur standard, vous ne pourrez attribuer ou modifier des autorisations que sur les répertoires et fichiers que vous créez.

Attribuer des droits d'accès vers des fichiers ou des répertoires à l'aide de la commande chmod peut être réalisé de deux manières : en utilisant les modes symbolique et absolu.

Exemples d'utilisation de la commande chmod en mode caractère:

(La valeur initiale des autorisations de fichiers est rwxrwxrwx - accès complet pour tous)

Pour révoquer l'autorisation d'exécuter un fichier pour tous les utilisateurs et groupes :

$ fichier chmod ax(rw-rw-rw-)

Pour annuler l'écriture dans un fichier par un groupe et d'autres utilisateurs :

$ fichier chmod go-w(rw-r--r--)

Autorisation d'exécuter un fichier par propriétaire :

$ fichier chmod u+x(rwxr--r--)

Accorder au groupe les mêmes autorisations qu'au propriétaire du fichier :

$ chmod g=u fichier(rwxrwxr--)

Annuler la lecture et l'écriture dans un fichier par les utilisateurs du groupe et les autres utilisateurs :

$ fichier chmod go-rw(rwx--x---)

Exemples d'utilisation de la commande chmod en mode absolu:

Autorisation de lire, écrire et exécuter un fichier par tous les utilisateurs et groupes (contrôle total) :

$ fichier chmod777(rwxrwxrwx)

Définissez les autorisations de lecture et d'écriture pour le propriétaire, le groupe et les autres utilisateurs :

$ fichier chmod 666(rw-rw-rw-)

Définition de l'accès complet aux fichiers pour le propriétaire et en lecture seule pour le groupe et les autres utilisateurs :

$ fichier chmod 744(rwxr--r--)

Définition d'un accès complet au fichier pour le propriétaire du fichier et refus de l'accès au groupe et aux autres utilisateurs :

$ fichier chmod 700(rwx------)

Définition des autorisations de lecture et d'écriture pour le propriétaire du fichier et en lecture seule pour le groupe et les autres :

$ fichier chmod 644(rw-r--r--)

Définir les autorisations de lecture et d'écriture pour le propriétaire du fichier et son groupe et refuser l'accès aux autres :

$ fichier chmod 640(rw-r-----)

Définition de l'accès aux fichiers avec autorisation de lecture pour tous les utilisateurs et groupes :

$ fichier chmod 444(r--r--r--)

Autorisations de fichier pour la lecture, l'écriture, l'exécution par le propriétaire et la lecture, l'exécution par groupe et autres :

$ fichier chmod 755(rwxr-xr-x)

Autoriser l'accès en lecture et en exécution à un fichier pour un utilisateur et d'autres personnes et refuser l'accès à un groupe :

$ fichier chmod 505(rx---rx)

Si vous souhaitez attribuer des autorisations à tous les fichiers du répertoire actuel, mettez simplement un * (astérisque) après les autorisations que vous attribuez :

$ chmod 755 *

À la suite de l'exécution de cette commande, le propriétaire aura tous les droits (lecture, modification, exécution) sur tous les fichiers du répertoire courant, tandis que le groupe et les autres utilisateurs n'auront que des droits de lecture et d'exécution.

Si vous souhaitez que vos actions se propagent de manière récursive (y compris dans tous les sous-répertoires), utilisez l'option -R :

$ chmod -R 777 *

Le résultat de l'exécution de la commande ci-dessus sera de « parcourir » de manière récursive tous les sous-répertoires du répertoire actuel et d'attribuer un accès complet à tous les utilisateurs et groupes.

Cet article ne couvre que quelques exemples d’utilisation de la commande. chmod. Si vous souhaitez en savoir plus sur le travail de l'équipe chmod Et des droits d'accès sous Linux, faites attention à .

Il peut sembler assez irritant que sur le chemin du bonheur (lire, un site Web fonctionnel), il puisse y avoir des erreurs 403 et 500, des scripts brisés et des dossiers impossibles à supprimer. Les problèmes ci-dessus sont souvent associés à des autorisations mal définies sur les fichiers et les dossiers.

Vous pouvez rencontrer le problème de droits incorrects lors d'un déplacement depuis un autre hébergeur. Par exemple, vous avez décidé d'utiliser un fournisseur d'hébergement avec le système d'exploitation Windows. Et puis nous avons vu qu’il existe un hébergement spécialisé pour CMS – exactement ce dont vous avez besoin. Et vous avez décidé de passer au système d'exploitation Linux. C'est là que les problèmes commencent. Mais ne désespérez pas, cet article vous aidera à tout comprendre.

Les utilisateurs ordinaires de Windows sont loin de telles nuances. Bien que la notion de niveaux d’accès existe dans cet OS, elle est rarement utilisée. Par conséquent, si vous le souhaitez, vous pouvez ignorer cet article en toute sécurité.

Dans le cas de Linux, la situation est différente. Les systèmes de type UNIX nécessitent différents niveaux d'accès et différents droits sur les données. Les fichiers et dossiers sont conçus pour fonctionner trois catégories d'utilisateurs:
  • propriétaire (utilisateur);
  • groupe, qui inclut d'autres utilisateurs et peut inclure le propriétaire du fichier ;
  • d'autres - par exemple, les visiteurs du site qui devraient au moins avoir le droit de consulter le contenu que vous publiez.

Les autorisations des utilisateurs Linux peuvent être les suivantes :

Les droits suivants s'appliquent à chaque fichier et répertoire (utilisés sous forme alphabétique et numérique) :

lire( 4 ) – en lisant– le droit de lire le contenu du fichier ;

écrire( 2 ) – édition– le droit de créer, modifier, supprimer un fichier ou un répertoire ;

exécuter ( 1 ) – exécution– le droit d'exécuter le fichier et d'entrer dans le répertoire (coché en premier).

Ainsi, les droits des utilisateurs peuvent être répartis comme suit :

Les droits 777 accordent tous les privilèges à l'utilisateur, au groupe et aux autres utilisateurs du système.

Quelles autorisations dois-je utiliser pour les fichiers et dossiers dans cPanel ?

Droits d'accès standards, également pertinents pour notre hébergement virtuel :

Des dossiers - 644

Dossiers - 755 .

Ils offrent les privilèges suivants :

Pourquoi 755 et 644 ?

Ces droits permettent au propriétaire de travailler librement avec les données d'un compte virtuel, tout en respectant des mesures de sécurité, car l'édition et l'exécution de fichiers ne sont pas disponibles pour les autres utilisateurs du serveur sur lequel se trouve l'hébergement.

Le fonctionnement du site implique dans la plupart des cas l'utilisation de divers scripts qui y ajoutent de l'interactivité. Pour exécuter des scripts sur nos serveurs d'hébergement virtuel, suPHP est implémenté, qui lance et exécute le script au nom de son propriétaire. Il n'est donc pas nécessaire d'accorder des droits d'écriture à l'ensemble du serveur web Apache (777), comme cela arrive sur certains hébergements avec mod_PHP. Après tout, si vous accordez un maximum de droits aux fichiers et dossiers système, il existe un risque que des attaquants profitent du libre accès.

Travailler avec des scripts via suPHP et, par conséquent, définir les autorisations sur 755 et 644 est recommandé par les développeurs de nombreux cms, par exemple les populaires WordPress et Joomla.

Parfois, lorsque vous changez d'hébergeur et transférez des données vers un nouveau serveur, les anciens droits sur les données restent. Pour les changer il vous faut :

1. Connectez-vous à cPanel en tant qu'utilisateur

2. Dans la section Fichiers, sélectionnez Gestionnaire de fichiers(non disponible dans WHM, uniquement via cPanel)

3. Accédez au répertoire dans lequel vous devez modifier les autorisations pour les fichiers/dossiers. Par exemple, vers le répertoire public_html.

4. Il existe deux manières de modifier les autorisations pour un fichier/répertoire.

La première façon de modifier les autorisations consiste à utiliser le menu Gestionnaire de fichiers :

1) Sélectionnez le dossier/fichier souhaité et cliquez sur les droits (directement sur les numéros par exemple, 0755 ). Plus de détails dans la capture d'écran ci-dessous.

2) Entrez les droits requis et cliquez sur Sauvegarder.

1) Sélectionnez le dossier ou le fichier souhaité et cliquez sur l'icône Autorisations(la fonction est également disponible lorsque vous faites un clic droit sur un fichier/dossier).

2) Dans la nouvelle fenêtre, définissez les droits requis et cliquez sur Modifier les autorisations.

1. Vous devez vous connecter à votre compte d'hébergement via FTP ;

2. Cliquez avec le bouton droit sur le fichier ou le dossier et sélectionnez Autorisations de fichiers.

3. Définissez les autorisations dans une nouvelle fenêtre. Dans le cas d'un répertoire, vous pouvez modifier les droits de manière récursive en sélectionnant l'option « Redirection vers les sous-répertoires”.

Comment modifier les autorisations sur les fichiers et dossiers via SSH ?

Les propriétaires peuvent modifier les autorisations via le terminal à l'aide de la commande « chmod ».

  • Par exemple, vous devez configurer les autorisations 755 pour le dossier multimédia comme suit :
chmod 755 média

Attention : le changement s'effectue dans le répertoire dans lequel vous vous trouvez actuellement.

  • Pour modifier les droits de tous les fichiers du répertoire courant, utilisez le signe astérisque.
chmod 644 *
  • Si vous devez modifier les droits sur les fichiers dans tous les sous-répertoires d'un certain dossier, une modification récursive vous aidera, qui est effectuée en ajoutant une clé -R et astérisques :
chmod -R 644 *

Pour définir des autorisations sur plusieurs fichiers, vous devez lister leurs noms :

Chmod 644 fichier1.txt fichier2.txt fichier3.txt

Es tu intéressé? Vous souhaitez héberger et vous débrouiller ? Vous n'aimerez pas seulement nos offres ! Vous pouvez économiser gros en choisissant l’un de nos forfaits de services.