Linux基础知识(用户管理)

用户管理

一、用户理解

用户就是系统使用者的身份,在系统中用户存储为若干字符+若干个系统配置文件。我们可以使用whoami命令来查看当前用户身份,但我们在切换用户时不可以一直用su命令频繁切换,这样会导致之后操作中会出现报错,我们要学会用exit命令来退出用户再进行切换。

1.用户存在的意义

  1. 用户的存在使系统更加的安全
  2. 用户概念在系统中是系统安全机制的一部分(限制权限)

2.组存在的一意义

  1. 共享 (开放权限)

3.用户的查看

  1. 查看当前用户
    whoami 查看当前用户
    在这里插入图片描述
  2. 系统中用户的查看
    id 查看指定用户id信息
    id -u查看用户的uid 身份证号
    id -g 查看用户的gid 户口本(组号)初始组
    id -G 查看用户所在的所有组的id 附加组
    id -n 显示名字而不显示id数字(-n不可单独使用,要和其他参数一起搭配使用)例如:id -u -n root
    在这里插入图片描述

4.用户切换

  1. su - 用户名称
    在这里插入图片描述
    su - 中 “-” 表示在用户身份切换时同时切换当前用户的环境 当无(-)时用户身份切换时只能切换身份不能切换用户环境。
    su - 执行时高级用户切换到低级用户不需要密码,低级用户切换到高级需要密码,平级用户切换也需要密码。
    在这里插入图片描述
    注意:每次su切换到其他用户操作之后必须退出exit,然后再次切换到其他用户。

二、用户在系统中的存储方式
1. /etc/passwd 用户信息文件:
用户名称:密码:uid:gid:说明:家目录:默认shell

 (             -u   -g   -c     -d      -s                  )

密码不在/etc/passwd保存 但密码位保留用X代替和表示。
在这里插入图片描述
2. /etc/group用户组信息文件:
组的名字:组密码:组id:组成员
在这里插入图片描述
3. /etc/shadow认证信息文件:
用户:密码:最后一次密码修改该时间:最短有效期:最长有效期:警告期:非活跃期:帐号到期日
4. /etc/skel/.*
默认开启shell的配置,用户的骨文件

5. /home/username
用户的家目录
在这里插入图片描述
三、用户管理命令

  1. 用户的删除
    userdel
    userdel add 删除用户但不删除用户的配置文件
    在这里插入图片描述
    userdel -r student 删除用户并删除用户的配置文件

2 首先用监控命令监控易于实验观察:用户信息监控命令为:

watch -n 1 'tail -n 3 /etc/passwd /etc/group;ls -l /home'
  1. 建立用户
  1. useradd建立用户时,读取/etc/login.defs文件内容确定规则
    useradd -u 8888 westos 指定用户uid
    在这里插入图片描述
    在这里插入图片描述
  2. useradd -g 6666 westos 指定用户初始组id,“6666用户组必须是存在的”
    在这里插入图片描述
    在这里插入图片描述
  3. useradd -G 6666 westos 指定用户的附加组id “6666用户组必须存在”
  4. useradd -c “hello” tom 指定用户的说明
  5. useradd -d /home/lee gan指定用户的家目录
  6. useradd -s /bin/sh end 指定用户的默认shell
  7. usderadd -g 和usderadd -G 在做试验的时候必须先创建组groupadd。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  1. groupadd 建立用户组
    groupdel 删除用户组
    groupadd -g 6666建立用户组并指定用户组的id
    在这里插入图片描述
    在这里插入图片描述
  2. 更改用户信息
    更改组信息:
  1. groupmod -g 3333 off 更改组信息
    在这里插入图片描述
    在这里插入图片描述
  1. 更改用户信息
    usermod
  1. usermod -l 新名称 westos 更改用户的名称
  2. usermod -u 6666 westos 更改用户uid
    在这里插入图片描述
    在这里插入图片描述
  3. usermod -g 3333 westos 更改用户的初始组
    在这里插入图片描述
    在这里插入图片描述
  4. usermod -G 2222 westos 更改用户的附加组
    在这里插入图片描述
    在这里插入图片描述
  5. usermod -aG 8888 westos 添加用户的附加组
    在这里插入图片描述
    在这里插入图片描述
  6. usermod -G “” westos 删除用户所有附加组的身份
    在这里插入图片描述
    在这里插入图片描述
  7. usermod -c “hahahah” westos 指定用户说明文字
    在这里插入图片描述
    在这里插入图片描述
  8. usermod -d /home/lee westos 更改用户家目录的指向
    在这里插入图片描述
    在这里插入图片描述
  9. usermod -md /home/lee westos 更改用户家目录
  10. usermod -s /bin/sh westos 更改用户的shell
    在这里插入图片描述
    在这里插入图片描述
  11. usermod -L westos 冻结用户
  12. usermod -U westos 解锁用户

四、 用户认证信息

  1. /etc/shadow 记录用户认证信息
    此文件一共有九列:
    用户名称:用户密码:用户密码最后一次被更改的时间:用户密码最短有效期:用户密码最长有效期:密码警告期限:用户非活跃天数:用户到期日:用户自定义列,目前没有启用
    在这里插入图片描述
  1. 用下面命令对用户认证信息进行监控:
    watch -n 1 ‘tail -n 3 /etc/shadow;passwd -S westos’
    监 控 命 令 并 在 最 后 一 行 显 示 用 户 密 码 信 息。

  2. passwd -S tom 查看tom用户密码信息
    在这里插入图片描述

  1. 用户密码
    passwd westos 更改westos密码
    passwd -l westos 在用户密码前加入“!!”锁定用户比usermod -L冻结用户强度高
    passwd -u westos 解锁用户密码同时也可以解锁冻结的用户。
    usermod -L westos 在用户密码前加入“!”
    usermod -U westos 在密码不为空时使用
    passwd -d westos 清空westos密码
    注意:
    普通用户改密码时
    1.必须知道当前原始密码
    2.密码不能是纯数字或纯字母
    3.密码不能和帐号名称相似
    4.密码不能是有序的字母和数字的组合
    在这里插入图片描述

  2. 用户密码最后一次被更改的时间
    passwd -e westos 会改变用户最后一次更改密码时间为0.用户在登陆时会被强制更改密码
    chage -d 0 westos 两个命令功能相似

在这里插入图片描述

  1. 用户密码最短有效期
    passwd -n 1 tom tom用户在1天之内不能修改密码
    chage -m 1 tom 两个命令功能类似
    在这里插入图片描述
  2. 用户密码最长有效期
    passwd -x 30 tom 设定tom在30天内必须改密码
    chage -M 30 tom 两个命令功能类似
    在这里插入图片描述
  3. 密码警告期限
    passwd -w 2 tom密码过期前两天有警告输出
    chage -W 2 tom 两个命令功能类似
    在这里插入图片描述
  4. 用户非活跃天数
    passwd -i 1 tom密码过期后仍可登陆系统的天数为1天
    chage -I 1 tom 两个命令功能类似
    在这里插入图片描述
  5. 用户到期日
    chage -E 2018-12-12 tom tom用户在2018-12-12日会被冻结
  6. 用户自定义列,目前没有启用

五、用户授权

(1)在系统中超级用户可以下放普通用户不能执行的权力和操作给普通用户。

  1. 权力下放文件为:/etc/sudoers
    此文件可以用vim直接编辑,但是不提供语法检测
    也可以使用visudo编辑此文件,visudo命令是提供语法检测的

  2. 注意:权利下放之前我们普通用户不可以建立用户以及组,当然删除也不行。
    超级用户执行visudo进入编辑/etc/sudoers模式,找到一百行,然后编辑。

   ## Allow westos to run useradd localhost
   westos  localhost=(root)   /usr/sbin/useradd
  1. 执行visudo进入编辑文档(/etc/sudoers)100行左右填写:
    用户 主机名称=(得到的用户身份) 命令

  2. 例:
    westos localhost=(root) /usr/sbin/useradd
    westos用户可以在localhost主机以root用户身份执行useradd命令
    在这里插入图片描述
    westos localhost=(root) NOPASSSWD: /usr/sbin/useradd
    westos用户可以在localhost主机以root用户身份免密执行useradd
    在这里插入图片描述

  3. 测试
    su - westos 切换到westos用户
    sudo useradd hello 执行命令建立用户

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值