Donnez tous les droits à l'utilisateur Ubuntu. Gestion des utilisateurs. Longueur minimale du mot de passe

Comme le montre la réponse du lecteur, la question de la séparation des droits administratifs dans Ubuntu est encore obscure pour la plupart des administrateurs novices, nous avons donc décidé de clarifier ce problème avec ce matériel. Par conséquent, si vous ne savez pas en quoi su diffère de sudo, où la racine était cachée, etc., etc., il est temps de commencer à étudier notre article.

Commençons par une petite digression. Le système de droits administratifs Linux est enraciné dans le système d'exploitation Unix et a donc beaucoup en commun avec d'autres systèmes de type Unix : BSD, Solaris, MacOS. Dans le même temps, différentes distributions ont leur propre implémentation spécifique de points individuels, nous donnerons donc des exemples spécifiques concernant la famille Ubuntu, mais connaître les règles générales vous permettra de comprendre facilement l'environnement de tout autre système d'exploitation de type Unix.

L'utilisateur dispose de tous les droits d'administration sous Linux. racine, dont les droits ne peuvent pas être limités, le travail quotidien au nom de cet utilisateur est donc hautement indésirable : les actions imprudentes de l'utilisateur peuvent endommager le système, et compromettre ce compte donnera à l'attaquant un accès illimité au système.

Par conséquent, Linux a un schéma différent, tous les utilisateurs, y compris les administrateurs, travaillent sous un compte limité et utilisent l'un des mécanismes d'élévation pour effectuer des actions administratives. Pour ce faire, vous pouvez élever les droits à l'aide de l'utilitaire sudo ou connectez-vous en tant que superutilisateur (root "a) sans terminer la session en cours à l'aide de la commande su. Beaucoup confondent à tort ces deux mécanismes, nous allons donc les analyser plus en détail.

Équipe su vous permet de vous connecter en tant qu'un autre utilisateur (pas nécessairement root) sans mettre fin à la session en cours. Donc la commande :

Su Petrov

vous permettra de vous connecter en tant qu'utilisateur petrov, l'environnement de l'utilisateur (dossier personnel) sera également modifié pour appartenir à cet utilisateur.

Équipe su sans spécifier de nom d'utilisateur vous permet de vous connecter avec un compte racine"a. Cependant, cette méthode présente un inconvénient important - pour vous connecter au nom d'un autre utilisateur, vous devez connaître son mot de passe. Si vous avez plusieurs administrateurs, chacun d'eux connaîtra le mot de passe du superutilisateur et vous ne pourrez pas restreindre leurs droits.

De plus, ce n'est pas sûr, connaître le mot de passe du superutilisateur et la possibilité de se connecter sous son nom en cas de compromission peut entraîner une perte totale de contrôle sur le système.

Que se passe-t-il si nous essayons d'élever les droits dans Ubuntu de cette manière ? Nous ne réussirons pas car nous ne connaissons pas le mot de passe de l'utilisateur racine, en même temps, personne ne nous empêche de nous connecter sous un autre utilisateur.

"Attendez!" - un autre utilisateur dira : - "Mais le premier utilisateur créé, que nous spécifions lors de l'installation, n'obtient-il pas les droits root ?" En effet, les tâches administratives ne peuvent être effectuées qu'au nom de l'utilisateur créé lors de l'installation, si vous essayez de le faire cela au nom d'un autre utilisateur, nous subirons un échec.

Ici, nous nous rapprochons du deuxième mécanisme d'élévation - l'utilitaire sudo. Cependant, avant de procéder à son étude, il convient de clarifier: les droits de superutilisateur (root) dans Ubuntu appartiennent au compte root, qui est désactivé par défaut. Par conséquent, élevez les droits avec la commande su ne semble pas possible.

Le principal mécanisme d'élévation dans Ubuntu est l'utilitaire sudo. Cet utilitaire vous permet d'élever les droits au niveau superutilisateur pour la commande en cours d'exécution, alors que vous n'avez pas besoin de connaître le mot de passe superutilisateur, l'utilisateur doit saisir son propre mot de passe. Après cela, l'utilitaire vérifiera si l'utilisateur donné a le droit d'exécuter la commande donnée sur l'hôte donné avec les droits de superutilisateur et, en cas de réussite des vérifications, l'exécutera.

C'est important! La principale différence su depuis sudo sert à quoi su vous permet de changer l'utilisateur actuel en root, ce qui nécessite un compte superutilisateur actif dans le système et la connaissance de son mot de passe, sudo vous permet d'élever les droits pour la commande en cours d'exécution sans spécifier le mot de passe du superutilisateur, l'utilisateur doit entrer son propre mot de passe, la connexion en tant que root avec ces informations d'identification ne fonctionnera pas.

Autre circonstance importante, lors de l'utilisation d'un pipeline ou d'une redirection avec des droits de superutilisateur, seule la première partie de la commande sera exécutée, par exemple, dans la construction :

commande sudo1 | équipe2

en tant que root n'exécutera que équipe1. Une équipe

Sudo cat sources.list > /etc/apt/sources.list

donnera une erreur d'autorisation car l'entrée dans /etc/apt/sources.list se produira avec des droits d'utilisateur normaux.

Pour exécuter des combinaisons complexes de commandes, vous pouvez passer en mode superutilisateur avec la commande

ce qui revient à élever les droits avec la commande su, cependant, l'environnement utilisateur ne changera pas et le répertoire de l'utilisateur actuel sera utilisé comme répertoire d'accueil, ce qui est pratique et sûr. Chacun des administrateurs n'aura accès qu'à son répertoire personnel.

Il est maintenant temps de déterminer qui a le droit d'utiliser les opportunités sudo et dans quelle mesure. Le fichier est responsable des paramètres de cet utilitaire. /etc/sudoers, bien qu'il s'agisse d'un fichier de configuration standard, il est fortement recommandé d'utiliser la commande pour le modifier :

sudo visudo

Cette commande verrouille le fichier et effectue une vérification de la syntaxe, sinon vous risquez de perdre l'accès administratif au PC en raison d'une faute de frappe.

La syntaxe de ce fichier est très simple. Par exemple, à la toute fin du fichier, il y a une entrée :

%admin TOUS=(TOUS) TOUS

Cela signifie que les utilisateurs du groupe administrateur peut exécuter n'importe quelle commande sur n'importe quel hôte, au nom de n'importe quel utilisateur. Comment pouvons-nous vérifier facilement avec la commande groupes dans notre cas l'utilisateur andré appartient au groupe administrateur, et l'utilisateur pétrov Non.

Mais tous les avantages de cet utilitaire résident dans la possibilité de configurer de manière flexible les paramètres d'obtention des droits dans chaque cas spécifique. Par exemple:

Petrov ubuntu-lts=(andrey) TOUT

Cette ligne permet à l'utilisateur pétrov exécuter n'importe quelle commande sur l'hôte ubuntu-lts au nom de l'utilisateur andré. Lorsque vous spécifiez des commandes, vous devez spécifier leur chemin d'accès complet, vous pouvez le trouver à l'aide de la commande qui

Par exemple, nous voulons autoriser les utilisateurs pétrov Et sidorovéteignez et redémarrez l'ordinateur et supprimez des tâches. Cependant, ces commandes ne doivent pas nécessiter de mot de passe.

Une autre fonctionnalité intéressante de l'utilitaire sudo est la création d'alias, donc dans notre cas, nous ajoutons à /etc/sudoers les lignes suivantes :

User_Alias ​​​​USERGROUP1 = petrov, sidorov
Cmnd_Alias ​​​​CMDGROUP1 = /bin/kill, /sbin/reboot, /sbin/shutdown

Avec cela, nous avons créé deux alias GROUPE D'UTILISATEURS1, où nous avons inclus les utilisateurs dont nous avons besoin et CMDGROUP1 avec un ensemble de commandes nécessaires, plus tard, nous ne pouvons modifier que les alias, sans affecter toutes les règles où ils peuvent être utilisés. Ajoutons ensuite une règle :

USERGROUP1 ALL = (ALL) NOPASSWD:CMDGROUP1

qui permettra aux utilisateurs répertoriés dans l'alias spécifié d'exécuter des commandes à partir de l'alias spécifié sur n'importe quel hôte au nom de n'importe quel utilisateur sans entrer de mot de passe.

En plus des deux ci-dessus, des alias sont également disponibles pour le nom d'hôte et les utilisateurs au nom desquels il est autorisé à exécuter des commandes, par exemple :

Host_Alias ​​​​www = serveur Web1, serveur Web2
Runas_Alias ​​​​WWW = www-données, www-développeur

GROUPE D'UTILISATEURS1 WWW=(WWW)ALL

L'ensemble d'enregistrements ci-dessus permettra aux utilisateurs connectés à GROUPE D'UTILISATEURS1 exécuter toutes les commandes au nom des utilisateurs www-données Et www-développeur sur les serveurs Web de l'entreprise.

Enfin, réfléchissez à ce qu'il faut faire si le compte root est toujours nécessaire. C'est simple, pour l'activer, il suffit de définir un mot de passe :

sudo mot de passe racine

Vous pouvez à nouveau verrouiller le compte superutilisateur avec la commande :

sudo passwd -l racine

N'oubliez pas que toutes les tâches administratives dans Ubuntu peuvent être effectuées à l'aide de l'utilitaire sudo. N'activez donc pas le compte root à moins que vous n'en ayez vraiment besoin !

Comme vous pouvez le voir, Ubuntu possède de riches capacités de gestion des droits d'administration, ce qui vous permet de répartir de manière flexible les droits entre plusieurs administrateurs, ainsi que de donner la possibilité d'élever les droits à certains utilisateurs, et de le faire de manière efficace et sécurisée.

Dans ce matériel, vous apprendrez comment créer un utilisateur, comment créer un mot de passe de changement, obtenir des informations sur l'utilisateur ou supprimer du tout, créer / modifier / supprimer un groupe, après avoir lu ce matériel, vous pouvez faire tout cela facilement.

Nous travaillons avec des utilisateurs et des groupes, apprenons à gérer, créer des utilisateurs, des groupes, nous déplacer entre des groupes et d'autres manipulations avec des groupes dans Ubuntu Linux.

Ajout d'un utilisateur

L'ajout d'un utilisateur se fait à l'aide de la commande useradd. Exemple d'utilisation :

sudo useradd vasyapupkin

Cette commande créera un nouvel utilisateur vasyapupkin dans le système. Pour modifier les paramètres de l'utilisateur créé, vous pouvez utiliser les touches suivantes :

Clé Description
-b répertoire de base. Il s'agit du répertoire dans lequel le dossier personnel de l'utilisateur sera créé. Par défaut /accueil
-Avec Un commentaire. Vous pouvez y saisir n'importe quel texte.
-d Le nom du répertoire personnel. Par défaut, le nom correspond au nom de l'utilisateur en cours de création.
-e La date après laquelle l'utilisateur sera désactivé. Spécifié au format AAAA-MM-JJ. Désactivé par défaut.
-F Blocage de compte. Si la valeur est 0, l'entrée est bloquée immédiatement après l'expiration du mot de passe, si -1 - elle n'est pas bloquée. La valeur par défaut est -1.
-g Le groupe principal de l'utilisateur. Vous pouvez spécifier à la fois le GID et le nom du groupe. Si le paramètre n'est pas défini, un nouveau groupe sera créé dont le nom correspond au nom de l'utilisateur.
-G Liste des groupes dans lesquels l'utilisateur créé sera situé
-k Répertoire des modèles. Les fichiers et dossiers de ce répertoire seront placés dans le dossier de départ de l'utilisateur. Par défaut /etc/skel.
-m Une clé indiquant qu'un dossier personnel doit être créé. Dossier de départ par défaut non créé.
-p Mot de passe de l'utilisateur. Par défaut, aucun mot de passe n'est défini.
-s Le shell utilisé par l'utilisateur. /bin/sh par défaut.
-u Définissez manuellement l'UID de l'utilisateur.

Options de création d'utilisateur par défaut

Si aucune clé supplémentaire n'est spécifiée lors de la création d'un utilisateur, les paramètres par défaut sont pris en compte. Vous pouvez afficher ces paramètres en exécutant

ajout d'utilisateur -D

Le résultat sera quelque chose comme ceci :

GROUP=100HOME=/home INACTIVE=-1EXPIRE= SHELL=/bin/shSKEL=/etc/skel CREATE_MAIL_SPOOL=non

Si vous n'êtes pas satisfait de ces paramètres, vous pouvez les modifier en exécutant

Useradd -D-m-s/bin/bash

où -m et -s sont les clés tirées du tableau ci-dessus.

Changement d'utilisateur

La modification des paramètres utilisateur s'effectue à l'aide de l'utilitaire usermod. Exemple d'utilisation :

sudo usermod -c "Cette commande va changer le commentaire de l'utilisateur" vasyapupkin

usermod utilise les mêmes options que useradd.

changer le mot de passe

Vous pouvez modifier le mot de passe d'un utilisateur à l'aide de l'utilitaire passwd.

sudo passwd vasyapupkin

Clés de base du mot de passe :

Obtenir des informations sur les utilisateurs

    w Affiche des informations (nom d'utilisateur, shell, heure de connexion, etc.) sur tous les utilisateurs connectés.

    whoami - affiche votre nom d'utilisateur.

    utilisateurs - affiche les noms des utilisateurs travaillant dans le système.

    groupes nom_utilisateur - affiche une liste des groupes dont l'utilisateur est membre.

Suppression d'un utilisateur

Pour supprimer un utilisateur, utilisez l'utilitaire userdel. Exemple d'utilisation :

sudo userdel vasyapupkin

userdel n'a que deux clés principales :

Gestion de groupe

Créer un groupe

Le programme groupadd crée un nouveau groupe en fonction des valeurs de ligne de commande spécifiées et des valeurs par défaut du système. Exemple d'utilisation :

groupe de test sudo add

Clés principales :

Changement de groupe

Vous pouvez changer le nom d'un groupe, son GID ou son mot de passe en utilisant groupmod . Exemple:

sudo groupmod -n newtestgroup testgroup #Le nom du groupe est passé de testgroup à newtestgroup

options groupmod :

Suppression d'un groupe

La suppression d'un groupe est la suivante :

groupe de test sudo groupdel

groupdel n'a pas de paramètres supplémentaires.

Fichiers de configuration

Vous pouvez modifier les paramètres des utilisateurs et des groupes non seulement à l'aide d'utilitaires spéciaux, mais également manuellement. Tous les paramètres sont stockés dans des fichiers texte. Une description de chacun d'eux est donnée ci-dessous.

/etc/passwd

Dans le fichier /etc/passwd toutes les informations sur les utilisateurs sont stockées à l'exception du mot de passe. Une ligne de ce fichier correspond à la description d'un utilisateur. Le contenu approximatif de la ligne est le suivant :

Vasyapupkin:x:1000:1000:Vasya Pupkin:/home/vpupkin:/bin/bash

La ligne se compose de plusieurs champs, chacun étant séparé de l'autre par un signe deux-points. La signification de chaque champ est donnée dans le tableau.

Les deuxième et dernier champs sont facultatifs et peuvent ne pas avoir d'importance.

/etc/groupe

DANS /etc/groupe, comme son nom l'indique, stocke des informations sur les groupes. C'est écrit de la même façon /etc/passwd formulaire:

Vasyapupkin:x:1000:vasyapupkin, petya

Dans ce fichier, les deuxième et quatrième champs peuvent être vides.

/etc/ombre

Déposer /etc/ombre stocke les mots de passe, les droits définis sur ce fichier ne permettent donc pas à un simple utilisateur de le lire. Un exemple d'une des entrées de ce fichier :

Vasyapupkin:$6$Yvp9VO2s$VfI0t.o754QB3HcvVbz5hlOafmO.LaHXwfavJHniHNzq/bCI3AEo562hhiWLoBSqxLy7RJJNm3fwz.sdhEhHL0:15803:0:99999:7:::

Gestion des utilisateurs et des groupes via l'interface graphique

La version actuelle d'Ubuntu n'a pas d'utilitaire régulier pour gérer les groupes d'utilisateurs du système, donc par défaut, toutes les actions avec des groupes doivent être effectuées dans la console. Cependant, il existe un utilitaire spécial Utilisateurs et groupes à ces fins.

Installation d'un utilitaire GUI graphique pour la gestion de groupe

Le paquet gnome-system-tools est situé dans le référentiel Ubuntu, il est donc installé avec une seule commande :

sudo apt-get install gnome-system-tools

Gestion de groupe

Pour ajouter, supprimer des groupes, ainsi qu'ajouter/supprimer des utilisateurs à/de groupes spécifiques, vous devez vous rendre dans le menu Ubuntu/Dash - Utilitaires système - Administration - Utilisateurs et groupes, après avoir cliqué sur le bouton "Gérer les groupes" dans cette fenêtre , vous verrez une fenêtre affichant tous les groupes présents dans le système :

dans lequel, en sélectionnant le groupe souhaité et en cliquant sur "Propriétés", vous pouvez cocher les utilisateurs qui doivent être ajoutés au groupe.

La gestion des utilisateurs est une partie importante de la sécurité du système. Les utilisateurs inefficaces et la gestion des privilèges entraînent souvent la compromission de nombreux systèmes. Par conséquent, il est important que vous compreniez comment sécuriser votre serveur avec des techniques de gestion de compte utilisateur simples et efficaces.

Où est le super-utilisateur ?

Les développeurs d'Ubuntu ont pris la décision consciente de désactiver le compte racine administratif (root) par défaut dans toutes les installations d'Ubuntu. Cela ne signifie pas que le compte root a été supprimé ou n'est pas accessible. Il s'est simplement vu attribuer un mot de passe qui ne correspond à aucune valeur cryptée possible, il ne peut donc pas être utilisé pour se connecter directement.

Au lieu de cela, les utilisateurs sont encouragés à utiliser un outil nommé sudo transférer des tâches administratives. sudo permet aux utilisateurs autorisés d'élever temporairement leurs privilèges en utilisant leur propre mot de passe au lieu de connaître le mot de passe attribué au superutilisateur. Cette technique simple mais puissante garantit la responsabilité de toutes les actions de l'utilisateur et donne un contrôle administratif séparé sur les actions qu'un utilisateur avec des privilèges spécifiés peut effectuer.

1. Si, pour une raison quelconque, vous souhaitez autoriser le compte superutilisateur, définissez simplement un mot de passe pour celui-ci :

mot de passe sudo

Sudo vous demandera votre mot de passe, puis vous demandera de définir un nouveau mot de passe root comme indiqué ci-dessous :

Mot de passe pour le nom d'utilisateur : (entrez votre propre mot de passe) Entrez le nouveau mot de passe UNIX : (entrez le nouveau mot de passe superutilisateur) Retapez le nouveau mot de passe UNIX : (retapez le nouveau mot de passe superutilisateur) passwd : le mot de passe a été mis à jour avec succès

2. Pour désactiver le compte root, utilisez la syntaxe passwd suivante :

sudo passwd -l racine

homme sudo

Par défaut, l'utilisateur initial créé par le programme d'installation d'Ubuntu est membre du groupe "admin", qui est ajouté au fichier /etc/sudoers en tant qu'utilisateurs autorisés sudo. Si vous souhaitez accorder à un autre compte un accès superutilisateur complet via sudo il suffit de l'ajouter au groupe administrateur.

Ajout et suppression d'utilisateurs

Le processus de gestion des utilisateurs et des groupes locaux est simple et diffère peu de la plupart des autres systèmes d'exploitation GNU/Linux. Ubuntu et d'autres distributions basées sur Debian encouragent l'utilisation du paquet "adduser" pour la gestion des comptes.

1. Pour ajouter un compte utilisateur, utilisez la syntaxe suivante et suivez les invites pour le mot de passe et les caractéristiques d'authentification telles que le nom complet, le numéro de téléphone, etc. :

sudo adduser nom d'utilisateur

2. Pour supprimer un utilisateur et son groupe principal, utilisez la syntaxe suivante :

nom d'utilisateur sudo deluser

La suppression d'un utilisateur ne supprime pas son répertoire personnel associé. C'est à vous de décider si vous souhaitez supprimer le répertoire manuellement ou le laisser conformément à vos politiques de conservation.

Sachez que tout utilisateur ajouté ultérieurement avec le même UID/GID que le précédent aura accès à ce répertoire sauf si vous prenez les précautions nécessaires.

Vous voudrez peut-être remplacer ces valeurs UID/GID de répertoire par quelque chose de plus approprié, comme des valeurs de superutilisateur, et éventuellement déplacer le répertoire pour éviter de futurs conflits :

sudo chown -R root:root /home/nom d'utilisateur/ sudo mkdir /home/archived_users/ sudo mv /home/username /home/archived_users/

3. Pour bloquer ou débloquer temporairement, utilisez la syntaxe suivante :

sudo passwd -l nom d'utilisateur sudo passwd -u nom d'utilisateur

4. Pour ajouter ou supprimer un groupe personnel, utilisez respectivement la syntaxe suivante :

sudo addgroup nom de groupe sudo delgroup nom de groupe

5. Pour ajouter un utilisateur à un groupe, utilisez :

Sudo adduser nom d'utilisateur nom de groupe

Sécurité du profil utilisateur

Lorsqu'un nouvel utilisateur est créé, l'utilitaire adduser crée un nouveau répertoire nommé en conséquence. /home/nom d'utilisateur. Le profil par défaut est généré à partir du contenu trouvé dans le répertoire /etc/skel, qui comprend toutes les bases pour générer des profils.

Si votre serveur héberge plusieurs utilisateurs, vous devez porter une attention particulière aux autorisations sur les répertoires d'accueil des utilisateurs pour préserver la confidentialité. Par défaut, les répertoires personnels des utilisateurs sont créés avec des autorisations de lecture/exécution pour tout le monde. Cela signifie que tous les utilisateurs peuvent voir et accéder au contenu des autres répertoires personnels. Cela peut ne pas convenir à votre environnement.

1. Pour vérifier les autorisations sur les répertoires personnels des utilisateurs existants, utilisez la syntaxe suivante :

ls -ld /home/nom d'utilisateur

La sortie suivante montre que le répertoire /home/username a un accès en lecture à tout le monde :

Drwxr-xr-x 2 nom d'utilisateur nom d'utilisateur 4096 2007-10-02 20:03 nom d'utilisateur

2. Vous pouvez supprimer les autorisations de lecture pour tout le monde en utilisant la syntaxe suivante :

Sudo chmod 0750 /home/nom d'utilisateur

Certains ont tendance à utiliser l'option de récursivité (-R) sans distinction, ce qui modifie tous les répertoires et fichiers enfants, bien que cela soit facultatif et puisse avoir d'autres conséquences indésirables. Le répertoire parent lui-même empêchera tout accès non autorisé à l'un de ses contenus.

Une approche plus efficace de ce problème consisterait à modifier les autorisations globales par défaut pour adduser lors de la création de répertoires personnels. Modifiez simplement le fichier /etc/adduser.conf, en changeant la variable DIR_MODE en quelque chose de plus approprié, et tous les nouveaux répertoires personnels auront alors les bonnes autorisations.

DIR_MODE=0750

3. Après avoir corrigé les autorisations de répertoire à l'aide de l'une des techniques mentionnées précédemment, vérifiez les résultats à l'aide de la commande suivante :

ls -ld /home/nom d'utilisateur

La sortie ci-dessous montre que les autorisations de lecture pour tout le monde ont été supprimées :

Drwxr-x--- 2 nom d'utilisateur nom d'utilisateur 4096 2007-10-02 20:03 nom d'utilisateur

Politique de mot de passe

Une politique de mots de passe forts est l'un des aspects les plus importants de votre approche de la sécurité. De nombreuses percées réussies en matière de sécurité ont utilisé des attaques par force brute et la supposition de dictionnaires contre des mots de passe faibles. Si vous avez l'intention d'utiliser toute forme d'accès à distance à l'aide de votre système de mot de passe local, assurez-vous de définir des exigences de mot de passe minimales adéquates, une durée de vie maximale du mot de passe et vérifiez fréquemment votre système d'authentification.

Longueur minimale du mot de passe

Par défaut, Ubuntu nécessite une longueur de mot de passe minimale de 6 caractères, ainsi que quelques vérifications de dispersion de base. Ces options sont contrôlées par le fichier /etc/pam.d/common-password et sont répertoriées ci-dessous :

Mot de passe pam_unix.so obscur sha512

Si vous souhaitez définir la longueur minimale sur 8 caractères, remplacez la variable correspondante par min=8. Les changements sont listés ci-dessous :

Mot de passe pam_unix.so obscur sha512 min=8

Les vérifications de base de la qualité et de la longueur minimale du mot de passe ne s'appliquent pas à un administrateur utilisant des commandes de niveau sudo pour configurer un nouvel utilisateur.

Durée de vie du mot de passe

Lors de la création de comptes d'utilisateurs, vous devez créer une politique de durée de vie minimale et maximale des mots de passe pour forcer les utilisateurs à changer leurs mots de passe après un certain laps de temps.

1. Pour visualiser facilement l'état actuel d'un compte utilisateur, utilisez la syntaxe suivante :

sudo chage -l nom d'utilisateur

La sortie ci-dessous montre des faits intéressants sur le compte d'utilisateur, à savoir qu'aucune politique n'est appliquée :

Dernier changement de mot de passe : 20 janvier 2008 Expiration du mot de passe : jamais Mot de passe inactif : jamais Expiration du compte : jamais Nombre minimum de jours entre changement de mot de passe : 0 Nombre maximum de jours entre changement de mot de passe : 99999 Nombre de jours d'avertissement avant expiration du mot de passe : 7

2. Pour définir ces valeurs, utilisez simplement la commande suivante et suivez les invites interactives :

Sudo changer de nom d'utilisateur

Ce qui suit est également un exemple de la façon dont vous pouvez modifier manuellement la date d'expiration explicite du mot de passe (-E) au 31/01/2008, l'âge minimum du mot de passe (-m) à 5 jours, l'expiration maximum (-M) à 90 jours, un période d'inactivité (-I) pendant 5 jours après l'expiration du mot de passe et une période d'avertissement (-W) pendant 14 jours avant l'expiration du mot de passe.

Sudo chage -E 31/01/2011 -m 5 -M 90 -I 30 -W 14 nom d'utilisateur

3. Pour vérifier les modifications, utilisez la même commande que celle mentionnée ci-dessus :

sudo chage -l nom d'utilisateur

Le résultat de la commande ci-dessous montre les nouvelles règles qui s'appliquent au compte :

Dernier changement de mot de passe : 20 janvier 2008 Expiration du mot de passe : 19 avril 2008 Mot de passe inactif : 19 mai 2008 Expiration du compte : 31 janvier 2008 Nombre minimum de jours entre les changements de mot de passe : 5 Nombre maximum de jours entre les changements de mot de passe : 90 Nombre de jours avertissement avant l'expiration du mot de passe : 14

Autres considérations de sécurité

De nombreuses applications utilisent des mécanismes d'authentification alternatifs qui peuvent facilement être ignorés, même par des administrateurs système expérimentés. Par conséquent, il est important de comprendre et de contrôler la façon dont les utilisateurs se connectent et accèdent aux services et applications sur votre serveur.

Accès SSH par les utilisateurs bloqués

La désactivation/blocage normal n'empêche pas un utilisateur de se connecter à distance au serveur s'il a préalablement été configuré pour l'authentification par clé publique RSA. Ces utilisateurs accéderont au shell de la console sur le serveur sans avoir à saisir de mot de passe. N'oubliez pas de vérifier les répertoires personnels de l'utilisateur pour les fichiers qui autorisent ce type d'autorisation SSH, tels que /home/username/.ssh/authorized_keys.

Supprimer ou renommer le répertoire .ssh/ dans le répertoire personnel de l'utilisateur empêchera une authentification SSH supplémentaire.

Assurez-vous de vérifier toutes les connexions SSH établies des utilisateurs bloqués car il peut rester des connexions entrantes ou sortantes. Tuez tout ce que vous trouvez.

Limitez l'accès SSH aux seuls comptes d'utilisateurs qui en ont besoin. Par exemple, vous pouvez créer un groupe nommé "sshlogin" et ajouter le nom du groupe en tant que valeur à la variable AllowGroups trouvée dans le fichier /etc/ssh/sshd_config.

Autoriser les groupes sshlogin

Ajoutez ensuite vos utilisateurs disposant d'un accès SSH au groupe "sshlogin" et redémarrez le service SSH.

sudo adduser nom d'utilisateur sshlogin service sudo redémarrage ssh

Authentification de la base de données externe

La plupart des réseaux d'entreprise nécessitent une authentification et un contrôle d'accès centralisés pour toutes les ressources système. Si vous avez configuré votre serveur pour authentifier les utilisateurs par rapport à une base de données externe, assurez-vous de désactiver les comptes externes et locaux afin de vous assurer que vous ne pouvez pas revenir à l'authentification locale.

Disons que je suis un nouvel utilisateur d'Ubuntu Linux 16.04.xx LTS. J'ai tout de suite plusieurs questions. Comment créer un nouvel utilisateur sudo sur mon serveur ? Comment ajouter un nouvel utilisateur au fichier sudoer en utilisant l'option de ligne de commande sur Ubuntu ?

Sous Linux (et Unix en général), il existe un superutilisateur appelé root. L'utilisateur root peut tout et n'importe quoi, et donc l'utilisation normale du système peut devenir très dangereuse. Vous pouvez saisir la commande de manière incorrecte et détruire le système. La commande sudo permet à un utilisateur autorisé d'exécuter une commande en tant que superutilisateur (utilisateur root) ou un autre utilisateur tel que spécifié dans la politique de sécurité. Sudo est souvent utilisé sur les serveurs pour accorder des droits et privilèges administratifs aux utilisateurs réguliers. Ce tutoriel rapide vous montrera comment créer un utilisateur sudo sur Ubuntu.

Quelques étapes à suivre pour créer un utilisateur sudo sur Ubuntu

En savoir plus sur le groupe admin et le groupe sudo sur Ubuntu Server

Les membres du groupe d'administration peuvent se voir accorder des privilèges root. Tous les membres du groupe sudo exécutent n'importe quelle commande sur le serveur Ubuntu. Ajoutez simplement l'utilisateur au groupe sudo sur le serveur Ubuntu. Les capacités du groupe d'administration ont été considérablement réduites depuis Ubuntu 12.04 et versions ultérieures. Par conséquent, le groupe admin n'existe plus, ou il est simplement utilisé dans Ubuntu 12.04 ou supérieur. Raison pour laquelle cela fonctionne :

# grep -B1 -i "^%sudo" /etc/sudoers

$ sudo grep -B1 -i "^%sudo" /etc/sudoers

# Autoriser les membres du groupe sudo à exécuter n'importe quelle commande %sudo ALL=(ALL:ALL) ALL

Voyons quelques exemples pratiques.

Comment ajouter un nouvel utilisateur nommé vivek à sudo en utilisant la ligne de commande ?

Ouvrez un terminal ou connectez-vous à votre serveur distant :

$ ssh root@nom-du-serveur-IP-ici $ ssh [courriel protégé]( root@serveur:/root) #

# adduser vivek

$ sudo adduser vivek

Figure 01 : Comment ajouter un nouvel utilisateur sur Ubuntu

Exemples de sorties de données possibles :

Comment créer un utilisateur sudo dans Ubuntu pour un compte vivek

Entrez la commande suivante :

# adduser vivek sudo

OU utilisez la commande usermod pour ajouter un utilisateur à un groupe sous Linux :

# usermod -aG sudo vivek

$ sudo usermod -aG sudo vivek

$ sudo adduser vivek sudo

Exemples de sorties de données possibles :

Figure 02 : Ajoutez l'utilisateur vivek à sudo pour obtenir les droits d'administrateur

Confirmez le nouvel utilisateur et membre du groupe avec :

$id vivek

Exemples de sorties de données possibles :

Figure 03 : Afficher les informations sur l'utilisateur et le groupe

L'utilisateur vivek peut maintenant se connecter en utilisant la commande ssh comme suit :

$ ssh [courriel protégé]

Assurez-vous que vivek peut utiliser la commande sudo :

$ chat sudo /etc/sudoers

La première fois que vous utilisez la commande sudo, vous serez invité à saisir le mot de passe du compte vivek. Entrez donc le mot de passe vivek pour obtenir un accès root. Tout type de commande avec sudo doit être exécuté avec les privilèges root pour le compte vivek. Pour obtenir un shell racine, tapez :

$ sudo-s

Exemples de sorties de données possibles :

Figure 03 : Test de l'accès sudo pour le compte utilisateur vivek

Et donc tu l'as fait. Vous pouvez maintenant autoriser d'autres utilisateurs à exécuter sudo sur le serveur Ubuntu et donner aux utilisateurs des droits d'administrateur.

Linux étant un système multi-utilisateurs, la question de l'organisation du contrôle d'accès aux fichiers et aux répertoires est l'une des questions essentielles que le système d'exploitation doit résoudre. Les mécanismes de contrôle d'accès développés pour le système UNIX dans les années 70 (peut-être, cependant, ont-ils été proposés par quelqu'un auparavant), sont très simples, mais ils se sont avérés si efficaces qu'ils existent depuis plus de 30 ans et remplissent toujours avec succès les défis auxquels sont confrontées leurs tâches.

Les mécanismes de contrôle d'accès sont basés sur les noms d'utilisateurs et les noms de groupes d'utilisateurs. Vous savez déjà que sous Linux chaque utilisateur a un nom unique sous lequel il se connecte (connecté). De plus, un certain nombre de groupes d'utilisateurs sont créés dans le système et chaque utilisateur peut être inclus dans un ou plusieurs groupes. Le superutilisateur crée et supprime des groupes, il peut également modifier l'appartenance d'un groupe particulier. Les membres de différents groupes peuvent avoir des droits d'accès aux fichiers différents, par exemple, le groupe Administrateurs peut avoir plus de droits que le groupe Programmeurs.

L'inode de chaque fichier contient le nom du soi-disant propriétaire du fichier et le groupe qui a des droits sur ce fichier. Initialement, lorsqu'un fichier est créé, l'utilisateur qui a créé le fichier en est déclaré propriétaire. Plus précisément, l'utilisateur pour le compte duquel le processus de création du fichier est lancé. Le groupe est également affecté lors de la création du fichier, par l'ID de groupe du processus qui crée le fichier. Le propriétaire et le groupe du fichier peuvent être modifiés au cours de travaux ultérieurs à l'aide des commandes chown Et chgrp(plus à leur sujet seront discutés plus tard).

Maintenant, exécutons à nouveau la commande ls-l. Mais définissons comme paramètre supplémentaire le nom d'un fichier spécifique, par exemple, le fichier qui spécifie la commande elle-même ls. (Attention, au passage, à cette possibilité de la commande ls-l- obtenir des informations sur un fichier spécifique, et non sur tous les fichiers du répertoire à la fois).

$ ls -l /bin/ls

Vous pouvez voir que dans ce cas, le fichier appartient à l'utilisateur root et au groupe root. Mais maintenant, nous nous intéressons davantage au premier champ de la sortie de cette commande, qui détermine le type de fichier et les autorisations de fichier. Ce champ dans l'exemple est représenté par une chaîne de caractères -rwxr-xr-x. Ces caractères peuvent être grossièrement divisés en 4 groupes.

Le premier groupe, composé d'un seul caractère, définit le type de fichier. Ce symbole, conformément aux types de fichiers possibles abordés dans la section précédente, peut prendre les significations suivantes :

    - = - fichier régulier

    ré=- répertoire ;

    b=- fichier de périphérique de bloc ;

    c=— fichier de périphérique de caractères ;

    s=- socket de domaine (socket);

    p=- tuyau nommé (tuyau);

    l =- lien symbolique (lien).

Viennent ensuite trois groupes de trois caractères chacun, qui déterminent les droits d'accès au fichier, respectivement, pour le propriétaire du fichier, pour le groupe d'utilisateurs associé à ce fichier et pour tous les autres utilisateurs du système. Dans notre exemple, les autorisations pour le propriétaire sont définies comme rwx, ce qui signifie que le propriétaire ( racine) a le droit de lire le fichier (r), d'écrire dans ce fichier (w) et d'exécuter le fichier (x). Remplacer l'un de ces caractères par un tiret signifiera que l'utilisateur est privé du droit correspondant. Dans le même exemple, nous voyons que tous les autres utilisateurs (y compris ceux qui sont inclus dans le groupe racine) sont privés du droit d'écrire dans ce fichier, c'est-à-dire qu'ils ne peuvent pas modifier le fichier et généralement le modifier d'une manière ou d'une autre.

D'une manière générale, les droits d'accès et les informations sur le type de fichier dans les systèmes UNIX sont stockés dans des inodes dans une structure séparée composée de deux octets, soit 16 bits (ce qui est naturel, car l'ordinateur fonctionne avec des bits et non avec les caractères r, w, x ). Quatre de ces 16 bits sont réservés à un enregistrement codé de type fichier. Les trois bits suivants définissent des propriétés spéciales pour les fichiers exécutables, dont nous parlerons un peu plus tard. Et enfin, les 9 bits restants déterminent les autorisations de fichiers. Ces 9 bits sont répartis en 3 groupes de 3 bits. Les trois premiers bits définissent les autorisations de l'utilisateur, les trois bits suivants définissent les autorisations du groupe et les 3 derniers bits définissent les autorisations de tous les autres utilisateurs (c'est-à-dire tous les utilisateurs à l'exception du propriétaire du fichier et du groupe de fichiers).

Dans ce cas, si le bit correspondant est 1, alors le droit est accordé, et s'il est 0, alors le droit n'est pas accordé. Dans la forme symbolique de la notation des droits, l'unité est remplacée par le caractère correspondant (r, w ou x), et 0 est représenté par un tiret.

Le droit de lire(r) un fichier signifie que l'utilisateur peut visualiser le contenu du fichier à l'aide de diverses commandes de visualisation, par exemple, la commande plus ou avec n'importe quel éditeur de texte. Mais si vous modifiez le contenu d'un fichier dans un éditeur de texte, vous ne pourrez pas enregistrer les modifications apportées au fichier sur le disque, sauf si vous disposez d'une autorisation d'écriture (w) sur le fichier. L'autorisation d'exécution (x) signifie que vous pouvez charger le fichier en mémoire et essayer de l'exécuter en tant que programme exécutable. Bien sûr, si le fichier n'est pas vraiment un programme (ou un script shell), alors il ne sera pas possible d'exécuter ce fichier pour l'exécution, mais, d'un autre côté, même si le fichier est vraiment un programme, mais le bon à exécuter n'est pas défini pour lui, il ne fonctionnera pas non plus.

Nous avons donc appris quels fichiers sous Linux sont exécutables ! Comme vous pouvez le voir, l'extension du nom de fichier n'a rien à voir avec cela, tout est déterminé en définissant l'attribut "exécutable", et tout le monde ne peut pas se voir accorder le droit d'exécuter !

Si vous exécutez la même commande ls-l, mais comme dernier argument, spécifiez non pas le nom du fichier, mais le nom du répertoire, nous verrons que les droits d'accès sont également définis pour les répertoires, et ils sont définis par les mêmes caractères rwx. Par exemple, en exécutant la commande ls -l /, nous verrons que le répertoire bin correspond à la ligne :

Naturellement, en ce qui concerne les annuaires, l'interprétation des concepts "droit de lire", "droit d'écrire" et "droit d'exécuter" change quelque peu. L'accès en lecture aux répertoires est facile à comprendre si vous vous souvenez qu'un répertoire est juste un fichier contenant une liste de fichiers dans ce répertoire. Par conséquent, si vous avez le droit de lire le répertoire, vous pouvez alors visualiser son contenu (il s'agit de la liste des fichiers du répertoire). Le droit d'écriture est également clair - ayant un tel droit, vous pouvez créer et supprimer des fichiers dans ce répertoire, c'est-à-dire simplement ajouter ou supprimer du répertoire une entrée contenant le nom d'un fichier et les liens correspondants. Le droit d'exécution est moins intuitif. Dans ce cas, cela signifie le droit d'aller dans ce répertoire. Si vous, en tant que propriétaire, souhaitez autoriser d'autres utilisateurs à afficher un fichier dans votre répertoire, vous devez leur donner l'autorisation d'accéder au répertoire, c'est-à-dire leur donner "l'autorisation d'exécution du répertoire". De plus, vous devez donner à l'utilisateur l'autorisation d'exécution pour tous les répertoires situés au-dessus de ce répertoire dans l'arborescence. Par conséquent, en principe, pour tous les répertoires, par défaut, le droit d'exécution est défini à la fois pour le propriétaire et le groupe, et pour tous les autres utilisateurs. Et, si vous souhaitez fermer l'accès à l'annuaire, alors privez tous les utilisateurs (y compris le groupe) du droit d'accéder à cet annuaire. Ne vous privez pas d'un tel droit, sinon vous devrez vous tourner vers le superutilisateur! (Remarque 11)

Après avoir lu le paragraphe précédent, il peut sembler que l'accès en lecture au répertoire n'apporte rien de nouveau par rapport à l'accès en exécution. Cependant, il existe toujours une différence entre ces droits. Si vous ne définissez que le droit d'exécution, vous pouvez entrer dans le répertoire, mais vous n'y verrez aucun fichier (cet effet est particulièrement évident si vous utilisez une sorte de gestionnaire de fichiers, par exemple le programme Midnight Commander). Si vous avez des droits d'accès à l'un des sous-répertoires de ce répertoire, alors vous pouvez vous y rendre (avec la commande CD), mais, comme on dit, "à l'aveugle", de mémoire, car vous ne verrez pas la liste des fichiers et sous-répertoires du répertoire courant.

L'algorithme de vérification des droits des utilisateurs lors de l'accès à un fichier peut être décrit comme suit. Le système vérifie d'abord si le nom d'utilisateur correspond au nom du propriétaire du fichier. Si ces noms correspondent (c'est-à-dire que le propriétaire accède à son fichier), alors il est vérifié si le propriétaire a le droit d'accès approprié : lecture, écriture ou exécution (ne soyez pas surpris, le superutilisateur peut priver le propriétaire du fichier de certains droits aussi). S'il existe un tel droit, l'opération correspondante est autorisée. Si le propriétaire ne dispose pas du droit nécessaire, la vérification des droits accordés via le groupe ou via le groupe d'attributs d'accès pour les autres utilisateurs n'est même pas vérifiée et l'utilisateur reçoit un message indiquant que l'action demandée ne peut pas être effectuée ( généralement quelque chose comme "Autorisation refusée").

Si le nom de l'utilisateur accédant au fichier ne correspond pas au nom du propriétaire, alors le système vérifie si le propriétaire appartient au groupe qui est associé au fichier donné (ci-après, nous l'appellerons simplement le groupe du fichier) . S'ils sont détenus, les attributs spécifiques au groupe sont utilisés pour déterminer si le fichier est accessible, et les attributs du propriétaire et de tous les autres utilisateurs sont ignorés. Si l'utilisateur n'est pas le propriétaire du fichier et n'est pas inclus dans le groupe du fichier, ses droits sont déterminés par les attributs des autres utilisateurs. Ainsi, le troisième groupe d'attributs qui définissent les droits d'accès au fichier s'applique à tous les utilisateurs à l'exception du propriétaire du fichier et des utilisateurs inclus dans le groupe du fichier.

Pour modifier les autorisations de fichiers, utilisez la commande chmod. Il peut être utilisé en deux versions. Dans la première option, vous devez indiquer explicitement à qui vous donnez ou à qui vous privez de ce droit :

$ chmod nom de fichier wXp

où à la place du symbole w substitué

    ou symbole tu(c'est-à-dire l'utilisateur qui est le propriétaire) ;

    ou g(groupe);

    ou o(tous les utilisateurs non inclus dans le groupe propriétaire du fichier) ;

    ou un(tous les utilisateurs du système, c'est-à-dire le propriétaire, le groupe et tous les autres).

Au lieu de X mettre:

    ou + (nous accordons le droit);

    ou - (nous privons le droit correspondant);

    ou = (définir les droits spécifiés au lieu de ceux existants),

Au lieu de p- un symbole désignant le droit correspondant :

    r(en lisant);

    w(enregistrer);

    X(performance).

Voici quelques exemples d'utilisation de la commande chmod:

$ chmod a+x nom_fichier

accorde à tous les utilisateurs du système le droit d'exécuter ce fichier.

$ chmod go-rw nom_fichier

supprime les autorisations de lecture et d'écriture pour tout le monde sauf le propriétaire du fichier.

$ chmod ugo+rwx nom_fichier

donne à chacun des autorisations de lecture, d'écriture et d'exécution.

Si nous omettons d'indiquer à qui ce droit est accordé, il est entendu que nous parlons de tous les utilisateurs en général, c'est-à-dire au lieu de $ chmod a+x nom_fichier

peut s'écrire simplement

$ chmod +x nom_fichier

La deuxième option de commande chmod(il est plus souvent utilisé) repose sur la représentation numérique des droits. Pour ce faire, nous encodons le caractère r avec le chiffre 4, le caractère w avec le chiffre 2 et le caractère x avec le chiffre 1. Afin d'accorder aux utilisateurs un ensemble de droits, nous devons ajouter les chiffres correspondants. Ayant ainsi obtenu les valeurs numériques nécessaires pour le propriétaire du fichier, pour le groupe de fichiers et pour tous les autres utilisateurs, nous définissons ces trois chiffres comme argument de la commande chmod(nous plaçons ces nombres après le nom de la commande avant le deuxième argument, qui spécifie le nom du fichier). Par exemple, si vous devez donner tous les droits au propriétaire (4+2+1=7), le droit de lire et d'écrire au groupe (4+2=6), et ne donner aucun droit au reste, alors vous devez émettre la commande suivante :

$ chmod 760 nom_fichier

Si vous êtes familier avec le codage binaire des chiffres octaux, alors vous comprendrez que les nombres après le nom de la commande sous cette forme de sa représentation ne sont rien de plus que la notation octale des mêmes 9 bits qui définissent les droits pour le propriétaire du fichier, groupe de fichiers et pour tous les utilisateurs.

Modifier les autorisations de fichier à l'aide de la commande chmod seul le propriétaire du fichier ou le superutilisateur le peut. Afin de pouvoir modifier les autorisations du groupe, le propriétaire doit en outre être membre du groupe auquel il souhaite accorder des autorisations sur le fichier.

Pour terminer l'histoire sur les autorisations de fichiers, nous devons parler de trois autres attributs de fichiers possibles qui sont définis à l'aide de la même commande chmod. Ce sont les mêmes attributs pour les fichiers exécutables qui occupent les positions 5 à 7 dans l'inode du fichier dans la structure à deux octets qui définit les droits sur le fichier, immédiatement après le code du type de fichier.

Le premier de ces attributs est ce que l'on appelle le "bit de changement d'ID utilisateur". La signification de ce bit est la suivante.

Habituellement, lorsqu'un utilisateur démarre un programme pour exécution, ce programme obtient les mêmes autorisations de fichier et de répertoire que l'utilisateur qui a démarré le programme. Si le "bit de modification de l'ID utilisateur" est défini, le programme aura des droits d'accès aux fichiers et répertoires dont dispose le propriétaire du fichier programme (ainsi, l'attribut en question est mieux appelé le "bit de modification de l'ID de propriétaire"). Cela vous permet de résoudre certaines tâches qui seraient autrement difficiles à effectuer. L'exemple le plus typique est la commande pour changer le mot de passe mot de passe. Tous les mots de passe des utilisateurs sont stockés dans le fichier /etc/passwd, qui appartient au superutilisateur racine. Par conséquent, les programmes lancés par les utilisateurs ordinaires, y compris la commande mot de passe, ne peut pas écrire dans ce fichier. Et, par conséquent, l'utilisateur, pour ainsi dire, ne peut pas changer son propre mot de passe. Mais le fichier /usr/bin/passwd a le "bit de changement d'ID propriétaire" défini, qui est l'utilisateur racine. Par conséquent, le changeur de mot de passe mot de passe courir avec des droits racine et obtient un accès en écriture au fichier /etc/passwd (il est déjà assuré par le programme lui-même que l'utilisateur ne peut modifier qu'une seule ligne dans ce fichier).

Le "bit de propriété" peut être défini par le superutilisateur avec la commande

# chmod +s nom_fichier

Le "bit de changement d'ID de groupe" fonctionne de manière similaire.

Un autre attribut possible d'un fichier exécutable est le "task save bit" ou "sticky bit" (littéralement - "sticky bit"). Ce bit indique au système d'enregistrer le programme dans la RAM une fois le programme terminé. Il est pratique d'activer ce bit pour les tâches fréquemment appelées à l'exécution, car dans ce cas on gagne du temps sur le chargement du programme à chaque nouveau démarrage. Cet attribut était obligatoire sur les anciens ordinateurs. Il est rarement utilisé sur les systèmes modernes à grande vitesse.

Si vous utilisez l'option numérique pour définir les attributs dans la commande chmod, la valeur numérique de ces attributs doit précéder les chiffres qui spécifient les droits de l'utilisateur :

# nom de fichier chmod 4775

Dans ce cas, les poids de ces bits pour obtenir le résultat total souhaité sont donnés comme suit :

    4 - "bit de changement d'ID utilisateur",

    2 - "bit de changement d'ID de groupe",

    1 - "bit de sauvegarde de tâche (bit collant)".

Si l'un de ces trois bits est défini sur 1, la sortie de la commande change légèrement. ls-l en termes d'affichage des attributs de droits d'accès définis. Si le "bit de modification de l'ID utilisateur" est défini sur 1, le caractère "x" dans le groupe de propriétaires de fichiers est remplacé par le caractère "s". De plus, si le propriétaire a le droit d'exécuter le fichier, alors le symbole "x" est remplacé par un petit "s", et si le propriétaire n'a pas le droit d'exécuter le fichier (par exemple, le fichier n'est pas exécutable du tout), alors "S" est mis à la place de "x". Des substitutions similaires ont lieu lorsque le "bit de changement d'ID de groupe" est défini, mais le caractère "x" dans le groupe d'attributs qui spécifient les droits de groupe est remplacé. Si le "sticky bit" est 1, alors le caractère "x" dans le groupe d'attributs qui définit les droits pour tous les autres utilisateurs est remplacé, "x" étant remplacé par le caractère "t" si tous les utilisateurs peuvent exécuter le fichier pour l'exécution et le symbole "T" s'ils ne disposent pas d'un tel droit.

Ainsi, bien que dans la sortie de la commande ls-l il n'y a pas de positions séparées pour afficher les valeurs des bits de changement d'identifiant et du bit de sauvegarde de tâche, les informations correspondantes sont affichées. Voici un petit exemple de ce à quoi cela ressemblerait :

# ls -l prim1

V. Kostromin (kos sur rus-linux dot net) - 4.5. Autorisations pour les fichiers et les répertoires
Vous avez aimé l'article ? Partager avec des amis: