文章目录

一、系统中用户及用户组的管理

1、理解系统中的用户及用户组
2、查看用户
3、用户在系统的存储文件
4、用户的管理
  4.1 用户的建立
  4.2 用户的删除
5、用户组的管理
6、用户信息的更改
7、用户认证信息
8、用户授权

一、系统中用户及用户组的管理

1、理解系统中的用户及用户组

  • 用户: Linux系统最底层的安全设备,属于权限问题,系统要回收权力, 系统用户即系统的使用者,对用户管理就是对文件的管理。
  • 用户组: 用户组是用户的延伸,组的存在是为了共享用户的权力,组和用户是两个不同的机制。组分为初始组和附加组。

2、查看用户

whoami | 查看当前正在使用的用户

linux系统中的用户管理                linux系统中的用户管理

id 用户名 | 查看系统中指定用户的id

命令 含义
id - u 查看用户的uid(自己的身份证号)
id - g 查看用户的gid(用户所属初始组id)
id - G 查看用户的附加组
id - n 显示用户的名字

linux系统中的用户管理               linux系统中的用户管理

3、用户在系统的存储文件

文件 含义 包含内容
/ etc / passwd 用户信息文件 用户名称:用户密码:uid:gid:说明:家目录:默认shell
/ etc / group 用户组信息文件 组的名字:组的密码:组的id:组的成员
/ etc / shadows 用户认证信息文件 用户名称:密码(sha512非对称加密)
/ home / username 用户家目录 (用户建立所属目录)
/etc/sudoers 权力下放文件

4、用户的管理

命令 含义
useradd 用户名 创建用户
useradd -u 111 用户名 创建用户的同时指定用户uid
useradd -g 21 用户名 创建用户且指定用户初始组id,“21用户组必须是存在的”
useradd -G 21 用户名 创建用户且指定用户附加组id,“21用户组必须是存在的”
useradd -c “hello” 用户名 创建用户且指定用户说明为“hello”
useradd -d /home/lee 用户名 创建用户且指定用户家目录为/home/lee
useradd -s /bin/sh 用户名 创建用户且指定用户的默认shell

(1)用户信息监控命令

watch -n date  | 时间的一秒间隔监控(Ctrl +c 退出)
watch -n 1 “tail -n 3 /etc/passwd /etc/group; ls -l /home/”   |  ';'表示进行下一条命令
/etc/login.defs  | 查看系统中用户可用编号范围和其他的范围

(2)useradd xixixi 建立用户xixixi
linux系统中的用户管理
(3)useradd -u 888 wangyuran 创建用户的同时指定用户uid为888
linux系统中的用户管理
(4)useradd -g 21 haha 创建用户haha且指定用户haha初始组id为21
(5)useradd -G 21 HUHU 创建用户HUHU且指定用户HUHU附加组id为21
(6)useradd -c “xinzhenglong” xin 创建用户且指定用户说明为“xinzhenglong”
linux系统中的用户管理
(7)useradd -d /home/lee xinlv 创建用户xinlv且指定用户家目录为/home/lee
(8)useradd -s /bin/sh wang 创建用户wang且指定用户wang的默认shell为/bin/sh
linux系统中的用户管理   linux系统中的用户管理

  • 注意: 建立用户的同时会建立其配置文件,即用户的组信息和用户的家目录;建立用户时除了密码不能指定外,其他用户信息均可以指定;

4.2 用户的删除

命令 含义
userdel 用户名 删除用户但不删除配置文件
userdel -r 用户名 删除用户及其配置文件

(1)userdel wcc 删除用户wcc但不删除配置文件
linux系统中的用户管理  linux系统中的用户管理
(2)userdel -r wcc 删除用户wcc且删除配置文件
linux系统中的用户管理linux系统中的用户管理

  • 注意: 删除一个用户的时候必须 - r ,否则它的配置文件还存在,就不能重新建立; 用户也不能重复建立,一定要先删除再建立; 当只剩下家目录的时侯,家目录是一个文件,用 rm 删除家目录文件即可。

5、用户组的管理

命令 含义
groupadd 用户组名 创建用户组
groupadd -g 111 用户组名 创建用户组的同时指定用户组id
groupdel 用户组名 删除用户组

(1)groupadd -g 678 hhhhhhh创建用户组的同时指定用户组id:
linux系统中的用户管理linux系统中的用户管理

  • 注意:用户组不能重复建立,一定要先删除再建立;建立用户组的同时也会建立它的家目录,同样删除用户组的同时也会删除它的家目录(这一点与用户的管理不一样)

6、用户信息的更改

命令 含义
usermod -l 新用户名 原用户名 更改用户名称
usermod -u 6666 用户名 更改用户uid
usermod -g 21 用户名 更改用户初始组信息
usermod -G 21 用户名 更改用户附加组信息
usermod -aG 72用户名 添加用户的附加组
usermod -G “” 用户名 删除所有附加组信息
usermod -c “hello” 用户名 更改用户说明为“hello”
usermod -d /home/lee 用户名 更改用户家目录的指向
usermod -md /home/lee 用户名 更改用户家目录的指向和家目录的名字
usermod -s /bin/sh 用户名 更改用户的默认shell
usermod -L 用户名 冻结用户
usermod -U 用户名 解锁用户
  • 注意:使用-G时,如果已有附加组,则会代替;如不想代替,想让两个都存在的话,使用-aG

(1)usermod -l ranran wang更改用户wang的名称为ranran
linux系统中的用户管理linux系统中的用户管理
(2)usermod -u 6666 ranran修改用户的uid为6666
linux系统中的用户管理linux系统中的用户管理
(3)usermod -g 72 ranran 更改用户的初始组
(4)usermod -G 72 ranran 更改用户的附加组
(5)usermod -aG 21 ranran 添加用户的初始组
(6)usermod -G “” ranran 清除用户的组信息
linux系统中的用户管理linux系统中的用户管理

  • pkill -9 -u westos 由于westos 还有进程运行时对westos用户无法操作,用此命令关掉运行状态

用户的切换:
     gnome-session-quit --force ##注销当前用户
     su - 用户名称
     su - westos ##转到westos 用户
     记着切换用户先用exit退出本用户
注:su westos 不会加载系统配置文件
  su - westos 会加载系统配置文件
  /etc/bashrc ##shell配置文件
  /etc/profile ##系统配置文件

7、用户认证信息

例 :westos : !! : 17895 : 0 : 99999 : 7 : : :
 【1】 : 【2】 : 【3】 : 【4】 : 【5】 : 【6】 :【7】 :【8】 :【9】 共有9列,位于/etc/shadow

含义
第一列 用户名称
第二列 用户密码的加密字符串,默认用sha512对称加密,如果加密字符串前出现“!”,则该用户帐号被冻结
第三列 用户密码最后一次被修改的时间,此时间的计算是从1970-1-1日起累计的总时间天数
第四列 用户密码最短有效期限,用户在这个数字天数之内不能修改密码
第五列 用户密码最长有效期限,用户必须在此有效期内更新密码,如果超时会被冻结
第六列 密码警告期限,在过期前指定天数内会发送警告信息给用户
第七列 用户的非活跃天数(过期后),此位默认为空,如果设定数值,那么在密码最长有效期过后仍可以使用此用户的天数
第八列 用户到期日,默认为空,表示帐号一定会被冻结的时间点,此时间计算是从1970-1-1开始计算的累计天数
第九列 用户自定义列,目前没有启用

linux系统中的用户管理              linux系统中的用户管理

7.1 用户密码

命令 含义
passwd 用户名 更改用户密码
passwd -l 用户名 锁定,在用户密码前加“!”
passwd -u 用户名 解锁
passwd -d 用户名 清空用户密码
  • 注意:普通用户更改密码时,必须知道当前用户原始密码,密码不能和帐号名称相似,不能是纯数字或纯字母,不能是有序的字母和数字的组合。

(1)passwd 用户名 更改用户密码
linux系统中的用户管理
(2)passwd -l 用户名 在密码前加两个!!,锁定
linux系统中的用户管理    linux系统中的用户管理
(3)passwd -d 用户名 清除用户密码
linux系统中的用户管理    linux系统中的用户管理

7.2 shadow中的信息改变认证

passwd -S westos 查看密码状态
passwd -n 1 westos 最短有效期,用户在一天内不能该密码
chage -m 1 westos 同上
passwd -x 30 westos 最长有效期,westos在30天内必须该密码
chage -M 40 westos 同上
passwd -w 2 westos 提醒期,密码过期前两天有警告输出
chage -W 2 westos 同上
passwd -i 1 活跃期,密码过期后仍可用的天数
chage -I 1 同上
passwd -d 删除密码
chage -E “2019-11-11” westos用户在2019-11-11会被冻结
用户密码最后一次被更改的时间:
passwd -e westos 会改变用户最后一次改变密码的时间为0,用户登陆时会强制该密码
chage -d 0 westos 两个命令功能相似

(1)用passwd命令
linux系统中的用户管理         linux系统中的用户管理
(2)用change命令
linux系统中的用户管理       linux系统中的用户管理

八、用户授权

  • 用户授权;一般情况下普通用户是不能新建用户或者用户组,只有超级用户有这个权力,现在想让普通用户使用超级用户的权力来建立用户或者用户组,此时需要把超级用户的权力给普通用户。
  • 操作过程:
       1.先建立一个普通用户 useradd cccw
       2.su - cccw 切换到普通用户
       3.用普通用户创建新用户,不可行,则下方权力
       4.打开一个文件 visudo (/etc/sudoers)
     linux系统中的用户管理         linux系统中的用户管理
       5.更改文件的100行左右写要操作的东西
        内容为:用户 主机名字 =(得到的身份) NOPASSWD: 要执行的命令
        例:内容为:tom hostname =(root) NOPASSWD: /usr/sbin/useradd
        linux系统中的用户管理linux系统中的用户管理
        6.测试权力是否下放成功 用sudo
    linux系统中的用户管理       linux系统中的用户管理

相关文章: