[RH124] 6-用户管理

1.用户信息存放

windows下的用户信息存放在 C:\Windows\System32\config\SAM 数据库中。

Linux用户信息存放在一下三个文件中:

  •  /etc/passwd :存放账户信息。
  •  /etc/shadow :存放密码。
  •  /etc/group :存放组信息。

 

passwd -S leo 查看用户leo的信息,包含密码编码类型。

 

passwd文件解析:

  每一行信息代表一个用户。

  每一行分成7个部分,每个部分使用":"隔开。

grep hanxinda /etc/passwd(也可以使用getent passwd hanxinda查看网络用户只能用这个命令):

hanxinda:x:1000:1000:hanxinda:/home/hanxinda:/bin/bash
1号位:hanxinda是用户名。

2号位:x是一个占位符,以前是写密码的地方,后来密码被写到shadow里面去了。

3号位:1000,UID,userID,用户ID。1000~60000是普通用户,1~999是系统用户。RHEL6是1~499,500~60000。

4号位:1000,GID,groupID,用户组ID。某个用户必须属于某个组。

5号位:hanxinda,注释信息。即登录界面(图形登录界面)显示那个用户名(头像旁边那个)。

6号位:/home/hanxinda,表示家目录。

7号位:/bin/bash,使用的shell类型。

shadow文件解析:

  shadow文件中的每一行也代表一个用户。

grep hanxinda /etc/shadow(也可以使用getent shadow hanxinda,查看网络用户只能用这个命令):

hanxinda:$6$wRqt2dGJVvbFsIY6$r2K7HJ4DjXsJOJcQpP/SuWr7jgf1XlaIIegZZAbfH0RNP2kuZEV83AH3YAS2qDfOqy9IGSN89Bu.b4bs/xSqS1::0:99999:7:::
1号位:hanxinda,用户名。

2号位:hanxinda用户的密码。我们可以使用passwd -S hanxinda来查看hanxinda用户的信息,里面有用户密码使用的编码,默认一般为sha512。

后面位:参见以面章节。

2.创建用户

 id hanxinda :查看用户是否存在,如果存在则会显示uid、gid等。

两种方式创建用户:

图形化界面方式:

1)首先从光盘安装 system-config-users 软件(挂载链接光盘,然后使用 rpm -ivh /mnt/Packages/system-config-users-* 来安装)。

2)然后在终端中运行 system-config-users & (后台运行)。

3)在界面中创建用户:

解释:

User Name:用户名。

Full Name:就是passwd中第5位的注释信息,显示在登录界面。

Password:用户密码。

Confirm Password:确认密码。

Login Shell:登录后使用的shell。

  有一种shell叫nologin。如果使用这种shell类型,则该用户是无法登录系统的,也无法使用su来切换。他存在的意思是指定他登录一些服务,但不让他登录系统。

Create home directory:为新用户创建家目录。

Create a private group for thr user:为新用户创建一个单独的用户组。如果不创建的话,会自动加入到users组(可以使用grep username /etc/group查看)。

Specify user ID manually:给新用户指定uid,不能和其他用户重复。

Specify group ID manually:给新用户指定gid,不能和其他用户重复。

 

命令行方式:

 useradd :创建用户。例如 useradd leo 。

 adduser :同上。

选项:

 -c "I'am leo" :给用户指定注释。

 -p *&^&*#@(!@( :给用户指定密码,但不能是明文的密码,必须是加密后的密码,所以一般不会在useradd命令中直接指定密码。

 -d /leo :创建家目录,默认是配合-m,即允许创建家目录。如果是-M,即不允许创建家目录。

 -s /bin/bash :指定用户使用什么样的shell命令。

 -g users :指定用户加入哪个用户组,如果不指定的话,就会默认为新用户单独创建一个用户组。

 -G root :将用户加入root用户组,并且为用户创建一个与用户名同名的用户。

 

为用户设置密码:

 passwd leo :然后输入两次需要设置的密码。或者使用 echo leokale | passwd --stdin leo ,即将密码leokale通过管道输入给标准输入。

3.管理用户属性

图形化方式:

1)选择需要管理的用户。

 2)点击属性。Properties。

3)可以锁定用户

锁定后,其他用户无法su到该用户,但不影响root通过su登陆该用户。

4)可以设置用户过期时间

到2018年12月31日自动锁定。

5)密码策略

Days before change allowed:默认是0,即每次修改密码后至少使用多少天,即不能连续多次修改。

Days before change required:默认是99999,即密码最大使用天数。超过时间会被锁定。

Days warning before change:剩余使用天数剩多少天开始提醒。默认7天。

Days before account inactive:账号到期后,再给多少天的缓冲期。但是在这几天中,如果登录系统,会要求强制更改密码。

Force password change on next login:改用户下次登录时会被强制修改密码。下次登录过后,改选项自动会到未被选中状态。

  最后有个Password last changed on: 06/30/2018,也就是改用户最近一次修改密码的时间。这个时间可以使用命令行修改:chage -d 2018-05-04 leo

命令行方式:

usermod:修改用户属性,选项和useradd相似。

usermod -d:修改用户的家目录,修改后登陆用户需要使用cp -a将家目录拷贝到修改后的地方。

 

gourps leo:查看leo属于那些用户组。

gpasswd -a leo root:将leo用户加入到root用户组。

gpasswd -d leo root:将leo用户从root用户组删除。

 

usermod -L leo:锁定用户,效果同图形界面。

usermod -U leo:解锁用户,unlock。

 

chage -d 2018-05-03:修改用户最近修改密码的时间。

chage -E 2018-12-31:修改用户密码过期时间。

chage -m 10:密码最小使用天数。

chage -M 30:密码最大使用天数。

chage -I 3:缓冲期天数。

chage -W 7:警告期天数。

chage -E 99999:设置用户永不过期。

chage -l:查看用户密码年龄信息。

 

===

 

posted @ 2020-03-20 14:18  风间悠香  阅读(552)  评论(0)    收藏  举报