Linux下的用户管理

本文详细介绍了Linux系统中用户和用户组的概念及其重要性。用户是系统安全的基础,用户组则方便批量授权。文章讲解了如何查看和切换用户,以及涉及的相关系统配置文件如/etc/passwd和/etc/group。还涵盖了用户和用户组的创建与删除,以及用户认证信息的管理,包括/etc/shadow文件的内容和密码状态的修改。最后提到了sudo命令用于普通用户权限的下放。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

用户及用户组

用户存在的意义

系统底层安全的三A机制,只有有用户身份才能对用户身份进行资源分配和授权,这样才能确保系统资源得到合理分配从而保持系统稳定

用户组意义

是一个逻辑容器,不能直接被使用,意义是方便我们对一类用户进行归类并统一授权
查看用户 id命令
查看指定用户的id,相当于人的身份证号
u g(主组) G(属组) n
在这里插入图片描述

用户切换

用户查看

  • whoami显示当前用户
    在这里插入图片描述

  • id 查看用户id信息
    在这里插入图片描述

  • -u 查看用户的用户id
    在这里插入图片描述

  • -g 查看用户主组id
    在这里插入图片描述

  • -G 查看用户所有的组的id
    在这里插入图片描述

  • -n 显示名称
    在这里插入图片描述

用户id范围: 0-65535
0: Linux超级用户ID
1-999: Liunx系统自用ID
1000-65535: 用户级ID

!!! 以上ID设定规则都被记录在/etc/login.defs

用户切换

su - username

切换用户环境

  • username 如果root ----> commonuser 不需要后者密码
  • commonuser ----> root 需要密码
  • commonuser ----> commonuser 需要密码
    注意:在做用户切换时当使用完毕用户身份及时退出
    不要在一个shell中反复执行su命令
    在一个shell中反复执行su命令会导致环境错乱
  • su切换用户(只有当前的shell中用户身份得到切换)
    su - westos
  • – 的作用是切换用户时切换当前用户所在系统的环境
    在这里插入图片描述

用户涉及到的系统配置文件

  • /etc/passwd用户身份信息文件
    用户名称:用户密码:用户id:用户主组id:用户说明:用户家目录:用户默认shell
  • /etc/group 组身份信息文件
    组名称:组密码:组id:组的附加成员
  • /etc/skel/.* 用户环境配置文件模板
  • /etc/shadow 用户认证信息文件
  • /home/username 用户家目录
  • /var/spool/mail/username 用户邮箱文件

用户和用户组建立及删除

  • 监控用户建立的命令
    watch -n 1 “tail -n 4 /etc/passwd /etc/group;echo =======;ls -l /home”

useradd username ##用户建立
-u id username

  • 0 表示超级用户
    1-200 系统预留id
    201-999 系统用户
    1000-60000 用户级用户
  • /etc/login.defs 记录用户建立的默认规则
  • -g id username ##主组i
  • -G id username ##附加组id
  • -d dir username ##指定用户家目录
  • -M username ##建立用户时不建立家目录
  • -c word username ##指定用户说明
  • -s shell username ##指定用shell
  • userdel -r username ##用户删除 -r 删除用户的系统配置文件
  • groupadd groupname ##组建立
  • -g id groupname ##指定组名称
  • groupdel groupname ##组删除

usermod:当用户存在时,改变用户信息

  • l 改变用户名称
  • u 改变用户id
  • g 改变主组id
  • G 改变附加组id
  • aG 追加附加组
  • d 改变家目录指向
  • md 改变家目录指向的同时改变家目录名称
  • c 改变用户说明
  • s 改变默认shell

在这里插入图片描述

在这里插入图片描述

用户认证信息

  • /etc/shadow 文件内容说明

  • 用户名称:用户密码的加密字符:用户密码最后一次被修改时间:密码最短有效期:密码最长有效期:密码过期前警告期:账号非活跃期:账号到期时间:用户自定义(未使用)

  • 查看密码状态
    在这里插入图片描述

  • l 冻结账号
    在这里插入图片描述

  • u解冻
    在这里插入图片描述

  • e最后一次修改密码的时间改为0
    这样,用户在登录系统时会被强制修改密码
    chage -d 0 lee
    在这里插入图片描述

  • n修改最短有效期
    chage -m 1 lee
    在这里插入图片描述

  • x修改最长有效期
    chage -M 30 lee
    在这里插入图片描述

  • w密码过期警告
    chage -W 1 lee
    在这里插入图片描述

  • i 账号非活跃期
    chage -I 1 lee
    在这里插入图片描述

  • 账号认证到期时间
    chage -E “2020-05-11” ##到2020-5-11这天账号会被冻结

用户权力下放

  • sudo
    普通用户想要创建用户,他本身是没有这个权限的,但是通过root用户权力下放,我们可以通过sudo命令来实现。在这里插入图片描述
  • 怎样实现
    vim不提供语法检测
    在这里插入图片描述visudo提供语法检测
    在这里插入图片描述
    在文件的100行左右 注意代码规范性
    username hostname=(newusername) [NOPASSWD:] /command, /command1
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述需要密码
    在这里插入图片描述
    免密
    在这里插入图片描述
    在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值