linux 下用户管理


一、用户的分类

1、超级用户:root UID=0

2、系统用户:不需要登录系统,对应用程序服务,主要维护系统的正常运行;UID = 1 ~ 499(RHEL7 = 1 ~ 999 )

3、普通用户:一般是可以登录系统的,用管理员来添加;UID = 500 ~ 60000( RHEL7 = 1000 ~ 60000)

(UID:用户的标识)


二、与用户相关的配置文件

1、/etc/passwd

使用man 5 查看

wKioL1ghb5GT2jAMAAAPReno2cs136.png

wKioL1ghb5GSzL8jAAAPFAts0yA923.png

内容以“ :”分割分别是

用户名:密码占位符 :用户标识 :主要组标识 :描述信息 :家目录 : 登录shell

2、/etc/shadow

使用man 5 查看

wKioL1ghcEewarc7AAAHkxyZB4o528.png

login name用户名
encrypted password:
加密后的密码
date of last password change:
上一次密码修改时间(距离1970年1月1日的天数)
minimum password age:
密码的最小生存周期 单位:天 0表示随时修改;2表示两天内不能修改
maximum password age:
密码的最大生存周期 单位:天
password warning period:
密码到期前几天开始警告
password inactivity period:
密码过期之后到账户失效之前的时间限制
account expiration date:
账户过期时间
reserved field:
保留字段

wKioL1ghcLaALdA3AAAq0btZHQE183.png

内容以“ :”分割分别是

用户名 :用户密码 :密码创建时间 :密码不可被改动的天数:密码需要重新改动的天数 :密码需要改动前的警告期限 :用户失效期限 :用户取消日期 :保留

(日期为1970.1.1加上面的天数)

密码段用“ $ ”分割分别是

$ 加密算法(1:MD5 ;2:SHA) $ 随机生产的字符串 $ 加密字符串每次都不同


三、查看当前用户

wKioL1ghcSjiVKGbAAAow51MeKk465.png


四、查看用户 id

1、直接输入 id (默认情况下显示的是当前用户的信息)

wKioL1ghch3gH4kBAAAooiPtbXc990.png

2、id  后面添加指定用户

wKioL1ghci6jH37RAAAKUy1Le-8138.png

uid:用户标识

gid:组标识,用户的主要组(主组)

groups:用户所属组的信息


五、添加用户  useradd (只有root用户才可以操作)

wKioL1ghcpLCt3lGAAAG30jC4HM554.png

创建用户的时候,如果没有其它指定,会创建一个与用户名同名的家目录 /home/用户名,同时也会创建一个同名的组

1、参数

-d    指定用户的家目录

-g    指定用户的主要组(组必须存在)

-G    指定用户的附属组(组必须存在)

-u    指定用户的UID

-s    指定用户的登录shell

-c    给用户添加描述信息

-e    指定用户的有效期,日期

-f    指定游湖的有效期,天数

-m    自动创建家目录

-M    不自动创建家目录

-n    不创建以用户名为名的组

2、格式  (useradd  选项  选项的参数  用户名)

wKioL1ghcyqC92n2AAAQk2lwUMo922.png

说明:创建一个UID=2000、登录shell为/sbin/nologin、家目录为:/home/test 、主要组为group1、描述为:zheshiyigeanli 的用户name1


六、手动添加用户

1、添加一个用户时在系统中改变的文件(手动添加需要改变的文件)

(1)在/etc/passwd文件中添加一行

(2)在/etc/shadow文件中添加一行
(3)在/etc/group文件中添加一行
(4)在/etc/gshadow文件中添加一行
(5)在/home下面创建一个与用户名同名的目录(权限、拥有者、所属组)
(6)拷贝/etc/skel中的模板文件到用户家目录下
(7)在/var/spool/mail/创建用户邮箱

2、创建用户

(1)在/etc/passwd文件中添加一行

wKiom1gheLnCJz3xAAAe_NzabAg715.png

(2)在/etc/shadow文件中添加一行

wKiom1gheLri4gsdAAAYyoo6_8o086.png

(3)在/etc/group文件中添加一行

wKioL1gheLrC8vzIAAAVbA1YCn8355.png

(4)在/etc/gshadow文件中添加一行

wKioL1gheLugIDCYAAAVLmIcSBc735.png

(5)在/home下面创建一个与用户名同名的目录(权限、拥有者、所属组)

wKiom1gheL7BGEo2AAAZEUXQ4S0844.png

(6)拷贝/etc/skel中的模板文件到用户家目录下

wKioL1gheL-xCzFkAAAih9pZaz0472.png

(7)在/var/spool/mail/创建用户邮箱

wKiom1gheMDzXW6aAAAYHFpjlOQ928.png

(8)登录验证一下

wKiom1gheMGyeV-jAAAHDZUGOIc867.png


七、删除用户 userdel

1、userdel 用户名

wKiom1gheiHRvD4MAAAGgOHAFhs450.png

并不是测底删除用户,用户的家目录和用户的邮箱文件还存在

用户的家目录

wKioL1ghei6BPwjTAAALe_Kn8nA919.png

用户的邮箱目录

wKiom1ghejewUkoZAAAK1KQYVEk489.png

2、userdel -r  用户名

wKioL1ghej_ywIu5AAAG2ptnptg647.png

测底删除一个用户


八、给用户设置密码 passwd

超级用户:既可以改自己的密码,又可以改别人的密码,并且不需要提供当前密码
普通用户:只能修改自己的密码,而且要求严格,需要提供当前密码

1、在root下给自己设置密码

wKiom1gheofzubjzAAAcdIQkgwQ473.png

2、在root下给普通用户设置密码

wKiom1ghepSggXLLAAAdGxhwNN4626.png

3、在普通用户下给自己设置密码

wKiom1gheqXgQV7RAAAo--4SfSI638.png


九、修改用户 usermod

参数

-g   修改用户的主要组

-G   修改用户的附属组

-u   修改用户的UID

-s   修改用户的登录shell

-d   修改用户的家目录

-a   追加附属组,一般和-G连用

-L   锁定用户

-U   解锁用户

-l   改名

1、修改用户的UID

wKioL1ghfN7CQ668AAAIgkiK80g233.png

2、修改用户的主要组

wKiom1ghfN-BWU3sAAAIcZHWCrQ490.png

3、修改用户的附属组

wKioL1ghfN-TGDs2AAAJeXaHytc697.png

4、修改用户的家目录

wKiom1ghfN-DSsdOAAAIZmcFPqg795.png

5、修改用户的登录shell

wKioL1ghfOChOcTfAAAJWgsePBw362.png

6、追加附属组

wKiom1ghfOChff7vAAAKCXYYlgI412.png

7、修改用户名

wKioL1ghfOGylSt3AAAzdaxewcs881.png