1.用户信息存放
windows下的用户信息存放在 C:WindowsSystem32configSAM 数据库中。
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:查看用户密码年龄信息。
===