Maison  >  Article  >  Tutoriel système  >  Paramètres du système d'application des fichiers d'utilisateurs et de groupes d'utilisateurs sous Linux

Paramètres du système d'application des fichiers d'utilisateurs et de groupes d'utilisateurs sous Linux

WBOY
WBOYavant
2024-04-05 09:10:02978parcourir

ID : ChinaUnix2013

1. Fichiers d'utilisateurs et de groupes d'utilisateurs

Sous Linux, les comptes d'utilisateurs, les mots de passe des utilisateurs, les informations sur les groupes d'utilisateurs et les mots de passe des groupes d'utilisateurs sont tous stockés dans différents fichiers de configuration.

Dans le système Linux, le compte utilisateur créé et ses informations associées (à l'exception du mot de passe) sont stockés dans le fichier de configuration /etc/passwd. Étant donné que tous les utilisateurs disposent d'autorisations de lecture sur le fichier passwd, les informations de mot de passe ne sont pas enregistrées dans le fichier, mais dans le fichier de configuration /etc/shadow.

Dans le fichier passwd, une ligne définit un compte utilisateur. Chaque ligne est composée de plusieurs tableaux différents. Les valeurs de chaque tableau sont séparées par ":".

Dans le système Linux nouvellement installé, le fichier de configuration passwd contient déjà de nombreuses informations de compte. Ces comptes sont créés manuellement par le système. Ce sont les comptes nécessaires au fonctionnement normal du processus Linux ou de certains programmes de service. is La valeur du dernier tableau de ce compte est généralement /sbin/nologin, ce qui signifie que ce compte ne peut pas être utilisé pour se connecter au système Linux.

Dans le fichier de configuration passwd, la relation correspondante et la signification de chaque tableau de gauche à droite :

Étant donné que passwd n'enregistre plus les informations de mot de passe, elles sont représentées par x espace réservé.

Pour empêcher un compte utilisateur de se connecter à Linux, définissez simplement le shell utilisé par l'utilisateur sur /sbin/nologin. Par exemple, pour les comptes FTP, seules la connexion et l'accès au serveur FTP sont généralement autorisés, et la connexion au système d'exploitation Linux n'est pas autorisée. Si un utilisateur ne dispose pas des autorisations telnet, c'est-à-dire qu'il n'est pas autorisé à se connecter à distance et à accéder au système d'exploitation Linux via telnet, définissez simplement le shell utilisé par l'utilisateur sur /bin/true. Si vous souhaitez que l'utilisateur ne dispose pas des autorisations de connexion telnet et ftp, vous pouvez définir le shell de l'utilisateur sur /bin/false.

Dans le fichier /etc/shells, s'il n'y a pas de /bin/true ou /bin/false, vous devez l'ajouter automatiquement :

[root@localhost~]#echo"/bin/false">>/etc/shells

[root@localhost~]#echo"/bin/true">>/etc/shells

2. Fichier de mot de passe utilisateur

Pour des raisons de sécurité, le vrai mot de passe de l'utilisateur est crypté à l'aide de l'algorithme de cryptage MD5 et stocké dans le fichier de configuration /etc/shadow. Ce fichier ne peut être lu que par l'utilisateur root.

Semblable au fichier passwd, le fichier shadow définit et enregistre également les informations relatives à un compte par ligne. Le premier tableau est le nom du compte utilisateur et le deuxième tableau est le mot de passe du compte.

3. Fichier de compte de groupe d'utilisateurs

Les informations sur le compte du groupe d'utilisateurs sont stockées dans le fichier de configuration /etc/group. Qu'est-ce que le fichier de configuration utilisateur du système Linux ?, n'importe quel utilisateur peut le lire. Le vrai mot de passe du groupe d'utilisateurs est stocké dans le fichier de configuration /etc/gshadow.

Dans le groupe, le premier tableau représente le nom du groupe d'utilisateurs, le deuxième tableau est x, le troisième est le numéro d'identification du groupe d'utilisateurs et le quatrième est la liste des utilisateurs membres du groupe d'utilisateurs, avec des deux-points entre chaque nom d'utilisateur Séparé.

4. Ajouter un utilisateur

Pour créer ou ajouter un nouvel utilisateur, utilisez la commande useradd. L'utilisation de la commande est :

useradd[option]nom d'utilisateur

用户配置文件有()版本_linux系统用户配置文件是什么?_用户配置文件的类型

Cette commande propose de nombreuses options, les plus couramment utilisées sont :

-c commenter l'utilisateur définit le texte de description du commentaire pour le compte

-d répertoire personnel spécifie le répertoire personnel pour remplacer le répertoire personnel par défaut /home/username

-m Si le répertoire personnel n'existe pas, créez-le. -r combiné avec -m crée un répertoire personnel pour le compte système

-M ne crée pas de répertoire personnel

-edate précise la date à laquelle le compte expirera. Le format de date est MM/JJ/AA

Le compte

-fdays sera définitivement suspendu après quelques jours d'expiration. S'il est spécifié comme -, il sera immédiatement suspendu. S'il est spécifié comme -1, cette fonction sera désactivée

.

-g user group spécifie à quel groupe d'utilisateurs ajouter l'utilisateur. Le groupe d'utilisateurs doit exister

.

-G liste des groupes d'utilisateurs spécifie la liste des groupes d'utilisateurs que l'utilisateur rejoint en même temps. Chaque groupe est séparé par des virgules

.

-nNe créez pas de groupes d'utilisateurs privés pour les utilisateurs

-sshell spécifie le shell utilisé lorsque l'utilisateur se connecte, la valeur par défaut est /bin/bash

-r crée un compte système avec un identifiant utilisateur supérieur à 500. Le répertoire personnel correspondant n'est pas créé par défaut

-uUser ID spécifie automatiquement la valeur d'ID du nouvel utilisateur, qui doit être unique et inférieure à 499

-ppassword spécifie le mot de passe de connexion du nouvel utilisateur. Le mot de passe ici est la valeur du mot de passe obtenue après le cryptage MD5 du mot de passe de connexion correspondant, qui ne correspond pas au texte original du mot de passe réel. Par conséquent, dans les applications réelles, cette option de paramètre est rarement utilisée et la commande passwd est généralement utilisée seule. pour définir le mot de passe de connexion de l'utilisateur.

Exemple :

Pour créer un utilisateur nommé nisj en tant que membre du groupe d'utilisateurs babyfish, la commande d'opération est :

[root@localhost~]#useradd-gbabyfishnisj

[root@localhost~]#idnisj

uid=502(nisj)gid=500(babyfish)groups=500(babyfish)

[root@localhost~]#tail-1/etc/passwd

nisj:x:502:500::/home/nisj:/bin/bash

Lors de l'ajout d'un utilisateur, si le groupe d'utilisateurs n'est pas spécifié avec le paramètre -g, le système créera manuellement un groupe d'utilisateurs privé avec le même nom que le compte utilisateur par défaut. Si vous n'avez pas besoin de créer ce groupe d'utilisateurs privé, vous pouvez utiliser le paramètre -n.

Par exemple, si vous ajoutez un compte nommé nsj820 mais ne spécifiez pas de groupe d'utilisateurs, le résultat de l'opération est :

[root@localhost~]#useraddnsj820

[root@localhost~]#idnsj820

uid=503(nsj820)gid=503(nsj820)groups=503(nsj820)

[root@localhost~]#tail-1/etc/passwd

nsj820:x:503:503::/home/nsj820:/bin/bash

[root@localhost~]#tail-2/etc/passwd

nisj:x:502:500::/home/nisj:/bin/bash

nsj820:x:503:503::/home/nsj820:/bin/bash#Le système a créé manuellement un groupe d'utilisateurs nommé nsj820 avec le numéro d'identification 503

Lors de la création d'un compte utilisateur, le système créera manuellement le répertoire personnel correspondant à l'utilisateur. Ce répertoire est placé par défaut dans le répertoire /home. Si vous souhaitez modifier l'emplacement, vous pouvez le spécifier avec le paramètre -d ; pour le shell utilisé par l'utilisateur pour se connecter, la valeur par défaut est /bin/bash, si vous souhaitez le modifier, utilisez le paramètre -s pour spécifier

Par exemple, si vous souhaitez créer un compte nommé vodup, placez le répertoire personnel dans le répertoire /var et spécifiez le shell de connexion comme /sbin/nologin, la commande d'opération est :

[root@localhost~]#useradd-d/var/vodup-s/sbin/nologinvodup

[root@localhost~]#idvodup

uid=504(vodup)gid=504(vodup)groups=504(vodup)

[root@localhost~]#tail-1/etc/passwd

vodup:x:504:504::/var/vodup:/sbin/nologin

[root@localhost~]#tail-1/etc/group

vodup:x:504:

5. Définir les attributs du compte

Pour les utilisateurs déjà créés, vous pouvez utiliser la commande usermod pour modifier et définir divers attributs du compte, notamment le nom de connexion, le répertoire personnel, le groupe d'utilisateurs, le shell de connexion, etc. L'utilisation de cette commande est la suivante :

usermod[option]nom d'utilisateur

Quelques options

(1) Changer le nom du compte utilisateur

Utilisez le paramètre -l pour y parvenir. L'utilisation de la commande est :

usermod-l nouveau nom d'utilisateur nom d'utilisateur original

Par exemple, si vous souhaitez renommer l'utilisateur nsj820 en nsj0820, la commande d'opération est :

[root@localhost~]#usermod-lnsj0820nsj820

[root@localhost~]#idnsj0820

uid=503(nsj0820)gid=503(nsj820)groups=503(nsj820)

[root@localhost~]#tail-1/etc/passwd

nsj0820:x:503:503::/home/nsj820:/bin/bash

Comme le montre le résultat, le nom d'utilisateur a été changé en nsj0820. Le répertoire principal est toujours le /home/nsj820 d'origine. Si vous souhaitez le remplacer par /home/nsj0820Qu'est-ce que le fichier de configuration utilisateur du système Linux ?, vous pouvez le faire en exécutant la commande suivante

[root@localhost~]#usermod-d/home/nsj0820nsj0820

[root@localhost~]#idnsj0820

uid=503(nsj0820)gid=503(nsj820)groups=503(nsj820)

[root@localhost~]#tail-1/etc/passwd

nsj0820:x:503:503::/home/nsj0820:/bin/bash

[root@localhosthome]#mv/home/nsj820/home/nsj0820

(2) Verrouiller le compte

Si vous souhaitez interdire temporairement à un utilisateur de se connecter, vous pouvez verrouiller le compte utilisateur. Le verrouillage du compte peut être réalisé à l'aide du paramètre -L. L'utilisation de la commande est :

.

usermod -L Compte à verrouiller

Linux verrouille un utilisateur en ajoutant "!" devant le tableau de mots de passe de l'ombre du fichier de mots de passe pour indiquer que l'utilisateur est verrouillé.

[root@localhosthome]#usermod-Lnsj0820

[root@localhosthome]#tail-1/etc/shadow

nsj0820 :!$1$JEW25RtU$X9kIdwJi/HPzSKMVe3EK30:16910:0:99999:7:::

Mais vous pouvez entrer via l'utilisateur root, puis envoyer un message à l'utilisateur verrouillé.

(3) Déverrouiller le compte

Pour déverrouiller un compte, vous pouvez utiliser la commande usermod avec le paramètre -U.

[root@localhost~]#usermod-Unsj0820

[root@localhost~]#tail-1/etc/shadow

nsj0820:$1$JEW25RtU$X9kIdwJi/HPzSKMVe3EK30:16910:0:99999:7:::

6. Supprimer le compte

Pour supprimer un compte, vous pouvez utiliser la commande userdel Son utilisation est :

userdel[-r] nom du compte

-r est facultatif Si ce paramètre est fourni, le répertoire personnel correspondant au compte sera supprimé en même temps que le compte est supprimé.

[root@localhost~]#userdel-rnsj0820

Pour définir le délai d'expiration de tous les mots de passe des comptes utilisateur, vous pouvez le faire en modifiant la valeur de l'élément de configuration PASS_MAX_DAYS dans le fichier de configuration /etc/login.defs. Sa valeur par défaut est 99999, ce qui signifie que les mots de passe des comptes utilisateur ne le seront jamais. expirer. L'élément de configuration PASS_MIN_LEN est utilisé pour spécifier la largeur minimale du mot de passe du compte, qui est par défaut de 5 caractères.

7. Définir le mot de passe de connexion de l'utilisateur

Utilisez la commande passwd pour le définir. L'utilisation de la commande est :

passwd[nom du compte]

Si un nom de compte est spécifié, le mot de passe de connexion du compte spécifié est défini et le mot de passe d'origine est écrasé manuellement. Seul l'utilisateur root a le pouvoir de définir le mot de passe d'un compte spécifié. En règle générale, les utilisateurs peuvent uniquement définir ou modifier le mot de passe de leur propre compte (sans paramètres).

Par exemple, si vous souhaitez définir le mot de passe de connexion du compte nisj, la commande d'opération est :

用户配置文件的类型_linux系统用户配置文件是什么?_用户配置文件有()版本

[root@localhosthome]#passwdnisj

Changement du mot de passe pour l'utilisateurnisj.

Nouveau mot de passe :

MAUVAIS MOT DE PASSE : c'est trop court

MAUVAIS MOT DE PASSE : c'est trop simple

Retapez le nouveau mot de passe :

passwd : tous les jetons d'authentification ont été mis à jour avec succès.

Après avoir défini le mot de passe de connexion au compte, le compte peut se connecter au système.

8. Verrouiller/déverrouiller le mot de passe du compte et vérifier l'état du mot de passe, supprimer le mot de passe du compte

Lors de la suppression d'un répertoire sous LINUX, non seulement le compte utilisateur peut être verrouillé, mais le mot de passe du compte peut également être verrouillé. Une fois l'une ou l'autre partie verrouillée, elle ne pourra pas se connecter au système. Seul l'utilisateur root a le droit d'exécuter cette commande. Pour verrouiller le mot de passe du compte, utilisez la commande passwd avec l'option -l. Son utilisation est :

.

nom du compte passwd-l

passwd-uaccountname#Déverrouiller le mot de passe du compte

[root@localhosthome]#passwd-lnisj

Mot de passe de verrouillage pour l'utilisateurnisj.

passwd : Succès

[root@localhosthome]#passwd-unisj

Déverrouillage du mot de passe pour l'utilisateurnisj.

passwd : Succès

Pour vérifier si le mot de passe du compte actuel est verrouillé, vous pouvez utiliser la commande passwd avec le paramètre -S Son utilisation est :

.

Nom du compte passwd-S

Par exemple

[root@localhosthome]#passwd-Snisj

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer