I- Gestion des utilisateurs, des groupes et des permissions sous Linux 1.o -Password (ConvertTo-SecureString "MotDePasse" -AsPlainText -Force) : Definit le mot de passe de l'utilisateur. Le parametre ConvertTo-SecureString convertit une chaine en texte securise, ici utilise pour fournir un mot de passe en texte brut avec l'option -AsPlainText et force avec -Force. o -Description "DescriptionUtilisateur" : Fournit une description de l'utilisateur (par exemple, "Nouvel utilisateur").o Si aucun de ces elements n'est utilise, chmod se comporte comme si " a" avait ete utilise. o Quoi : o - : signe moins. Supprime l'autorisation. o + : signe plus. Accorde l'autorisation. L'autorisation est ajoutee aux autorisations existantes. Si vous souhaitez disposer de cette autorisation et uniquement de cet ensemble d'autorisations, utilisez l'option = decrite ci dessous. o = : signe egal. Definissez une autorisation et supprimez les autres. o Laquelle : quelles autorisations definissons-nous (r , w ou x) ? Exemples : o chmod u+x fichier.txt: donne les permissions d'execution au proprietaire du fichier. o chmod g=rw fichier.txt: donne les permissions de lecture et d'ecriture au groupe pour lefichier. o chmod o-r fichier.txt: enleve les permissions de lecture pour tous les autres utilisateurssur le fichier. o chmod a=rwx fichier.txt: donne a tous les utilisateurs les permissions de lecture, d'ecritureet d'execution pour le fichier. Page 5 sur 14 La commande chmod permet egalement de modifier les permissions des fichiers et desdossiers en utilisant des nombres plutot que des symboles. Le tableau ci-dessous resume les differents droits d'acces, leur representation binaire et leur valeur octale : Droit Binaire Octal Description --- 000 0 Aucun acces --x 001 1 Execution par le proprietaire et le groupe -w- 010 2 Ecriture par le proprietaire wx 011 3 Execution par tous r-- 100 4 Lecture par le proprietaire r-x 101 5 Lecture et execution par le proprietaire rw- 110 6 Lecture et ecriture par le proprietaire rwx 111 7 Lecture, ecriture et execution par tous Dans ce mode, chaque permission est representee par un nombre de trois chiffres qui correspondent aux droits de l'utilisateur proprietaire, au groupe et aux autres utilisateurs. Le premier chiffre represente les permissions du proprietaire, le deuxieme chiffre represente les permissions du groupe et le troisieme chiffre represente les permissions pour les autres utilisateurs. Les chiffres sont determines comme suit : o 4 = Lecture (r) o 2 = Ecriture (w) o 1 = Execution (x) Par exemple, pour donner a l'utilisateur proprietaire toutes les permissions (rwx), et laisser les permissions pour le groupe et les autres utilisateurs inchangees, vous pouvez utiliser la commande suivante : o chmod 700 nom_dossier/fichier o Pour donner a l'utilisateur proprietaire toutes les permissions (rwx), au groupe les permissions de lecture (r) et d'ecriture et aux autres utilisateurs la permission d'execution(x), vous pouvez utiliser la commande suivante : o chmod 751 nom_dossier/fichier NB: Les autorisations accordees a un dossier sont egalement appliquees a tous les fichiers de ce dossier. chmod -R [permissions] : R : Cette option indique a chmod d'appliquer les changements de permissions de maniere recursive. Cela signifie que les permissions seront modifiees non seulement pour les fichiers et repertoires specifies, mais aussi pour tous les fichiers et sous-repertoires qu'ils contiennent. Page 6 sur 14 4. Utilisation de umask sous Linux a. Introduction a umask La commande umask (user file creation mask) sous Linux determine les permissions par defaut qui sont attribuees aux fichiers et repertoires lors de leur creation. Cette commande permet de definir des restrictions sur les permissions initiales, garantissant que certains droits ne soient pas automatiquement accordes, par exemple pour des raisons de securite. b . Pourquoi utiliser umask ? Chaque fichier ou repertoire cree sous Linux se voit attribuer un ensemble de permissions. Par defaut, ces permissions peuvent etre trop permissives. Pour prevenir des acces non desires, umask est utilise pour "masquer" certaines permissions lors de la creation de nouveaux fichiers ou repertoires.o Soustrayez les bits du umask des permissions par defaut a l'aide d'un "ET logique inversee" pour obtenir les permissions finales. o Convertissez le resultat binaire obtenu en octal pour obtenir les permissions finales en notation Linux. Table de conversion des permissions Type de permissions Octal Binaire Aucun --- 0 000 Execution --x 1 001 Ecriture -w- 2 010 Ecriture + Execution -wx 3 011 Lecture r-- 4 100 Lecture + Execution r-x 5 101 Lecture + Ecriture rw- 6 110 Lecture, Ecriture, Execution rwx 7 111 2. Connaitre les permissions par defaut o Fichiers : 666 (en octal) = 110 110 110 (en binaire). o Repertoires : 777 (en octal) = 111 111 111 (en binaire). 3. Convertir le umask en binaire Prenons un exemple ou la valeur du umask est 027 : o 027 (en octal) correspond a : 000 010 111 (en binaire). o Le premier chiffre (0) correspond aux permissions du proprietaire. o Le second chiffre (2) correspond aux permissions du groupe. o Le troisieme chiffre (7) correspond aux permissions des autres. Page 8 sur 14 4. Calculer les permissions par defaut avec un fichier Le calcul des permissions pour un fichier se fait en soustrayant le masque umask des permissions par defaut. Le resultat est obtenu par un ET logique entre les permissions par defaut et l'inverse du masque. o Permissions par defaut (666) : 110 110 110 (binaire). o Masque umask (027) : 000 010 111 (binaire). o Resultat (ET binaire) : 110 100 000 (binaire) = 640 (octal). Groupe utilisateur Groupe groupe Groupe autre Permissions par defaut (110 110 110) 1 1 0 1 1 0 1 1 0 Masque umask (000 010 111) 0 0 0 0 1 0 1 1 1 Resultat (apres soustraction) 1 1 0 1 0 0 0 0 1 Explication detaillee des bits : 1. Groupe utilisateur : o Permissions par defaut : 1 1 0 -> lecture (1), ecriture (1), pas d'execution (0). o Masque umask : 0 0 0 -> aucune permission n'est retiree. o Resultat : 1 1 0 -> les permissions restent les memes (lecture et ecriture). 2. Groupe groupe : o Permissions par defaut : 1 1 0 -> lecture (1), ecriture (1), pas d'execution (0). o Masque umask : 0 1 0 -> retire l'ecriture. o Resultat : 1 0 0 -> seule la lecture est conservee, l'ecriture est retiree. 3. Groupe autres : o Permissions par defaut : 1 1 0 -> lecture (1), ecriture (1), pas d'execution (0). o Masque umask : 1 1 1 -> retire toutes les permissions. o Resultat : 0 0 0 -> aucune permission n'est laissee pour les autres. Cela signifie que les fichiers crees auront les permissions 640 (rw-r-----), soit : o rw- (lecture et ecriture pour le proprietaire), o r-- (lecture pour le groupe), o --- (aucune permission pour les autres). 5. Calculer les permissions par defaut avec un repertoire Le processus est le meme pour les Fichiers, sauf que les permissions par defaut sont 777 (au lieu de 666 pour les fichiers). o Permissions par defaut (777) : 111 111 111 (binaire). o Masque umask (027) : 000 010 111 (binaire). o Resultat (ET binaire) : 111 101 000 (binaire) = 750 (octal). Cela signifie que les repertoires crees auront les permissions 750 (rwxr-x---), soit : o rwx (lecture, ecriture et execution pour le proprietaire), o r-x (lecture et execution pour le groupe), Page 9 sur 14 o --- (aucune permission pour les autres). c. Appliquer umask de facon permanente Pour rendre une valeur umask permanente, vous devez la definir dans un fichier de configuration qui est lu lors de l'ouverture de session, comme ~/.bashrc ou ~/.profile. Par exemple : echo "umask 027" >> ~/.bashrc Apres avoir ajoute cette ligne, la valeur umask sera definie automatiquement a chaque ouverture de session. Voici un exemple : Page 2 sur 14 o sudo usermod -c "Ouafae El-aissaoui" ouafae (- c Cette option permet de changer le nomcomplet de l'utilisateur) o sudo usermod -d /home/yel-aissaoui ouafae (-d: Cette option permet de changer lerepertoire de connexion de l'utilisateur) o sudo usermod -e 2023-12-31 ouafae (-e: Cette option permet de definir la date d'expiration du compte utilisateur.) o sudo usermod -s /bin/bash ouafae (-s: Cette option permet de changer le shell pardefaut de l'utilisateur) d) Suppression d'un utilisateur Pour supprimer un utilisateur sous Linux, vous pouvez utiliser la commande deluser. Voici un exemple : o sudo deluser ouafae e) Changer le mot de passe d'un utilisateur Pour changer le mot de passe d'un utilisateur dans Linux, vous pouvez utiliser la commande passwd. La syntaxe est la suivante : o sudo passwd nom_utilisateur Apres avoir execute cette commande, vous serez invite a entrer le nouveau mot de passe pour l'utilisateur deux fois 2. Gestion des groupes a) Afficher les groupes auxquels l'utilisateur "user" appartient. Voici un exemple : o sudo usermod -aG reseaux ouafae o Cette commande ajoute l'utilisateur "ouafae" au groupe "reseaux". b) Suppression d'un utilisateur d'un groupe o Pour supprimer un utilisateur d'un groupe dans Linux, vous pouvez utiliser la commande gpasswd avec l'option -d, suivie du nom d'utilisateur et du nom du groupe. La syntaxe est la suivante : o sudo gpasswd -d ouafae reseaux Cette commande supprime l'utilisateur "ouafae" du groupe "reseaux".Pour afficher le fichier /etc/passwd, vous pouvez utiliser la commande o cat /etc/passwd Format: login : mdp: UID (user Id): GID(group id): infos: homedir : shell ii. Le fichier des mots de passe : /etc/shadow Ce fichier contient les mots de passe chiffres pour chaque utilisateur sur le systeme.o groups user b) Affichage des groupes Les groupes sont recenses dans le fichier : /etc/group Le format : nom: mdp( x :aucun ):Gid (group id):utilisateurs c) Creation d'un nouveau groupe Pour creer un nouveau groupe sous Linux, vous pouvez utiliser la commande addgroup. Gestion des utilisateurs a) Afficher les utilisateurs et leurs mots de passe i. Le fichier d'utilisateurs : /etc/passwd Ce fichier contient une liste de tous les utilisateurs sur le systeme, avec des informations telles que leur nom d'utilisateur, leur ID d'utilisateur et leur repertoire personnel.Vous pouvez utiliser la commande o sudo cat /etc/shadow (La commande "sudo" est utilise pour executer une commandeavec des privileges eleves en tant qu'administrateur ("root").) b) Creation d'un nouvel utilisateur Pour creer un nouvel utilisateur sous Linux, on utilise la commande adduser. Voici un exemple : o sudo adduser ouafae Cette commande cree un nouvel utilisateur nomme "ouafae".Voici un exemple : o sudo groupmod -n python reseaux (-n change le nom du groupe "reseaux" en "python") o sudo groupmod -g 1001 mygroup (-c Cette option change le l'ID du groupe nommemongroupe en 1001) Page 3 sur 14 e) Suppression d'un groupe Pour supprimer un groupe sous Linux, vous pouvez utiliser la commande delgroup.Gestion des utilisateurs i. Afficher les utilisateurs Pour afficher la liste de tous les utilisateurs sur le systeme, vous pouvez utiliser la commande suivante : o Get-LocalUser ii. Creation d'un nouvel utilisateur Pour creer un nouvel utilisateur sous Windows, utilisez la commande New-LocalUser..Voici la syntaxe generale de cette commande : o New-LocalUser -Name "NomUtilisateur" -Password (ConvertTo-SecureString "MotDePasse" -AsPlainText -Force) -FullName "NomComplet" -Description "DescriptionUtilisateur" Explication des parametres : o New-LocalUser : commande utilisee pour creer un nouvel utilisateur local sur un systeme Windows.ii. Gestion de permission Pour gerer les permissions de groupe sous Linux, on utilise la commande chmod Syntaxe : o chmod qui quoi Laquelle o Qui : o u : Utilisateur, c'est-a-dire le proprietaire du fichier.o Valeurs par defaut : 666 (rw-rw-rw-) o Permissions souhaitees : 644 (rw-r--r--) Page 7 sur 14 o Umask = 666 - 644 = 022 Cela signifie que l'umask doit etre regle a 022 pour obtenir les permissions souhaitees de 644 pour les nouveaux fichiers crees D. Calcul des permissions des repertoires et des fichiers apres l'execution de la commande umask.Gestion des utilisateurs et des groupes a) Assignation d'un utilisateur a un groupe Pour assigner un utilisateur a un groupe sous Linux, vous pouvez utiliser la commande usermod.c) Gestion des permissions Sous Linux, qui peut faire quoi sur un fichier ou un repertoire est controle par des ensembles d'autorisations.Vous serez invite a entrer un mot de passe pour l'utilisateur, ainsi que quelques informations supplementaires telles que leur nom complet et leur numero de telephone. Voici un exemple : o sudo addgroup reseaux d) Modification d'un groupe Pour modifier les informations d'un groupe, vous pouvez utiliser la commande groupmod.o Valeurs par defaut : 666 (rw-rw-rw-) o Permissions souhaitees : 644 (rw-r--r--) Nous voulons que le proprietaire ait des permissions de lecture et d'ecriture (rw-), et que le groupe et les autres aient seulement des permissions de lecture (r--).i. Affichage et comprehension des autorisations de fichier Nous pouvons utiliser ls -l (format long) pour lister les autorisations de fichiers pour les fichiers et les repertoires.Les permissions des fichiers et des repertoires apres l'execution de la commande umask sont calculees en soustrayant la valeur du masque de permissions des permissions par defaut.o Les trois derniers caracteres indiquent les autorisations pour toute personne n'appartenant pas aux deux premieres categories (autres autorisations).o o : Autres, c'est-a-dire les personnes non regies par les autorisations u et g. o a : Tous, c'est-a-dire tout ce qui precede.iii.??