Linux用户管理

一.用户和用户组存在的意义

用户:限定权力
用户组:开放权力

二.用户的查看

1)查看当前用户
    whoami  ##查看当前用户
2)系统中用户的查看
   id 唯一身份标示
   id
      -u ##查看用户的uid
    -g ##查看用户的gid
    -G ##查看用户所在的所有组的id
    -un ##查看用户的显示名字而不显示id数字

Linux用户管理
三.用户切换


su-用户名称
su-中-表示在用户身份切换时同时切换当前用户的环境
su-执行时高级用户切换到低级用户不需要密码,低级用户切换到高级用户需要,平级也需要
   注意:每次su切换到其他用户操作之后必须退出,然后再次切换到其他用户

Linux用户管理

                                                                             从 root用户切换到student用户

Linux用户管理

                                                                从低级用户student切换到高级用户root需要密码

 

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

1)/etc/passwd 用户信息文件:

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

2)/etc/group  用户组信息文件:

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

3)/etc/shadows  用户的认证信息文件:

用户名称:
用户密码:
用户密码最后一次被更改的时间:
密码最短有效期:一定时间内不能更改密码:
密码最长有效期:时间长要更改:
密码警告期限;
密码非活跃期限:
密码到期日:
用户自定义位置,目前没有启用:
/etc/skel/.*  默认开启shell的配置,用户的骨文件
/home/username 用户的家目录

Linux用户管理

 

Linux用户管理

                                                           man 5 shadow 查看shadow的用户认证信息

 

五.用户的管理命令


1.用户的删除
    userdel
    userdel student     删除用户但不删除用户的配置文件
    userdel -r student  删除用户并删除用户的配置文件

2)用户建立
用户信息监控命令   ##建立用户westos,删除westos,然后在使用每一条命令之前要删掉westos(userdel -r westos)
      watch -n 1 'tail -n 3 /etc/passwd /etc/group;ls -l /home'
      useradd ###建立用户,建立用户时,读取vim /etc/login.defs 文件内容确定规则
      useradd -u  8888 westos 指定用户uid
      useradd -g  21 westos 指定用户初始组id,“21”用户组必须是存在的
      useradd -G  21 westos 指定用户附加组id,“21”用户组必须是存在的 id westos 查看初始组和附加组            
      useradd -c  “hello” westos #指定用户的说明
      useradd -d   /home/lee westos 指定用户家目录   
      useradd -s  /bin/sh westos 指定用户的默认shell
    依次是密码 uid gid
      groupadd  建立用户组
      groupadd  -g 888 westos 建立用户组gid,并且##gid随便都可以
      groupdel westos    删除westos这个组

3)更改用户信息
  usermod
  usermod -l 新名称 westos(旧名称)  ##更改用户的名称
  usermod -u 6666 westos   更改用户uid
  usermod -g 21  westos    更改用户的初始组            
  usermod -G  21 westos    更改用户的附加组
  usermod -aG    westos    添加用户的附加组,不会去掉原始的附加组
  usermod -G ""  westos    删除用户所有附加组的身份
  usermod -c  "hello"  westos  指定用户说明文字
  usermod -d   /home/lee westos    更改用户家目录的指向,上面变下面不变 要将家目录改回去才能执行下一条命令(md)
  usermod -md  /home/lee westos    更改用户家目录,上下都变
  usermod -s  /bin/sh  westos      更改用户shell
  usermod -L    westos      冻结用户 passwd添加密码
  usermod -U    westos      解封用户


 

六.用户的认证信息管理


man 5 shadows #查看shadows的作用
/etc/shadows  ###用户的认证信息文件:
此文件一共有九列:
用户名称:
watch -n 1 tail -n 1 /etc/shadow
用户密码:
        passwd student      更改student 密码
        passwd -l student   ##在用户密码前加入‘!!’
    passwd -u student    unlock
     usermod -L student  ##在用户密码前加入’!‘
        usermod -U student
    passwd -d student    清空student密码
    注意:
    普通用户改密码时:
    1.必须知道当前用户原始密码
    2.密码不能和帐号名称相似
    3.密码不能是纯数字或纯字母
    4.密码不能是有序的字母和数字组合
    5.用户密码最后一次被更改的时间:
        passwd -e student ##会改变用户最后一次更改密码时间为0.
                      ##用户在登陆时会更改密码
        chage -d 0 student ##会改变用户最后一次更改密码时间为0.
                       ##用户在登陆时会被强制更改密码
密码最短有效期:一定时间内不能更改密码;
        passwd -n 1 student  ##student用户在1天内不能修改密码
       chage -m  1 student   ##student用户在1天内不能修改密码
密码最长有效期:时间长要更改;
            passwd -x 30 student  ##student用户在30天内必须修改密码
       chage -M 30 student   ##student用户在30天内必须修改密码
密码警告期限:
            passwd -w 12 student  ##student用户在密码过期前两天有警告输出
       chage -M 12 student   ##student用户在密码过期前两天有警告输出
密码非活跃期限:
           passwd -i 1 student  ##student用户在密码过期后仍可以登录系统的天数
       chage -I 1 student   ##student用户在密码过期后仍可以登录系统的天数
用户到期日:
     chage -E 2018-11-11 student  ##student用户在2018-11-11会被冻结
用户自定义位置,目前没有启用:
passwd -S student ##查看student用户密码信息
kill -9 32 干掉32这个进程

Linux用户管理

                                                  passwd -l student   ##在用户密码前加入‘!!’

Linux用户管理

                                                            passwd -d student    清空student密码

Linux用户管理

                                                            usermod -L student  ##在用户密码前加入’!‘

Linux用户管理

                                                                             passwd -e student

Linux用户管理

                                                            passwd -x 30 student  ##student用户在30天内必须修改密码

Linux用户管理

                                                 passwd -w 12 student  ##student用户在密码过期前两天有警告输出

 

七.用户授权


用户授权配置文件
     /etc/sudoers
授权配置命令
     visudo
规范操作:
文件100行左右  :100
普通用户  主机名称=(转换成新用户身份) 命令, 命令2, ....
普通用户  主机名称=(转换成新用户身份) NOPASSWD: 命令

示例:
westos   desktop0.example.com=(root)   /usr/sbin/userasdd  ##执行命令要密码
westos   desktop0.example.com=(root)    NOPASSWD: /usr/sbin/userasdd  ##免密执行命令

su - westos
sudo useradd hello

Linux用户管理

Linux用户管理

 

Linux用户管理