Je ne comprends pas les restrictions en termes d'imbrication de répertoires. Par exemple, les répertoires /var/www/folder/index.html
.
Toutes les réponses ici expliquent les autorisations uniquement en termes d’un répertoire distinct et d’un fichier. Personne ne fait attention à l'héritage.
Par exemple, je souhaite configurer un serveur Nginx pour servir le répertoire /var/www/folder
ainsi que tous ses sous-répertoires et fichiers. Comment devrais-je penser aux autorisations, aux propriétaires, aux groupes?
/var
- quelles autorisations? Que sont le propriétaire et le groupe?/var/www
- quelles autorisations? Que sont le propriétaire et le groupe?/var/www/folder1
- quelles autorisations? Que sont le propriétaire et le groupe?/var/www/folder/folder2/
- quelles autorisations? Que sont le propriétaire et le groupe?/var/www/folder/folder2/index.html
- quelles autorisations? Que sont le propriétaire et le groupe?Juste un rappel:
Ubuntu crée des dossiers avec des autorisations par défaut 755 et des fichiers avec des autorisations par défaut 644. Vous pouvez modifier cette valeur par défaut en jouant avec umask
. Donc, en général, aucun fichier n'hérite de ses permissions parent, mais les fichiers/répertoires nouvellement créés ont les permissions par défaut.
Retour à votre question:
Vous vous trompez avec les autorisations. Je veux juste que vous sachiez que les autorisations sont liées à ce que vous voulez faire et au niveau de sécurité que vous souhaitez utiliser. C’est donc relatif à l’utilisateur lui-même et personne ne peut répondre à vos questions!
En outre, vous devez faire la distinction entre les autorisations du dossier lui-même et les fichiers qu’il contient. Par exemple, vous demandez les permissions de/var. Alors qu'est-ce que tu veux dire? vous voulez dire le répertoire lui-même ou aussi les fichiers inclus. N'importe qui, prenons cela comme exemple pour expliquer ce que j'ai déjà dit. Voyons ce que/var inclut.
$ ls -l /var
total 128
drwxr-xr-x 2 root root 4096 Jul 17 08:18 backups
drwxr-xr-x 27 root root 4096 Jun 2 13:01 cache
drwxrwsrwt 2 root whoopsie 4096 Jul 24 2014 crash
drwxr-xr-x 2 root root 4096 May 20 2014 games
drwxr-xr-x 107 root root 4096 Jul 14 12:25 lib
drwxrwsr-x 2 root staff 4096 Apr 19 2012 local
lrwxrwxrwx 1 root root 9 May 22 12:52 lock -> /run/lock
drwxr-xr-x 31 root root 12288 Jul 23 08:02 log
drwxrwsr-x 2 root mail 4096 Apr 7 2014 mail
drwxr-xr-x 3 root root 4096 Jun 20 2014 NX
drwxr-xr-x 2 root root 4096 Apr 7 2014 opt
-rw-r--r-- 1 root root 65408 Jul 2 10:27 _r_udev_201310127.shm
lrwxrwxrwx 1 root root 4 May 22 12:52 run -> /run
drwxr-xr-x 14 root root 4096 Jun 17 20:29 spool
drwxrwxrwt 3 root root 4096 Jul 23 08:24 tmp
drwxrwxrwx 8 root root 4096 Jun 4 13:16 www
drwxr-xr-x 3 root root 4096 Jun 13 09:10 yp
Comme vous le voyez dans la liste des exemples ci-dessus, il existe des répertoires tels que crash, local et mail dont le groupe n'est pas root! Pourquoi? parce que ce que j'ai dit auparavant est lié à l'utilisation.
Donc, en général, utilisez simplement les autorisations qui vous sécurisent le plus possible et permettent à votre matériel de fonctionner.
Jetez un oeil à ma réponse https://askubuntu.com/a/638799/150504 pour plus d'informations sur les autorisations.
Exécutez le ls -l
pour répertorier les autorisations, le propriétaire et le groupe de tous les fichiers et répertoires d'un répertoire particulier:
ls -l /var
ls -l /var/www
ls -l /var/www/folder1
ls -l /var/www/folder/folder2
index.html sera inclus dans le contenu répertorié du dernier répertoire, aucune commande n'est donc nécessaire.
Cependant, si vous voulez connaître le propriétaire et la permission de ce fichier:
ls -l /var/www/folder/folder2/index.html
Les autorisations de fichier sont répertoriées dans le format suivant pour les fichiers:
-rwxrwxrwx
indique des autorisations de lecture, d'écriture et d'exécution pour tout le monde.
pour les annuaires:
drwxrwxrwx
Le premier rwx
indique les autorisations de lecture, d'écriture et d'exécution du propriétaire du fichier.
Les trois caractères suivants, rwx
, indiquent les autorisations de lecture, d'écriture et d'exécution pour tous les utilisateurs du groupe répertorié pour le fichier.
Les trois derniers caractères, rwx
, indiquent les droits de lecture, d'écriture et d'exécution pour tous les utilisateurs.
Ensemble, vous avez -rwxrwxrwx
, trois groupes de lettres avec trois lettres dans chaque groupe.
La commande suivante exemple autoriserait le propriétaire du fichier en lecture seule, en lecture seule pour les autres membres du groupe et en lecture seule pour tout autre utilisateur (-rwxr--r--
):
chmod 744 /var/www/folder/folder2/index.html
Sinon, si vous souhaitez appliquer des autorisations à tous les fichiers et répertoires d'un répertoire particulier, utilisez l'indicateur -R pour appliquer les autorisations de manière récursive dans tout le répertoire:
chmod -R 744 /var/www/folder/folder2
ou, pour appliquer des autorisations à tous les fichiers contenus et de manière récursive à tous les sous-répertoires:
chmod -R 744 /var/www/folder/folder2/*
Le nombre 7
coïncide avec rwx
.
Le nombre 6
coïncide avec rw-
et n'autorise pas l'autorisation d'exécution.
Le nombre 5
coïncide avec r-x
et n'autorise pas l'autorisation d'écriture.
Le nombre 4
coïncide avec r--
en lecture seule.
Le nombre 3
coïncide avec -wx
et n'autorise pas l'autorisation de lecture.
Le nombre 2
coïncide avec -w-
et est en écriture seule.
Le nombre 1
coïncide avec --x
et est en exécution uniquement.
Une combinaison courante est 664 qui donne en lecture et en écriture au propriétaire et aux membres du groupe pour le fichier, en lecture seule pour tous les autres utilisateurs et sans autorisation pour l'exécution du fichier: -rw-rw-r--