Linux用户管理

---恢复内容开始---

一、用户存在的意义

  可以限定权力;

  用户是操作者在系统中的身份

  是系统最低层的安全机制的一部分

  用户在系统中以文件和字符的形式存在

二、组存在的意义

  开放权力

三、用户的查看

  1、查看当前用户

  命令: whoami

  2、系统中用户的查看(id  user)

  命令: id    ## 查看之指定当前用户id信息

      id -u  ## 查看当前用户的Uid

      id -g  ## 查看用户的gid

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

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

  3、用户切换

  命令:su -  用户名称

  注意:“ - ”表示用户切换身份时,同时切换当前的用户路径

     执行时,高级用户切换到低级用户不需要密码;低级用户切换到高级或平级用户需要

     每次su切换到其他用户之后,必须要exit,然后再切换到其他用户  

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

  •  /etc/passwd    ## 存放用户信息文件

  组成部分:

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

  注释:用户说明是在passwd登陆时显示的登陆用户名,可以在/etc/passwd里面进行修改

  •  /etc/group      ## 用户组信息文件

  组成部分:

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

  •  /etc/shadows     ## 认证信息文件 

  组成部分:

      用户名称:用户密码:用户秘密最后一次被更改时间:密码最短有效期:密码最长有效期:

      密码警告期限:密码非活跃期限:密码到期日:用户自定义位置,目前没有使用

  •  /etc/skel/.*      ##默认开启shell的配置(运行的状态的模版),用户的骨文件
  •  /home/username  ## 用户的家目录

五、用户的管理命令

  1、删除用户

  命令:userdel

  用法:userdel student    ##删除用户但不删除用户的配置文件

     userdel -r student   ##删除用户并删除用户的配置文件
  2、用户建立

  命令:useradd    ##建立用户,建立时读取/etc/login.defs文件内容确定规则

  用法:useradd -u 8888 westos    ##指定用户uid

     useradd -g 21 westos     ##指定用户初始组id,"21用户组必须是存在的“

     useradd -G 21 westos       ##指定用户的附加组id,”21用户必须存在“

     useradd -c "hello" westos    ##指定用户的说明(登录时的用户名)

     useradd -d /home/lee westos   ##指定用户的家目录(默认为/home/用户名)

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

  用户信息监控命令:

  watch -n 1 'tail -n 3 /etc/passwd /etc/group;ls -l /home'(-n 1 表示监控频率单位为秒)

  3、用户组的建立与删除

     groupadd      ##建立用户组(用户组一般在一千之后)

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

     groupdel       ##删除用户组

  4、更改用户信息(passwd +用户名 :为用户创建一个密码,即可以登陆)

  命令:usermod

     usermod -l newne  westos    ##更改用户的名称为newne

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

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

     usermod -G 21 westos     ##更改用户的附加组(会去掉原来的附加组)

     usermod -aG 21 westos   ##添加用户的附加组

     usermod -G "" westos       ##删除用户所有附加组的身份

     usermod -c "helo" westos    ##指定用户说明文字

     usermod -d /home/lee westos   ##表示更改用户家目录的指向(更改路径)

     usermod -md /home/lee westos ##表示更改用户家目录(更改家目录和路径)

     usermod -s /bin/sh westos    ##修改用户的默认shell

     usermod -L westos        ##表示冻结用户(Lock)

     usermod -U westos        ##表示解锁用户(unlock)

  5、用户认证信息管理

    /etc/shadow       ##记录用户认证信息(一共九列,密码用暗文进行显示)

    passwd -S westos   ##也可以显示用户密码的信息

    用户名称:

      显示用户名称包括超级用户和普通用户

    用户密码:

      passwd student       ##更改密码

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

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

      usermod -L student   ##在用户密码前加入“!”

      usermod -U student   ##去掉“!”

      passwd -d student   ##对密码内容进行清空

    注意:

      root用户可以直接进行密码的修改,对密码的内容没有限制;

      普通用户则先输入之前的密码;密码不能与帐号名称相似;密码不能是纯数字或纯字母;

      不能是有序的字母和数字的组合;

      在当前用户普通用户下,直接使用passwd命令进行密码的修改

    对密码属性修改后出现的常规现象:

      usermod -s /usr/sbin/nologin westos   ##不能登陆

      usermod -s /bin/bash westos     ##调整到正常模式

      usermod -p 123 westos        ##表示密码处显示加密字符

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

      passwd -e westos          ##时间改为0,在用户登陆时,首先会要求输入之前密码,然后会强制改密码才可以登陆

      chage -d 0 westos           ##命令功能相似

    密码最短有效期:表示密码至少n天后才可以修改密码

      passwd -n 1 westos         ##一天后可以改密码

      chage -m 0 westos          ##效果和上面的一样

    密码最长有效期:表示密码最多使用n天

      passwd -x 30 westos          ##设置普通用户在30天后必须改密码

      chage - M 40 westos          ##功能同上

    密码警告期限:

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

      chage -W 1 westos          ##功能同上

    密码非活跃期限:在密码到期的后的可以活跃的天数

      passwd -i 1 westos           ##密码过期后仍可以登陆系统的两天

      chage -I 1 westos

    密码到期日:

      chage -E 2018-11-11          ##表示用户在2018-11-11会被冻结

    用户自定义位置:目前没有使用

  6、用户授权

    用户授权配置文件:/etc/sudoers

    使用vim 不能检测他的语法;使用visudo可以检测他的文件的语法正确性

    授权配置命令:visudo

    规范操作:文件100行左右

    命令授权格式:  

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

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

    EXAMPLE:(使用hostname来查看主机名)

      westos desktop.example.com=(root) /usr/sbiin/useradd       ##执行命令要密码

      westos desktop.example.com=(root) NOPASSWD: /usr/sbin/useradd ##免执行命令要密码

      su - westos

      sudo useradd hello

补充:

  当用户uid和gid为0时,则代表是超级用户

  init  3     ## 初始化的级别为3

  init  5     ## 以图形化打开

  shadow中的加密方式为sha512;一般加密分为对称加密和非对称加密

  当进程出现异常时,使用*** kill  -9  id ***命令进行清除,id为进程号

  

---恢复内容结束---

原文地址:https://www.cnblogs.com/uthnb/p/9332250.html