La commande chmod
permet de modifier les permissions sur des fichier et chown
de modifier les utilisateurs et groupes propriétaires.
/!\ Résumé des commandes
Commandes :
# chmod [-R][ugoa][+-=][rwxX] file|directory |
Fichiers :
/etc/login.defs // Configuration de l'umask |
Cas pratique
Création d’un répertoire /home/ATOMIC
:
[root@SERVER-X ~]# mkdir /home/ATOMIC |
Changement du groupe proprétaire (scientist) sur /home/ATOMIC
:
[root@SERVER-X ~]# chown :scientist /home/ATOMIC |
Les utilisateurs du groupe scientist ne peuvent pas à cet instant créer des fichiers dans /home/ATOMIC
:
[StephenHawking@SERVER-X ~]$ touch /home/ATOMIC/Experiment01.txt |
[StephenHawking@SERVER-X ~]$ ls -ld /home/ATOMIC/ |
Sur le répertoire /home/ATOMIC
, ajout de :
- droit setgid (2)
- permissions lecture, écriture et exécution (7) pour le propriétaire, l’utilisateur et le groupe
- aucune permission (0) pour les autres utilisateurs
[root@SERVER-X ~]# chmod 2770 /home/ATOMIC |
Le groupe scientist a maintenant une permission d’écriture :
[root@SERVER-X ~]# ls -ld /home/ATOMIC |
Seuls les utilisateurs du groupe scientist peuvent désormais créer et modifier des fichiers dans le répertoire /home/ATOMIC
. Les utilisateurs StephenHawking et KipThorne sont membres du groupe scientist mais pas ElonMusk.
Utilisateur StephenHawking :
[StephenHawking@SERVER-X ~]$ touch /home/ATOMIC/Experiment01.txt |
[StephenHawking@SERVER-X ~]$ ls -l /home/ATOMIC/Experiment01.txt |
[StephenHawking@SERVER-X ~]$ echo "This is the first experiment." > /home/ATOMIC/Experiment01.txt |
Utilisateur KipThorne :
[KipThorne@SERVER-X ~]$ cd /home/ATOMIC |
[KipThorne@SERVER-X ATOMIC]$ cat Experiment01.txt |
[KipThorne@SERVER-X ATOMIC]$ touch /home/ATOMIC/Experiment02.txt |
[KipThorne@SERVER-X ATOMIC]$ ls -l |
Utilisateur ElonMusk :
[ElonMusk@SERVER-X ~]$ cat /home/ATOMIC/Experiment01.txt |
[ElonMusk@SERVER-X ~]$ ls -l /home/ATOMIC/Experiment01.txt |
Ajustement du umask par défaut pour les shells de connexion dans /etc/login.defs
pour permetre aux l’utilisateurs et au groupe de créer, d’écrire et d’exécuter des fichiers et des répertoires, tout en empêchant les autres utilisateurs d’afficher, de modifier ou d’exécuter de nouveaux fichiers et répertoires.
Umask actuel :
[John@SERVER-X ~]$ umask |
Changement de l’umask direcement dans /etc/login.defs
:
[root@serverb ~]# cat /etc/login.defs |
Déconnexion puis reconnexion et nouveau umask
:
[John@SERVER-X ~]$ umask |
Documentation
http://n0tes.fr/2015/08/10/Les-droits-sous-Linux/
http://n0tes.fr/2015/08/11/ACL-Linux/