用户及用户组管理

一.用户存在的意义

  用户就是系统中使用者的身份,为了限制权限保护系统安全

二.组存在的一意义

  组是为了共享一部分权力而设定的

三.用户的查看

1)

查看当前用户

whoami ##查看当前用户

2)

系统中用户的查看

id ##查看指定用户id信息

id

-u ##查看用户的uid

-g ##查看用户的gid

-G ##查看用户所在的所有组的id

-n ##显示名字而不显示id数字

示例:

[root@localhost Desktop]# id -u student

1000

[root@localhost Desktop]# id -g student

1000

[root@localhost Desktop]# id -G student

1000 10

[root@localhost Desktop]# id -un student

student

[root@localhost Desktop]# id student

uid=1000(student) gid=1000(student) groups=1000(student),10(wheel)

 

四.用户切换

su - 用户名称

su - 中 “-” 标示在用户身份切换时同时切换当前用户的环境

su - 执行时高级用户切换到低级用户不需要密码,低级用户切换到高级需要,平级用户切换切换也需要

注意:每次su切换到其他用户操作之后必须退出,然后再次切换到其他用户

示例:

[root@localhost Desktop]# su - student ##不需要密码

Last login: Thu May 11 20:23:54 EDT 2017 on pts/0

[student@localhost ~]$ pwd ##环境的切换

/home/student

五.用户在系统中的存储方式

/etc/passwd

用户信息文件

用户名称:密码:uid:gid:说明:家目录:默认shell

/etc/group

用户组信息文件

组的名字:组密码:组id:组成员

/etc/shadow

       认证信息文件

       用户密码:

       passwd student       ###更改student密码

       passwd -l student    ###在用户密码前加入“!!”

       passwd -u student -f ###去掉“!!”

       usermod-L student    ###密码前加一个“!”

       usermod -U student    

       passwd -d student    ###清空student密码

示例:

[root@localhost Desktop]# watch   tail -n 2 /etc/shadow ##监控最后两行

[root@localhost Desktop]# passwd -l student                ##加锁前面加两个!

Locking password for user student.

passwd: Success

[root@localhost Desktop]# passwd -u student                 ##解锁删除!!

Unlocking password for user student.

passwd: Success

[root@localhost Desktop]# passwd -d student                   ##删除密码

Removing password for user student.

passwd: Success

 

注意:

        普通用户改密码:

         1.必须知道当前用户原始密码

         2.密码不能和帐号名称相似

         3.密码不能是纯数字或纯字母

         4.密码不能是有序的字母和数字的组合

            

       用户密码最后一次被更改的时间:

      passwd -e westos ##会改变用户密码最后一次更改密码时间为0

      chage -d 0 westos##用户在登录时被强制更改用户两个命令功能类似

       密码最短有效期:

      passwd -n 1 westos ##必须过1天才能再次更改密码

      chage -m 1 westos  

       密码最长有效期:

       passwd  -x 30 westos

       chage   -M 40 westos

       密码警告期限:

       passwd -w 2   westos ##密码过期前两天有提前警告

       chage  -W 2   westos

       密码非活跃期限:密码30天过期之后,余留时间

       passwd -i 1   westos   ##密码过期仍可登录系统的天数

       chage  -I 1   westos   

       密码到期日:

       chage -E  2018-11-11   ##westos在2018年11月11日被冻结

       用户自定义位置,目前没有启动:

示例:

[root@localhost Desktop]# watch -n 1 'tail -n 3 /etc/shadow'

[root@localhost Desktop]# passwd -e westos  ##会改变用户密码最后一次更改密码时间为0

Expiring password for user westos.

passwd: Success

[root@localhost Desktop]# su - westos       ##进入westos

Last login: Sun Jul 15 10:07:40 EDT 2018 on pts/1

[westos@localhost ~]$ su - westos           ##普通用户进入要改密码

Password:

You are required to change your password immediately (root enforced)

Changing password for westos.

(current) UNIX password:                   ##现在密码

New password:                              ##新密码

Retype new password:

Last login: Sun Jul 15 10:18:59 EDT 2018 on pts/1

Last failed login: Sun Jul 15 10:19:31 EDT 2018 on pts/1

There was 1 failed login attempt since the last successful login.

[root@localhost Desktop]# passwd -n 1 westos

Adjusting aging data for user westos.

passwd: Success

[root@localhost Desktop]# passwd -x 30 westos

Adjusting aging data for user westos.

passwd: Success

[root@localhost Desktop]# passwd -w 2 westos

Adjusting aging data for user westos.

passwd: Success

[root@localhost Desktop]# passwd -i 1 westos

Adjusting aging data for user westos.

passwd: Success

[root@localhost Desktop]# chage -d 0 westos

[root@localhost Desktop]# chage -m 2 westos

[root@localhost Desktop]# chage -W 2 westos

[root@localhost Desktop]# chage -I 1 westos

[root@localhost Desktop]# chage -E 2018-11-11 westos

 

/etc/skel/.*

       默认开启shell的配置,用户的骨文件

       用户名称:

/home/username

用户的家目录

6.用户的建立和用户信息管理

1)用户删除

  userdel  student   ##删除用户但不删除用户配置信息

  userdel -r student ##删除用户并删除用户配置信息

2)用户建立

 用户信息监控命令

  watch -n 1 'tail -n 3 /etc/passwd /etc/group; ls -l /home' ##每一秒输出一次三个文件的内容

 useradd   #建立用户时,读取/etc/login.defs

 useradd -u 21 westos  ###指定用户的uid

 useradd -g 21 westos  ###指定用户的初始组gid 用户组必须是存在的

 useradd -G 21 westos  ###指定用户的附加组

 useradd -c “hello”    ###指定用户的说明

 useradd -d  /home/lee westos ###指定用户的家目录

 useradd -s  /bin/sh/ westos  ###指定用户的默认shell

示例:

[root@localhost Desktop]# useradd -u 21 westos

[root@localhost Desktop]# useradd -g 21 westos

[root@localhost Desktop]# useradd -d /home/lee westos

[root@localhost Desktop]# useradd -s /bin/sh/ westos

注意:每次执行完一次必须userdel -r westos才能继续下一个实验

 

3)用户组建立删除

   groupadd  ###建立用户组信息

   groupadd hello ###建立用户组

   groupadd -g 888 hello##建立用户组并指定用户组的id

   groupdel  hello ##删除用户

示例:

[root@localhost Desktop]# groupadd hello  

[root@localhost Desktop]# groupadd -g 888 hello1

[root@localhost Desktop]# groupdel hello

[root@localhost Desktop]# groupdel hello1

 

4)更改用户信息  

   usermod -l 新名称 westos  ###更改用户名称

   usermod -u 6666   westos  ###更改用户的uid

   usermod -g 21     westos  ###更改用户的初始组信息

   usermod -G 21     westos  ###更改用户附加组

   usermod -aG 71    westos  ###添加用户附加组信息

   usermod -G “”     westos  ###删除用户所有添加族的

   usermod -c “hello”westos  ###指定用户说明

   usermod -d  /home/lee westos  ###更改用户家目录路径

   usermod -md /home/lee westos  ###更改用户家目录指向位置

   usermod -s “hello”    westos  ###添加说明信息

   usermod -L                ###冻结用户

   usermod -U                ###解封用户

示例:

[root@localhost Desktop]# groupadd -g 888 hello1

[root@localhost Desktop]# groupdel hello

[root@localhost Desktop]# groupdel hello1

[root@localhost Desktop]# usermod -l westos1 westos

[root@localhost Desktop]# usermod -l westos westos1

[root@localhost Desktop]# usermod -u 6666 westos

[root@localhost Desktop]# usermod -u 1001 westos

[root@localhost Desktop]# usermod -g 21 westos

[root@localhost Desktop]# usermod -g 1001 westos

[root@localhost Desktop]# usermod -G 1001 westos

[root@localhost Desktop]# usermod -G 21 westos

[root@localhost Desktop]# usermod -aG 21 westos

[root@localhost Desktop]# usermod -G  "" westos

[root@localhost Desktop]# usermod -c "hello" westos

[root@localhost Desktop]# usermod -d /home/lee westos

[root@localhost Desktop]# usermod -d /home/westos westos

[root@localhost Desktop]# usermod -md /home/lee westos

[root@localhost Desktop]# usermod -L westos

[root@localhost Desktop]# usermod -U westos

7.用户授权

1)用户授权配置文件

         /etc/sudoers

2)授权配置文件

         visudo

3)规范操作

文件100行左右

    hostname主机名称

    普通用户     主机名称=(转换成的新用户身份) 命令1, 命令2 ...

    普通用户     主机名称=(转换成的新用户身份)NOPASSWD:命令1, 命令2 ...

4)示例:

    westos   foundation194.ilt.example.com=(root) /usr/sbin/useradd ,/usr/sbin/userdel ##执行命令要密码

    westos   foundation194.ilt.example.com=(root) NOPASSWD:/usr/sbin/useradd ,/usr/sbin/userdel  ##免密码执行

示例:

visudo100行添加

westos  localhost=(root) /usr/sbin/useradd, /usr/sbin/userdel

[root@localhost Desktop]# su  - westos ##切换westos用户

Last login: Sun Jul 15 10:06:33 EDT 2018 on pts/1

[westos@localhost ~]$ sudo useradd xue ##建立用户要输入输入密码

[sudo] password for westos:

[westos@localhost ~]$ id xue

uid=1004(xue) gid=1004(xue) groups=1004(xue)

 

注:(root) 之后加入NOPASSWD 则免密执行

 

 

 

 

 

 

猜你喜欢

转载自blog.csdn.net/weixin_40460156/article/details/81071292