用户管理

用户管理

1.前言

1.用户存在的意义

安全
用户概念在系统中是系统安全机制的一部分

2.组存在的意义

共享 开放权力,同一个组的用户共享部分权力

 

2.用户的查看

1)whoami                  ---查看当前用户
2) id                           ---查看指定用户id信息
       id
                 -u                 ---查看用户的uid
                 -g                 --- 查看用户的gid
                 -G                ---查看用户所在的所有组的id
                 -n                 ---显示名字而不显示id数字

查看root用户的id信息,其中u参数需要与其他参数一起使用,不然会报错,如上图。
 

3.用户切换

 su - 用户名称

例子:

su - student             ---切换到student用户
su - 中 “-” 标示在用户身份切换时同时切换当前用户的环境

!   su -   执行时高级用户切换到低级用户不需要密码,低级用户切换到高级需要,平级用户切换切换也需要
    

先由root用户切换到student用户,不需要密码

再由student用户切换到root用户,需要输入root的密码

注意:每次su切换到其他用户操作之后必须退出,然后再次切换到其他用户

由于没有在切换用户后退出用户登陆,在关闭shell时会有隐藏的问题,

此时不能直接关闭shell,需要进行两次exit操作


 

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

1)/etc/passwd
    用户信息文件
    用户名称:密码:uid:gid:说明:家目录:默认shell

2)/etc/group
    用户组信息文件
    组的名字:组密码:组id:组成员


3)/etc/shadows
    认证信息文件

4)/etc/skel/.*
    默认开启shell的配置,用户的骨文件

5)/home/username
    用户的家目录
    


 6.用户管理命令

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

2)用户建立
用户信息监控命令
    watch -n 1 'tail -n 3 /etc/passwd /etc/group;ls -l /home'

 

useradd                                     ---建立用户的,建立用户时,读取/etc/login.defs 文件内容确定规则

useradd -u 8888 westos          ---指定用户uid,默认从1000开始
useradd -g 21    westos           ---指定用户初始组id,"21用户组必须是存在的",实验时可先建立组,再建立用户指定用户初始组
useradd -G 21    westos           ---指定用户的附加组id “21用户组必须存在”
useradd -c "hello" westos        ---指定用户的说明
useradd -d /home/lee westos  ---指定用户的家目录
useradd -s /bin/sh westos        ---指定用户的默认shell

groupadd                                  ---建立用户组
groupadd -g 888                      ---建立用户组并指定用户组的id
groupdel                                    ---删除用户组

使用用户信息监控命令,每秒刷新一次,显示passwd文件的最后三行

和group文件的最后三行

以及home/目录下用户具体信息

再重新打开一个shell进行实验操作

1.新建用户westos,由于建立用户时,读取/etc/login.defs 文件内容确定规则,所以新建的用户uid与gid及其他信息默认规则所定,uid从1000开始。

2.删除用户westos及其配置,若没有使用参数-r,则会在home目录下遗留配置文件

3.指定新建用户westos的uid为8888

4.新建用户组group1,指定用户组id为888,若不指定的话,默认从1001开始,

新建用户westos,指定他的gid为888,在group文件中没有显示出最新更新,因为他已经在888的组中,不会出现新的组信息

新建用户linux,指定他为组id为21的组的附加用户。

5.新建用户,指定用户的说明是指在登陆界面时所见的用户名

6.指定用户的家目录是指在登陆后所在目录位置

 

 

3)更改用户信息
usermod
usermod -l 新名称    westos                  ---更改用户的名称
usermod -u 6666        westos                ---更改用户uid
usermod -g 21        westos                    ---更改用户的初始组
usermod -G 21        westos                   ---更改用户的附加组
usermod -aG 72        westos                 ---添加用户的附加组
usermod -G ""        westos                     ---删除用户所有附加组的身份
usermod -c "hahahah"    westos           ---指定用户说明文字
usermod -d /home/lee    westos            ---更改用户家目录的指向
usermod -md /home/lee    westos         ---更改用户家目录
usermod -s /bin/sh    westos                  ---更改用户的shell
usermod -L         westos                         ---冻结用户
usermod -U        westos                          ---解锁用户

1.更改用户家目录指向

更改用户家目录

两图结果对比,更改家目录指向只是暂时更改,在home目录下的文件中并没有被修改

而更改用户家目录可直接更改home目录下的文件

2.冻结用户与用户解冻

冻结student用户后,重新载入登陆界面,student用户选项消失

进入root用户进行解冻,重新载入登陆界面,student用户选项出现

 

 

7.用户认证信息

/etc/shadow                    ---记录用户认证信息
此文件一共有九列:
用户名称:用户密码:用户密码最后一次被更改的时间:用户密码最短有效期:用户密码最长有效期:
密码警告期限:用户非活跃天数:用户到期日:用户自定义列,目前没有启用

passwd -S westos    ---查看westos用户密码信息

westos用户名称为westos,用户密码冻结,用户密码最后一次被修改时间时10-07,用户密码最短有效期为0,最长有效期为99999,密码警告期限7天,非活跃天数为-1.
1)用户名称
2)用户密码
    passwd         westos       ---更改westos密码
    passwd  -l     westos       ---在用户密码前加入“!!”
    passwd  -u     westos    
    usermod -L     westos     ---在用户密码前加入“!”
    usermod -U     westos     ---在密码不为空时使用
    passwd  -d     westos      ---清空westos密码
注意:
    普通用户改密码时
    1.必须知道当前永久原始密码
    2.密码不能和帐号名称相似
    3.密码不能是纯数字或纯字母
    4.密码不能是有序的字母和数字的组合

 

使用watch -n 1 tail -n 3 /etc/shadow 来监测用户认证信息

1.passwd -u westos   将westos密码!!去掉

2.使用usermod -L 给密码加上!,使用-U 去掉!失败,因为usermod -U 只能在密码不为空时使用

若密码不为空,且密码前!!,则可连续使用两次-U操作,去掉!!。

3.使用passwd westos可修改westos密码,

超级用户环境下不需要输入原始密码,且密码修改格式不限制,可强行修改

普通用户只能修改自己的密码,且需要输入原始密码

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

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

4)用户密码最短有效期
    passwd -n 1 westos    ---westos用户在1天之内不能修改密码
    chage -m 1 westos        

用户密码最短有效期

root用户下设置westos密码为westos,将最短有效期修改为1,

切换到westos用户下,修改密码,被系统告知需要等待一段时间才能修改密码

5)用户密码最长有效期
    passwd -x 30    westos    ---设定westos在30天内必须改密码
    chage -M 40    westos
6)密码警告期限
    passwd -w 2    westos    ---密码过期前两天有警告输出
    chage -W 2    westos
7)用户非活跃天数
    passwd -i 1    westos    ---密码过期后仍可登陆系统的天数
    chage -I 1    westos
8)用户到期日
    chage -E  2018-11-11 westos    ---westos用户在2018-11-11日会被冻结
9)用户自定义列,目前没有启用

将westos密码最后一次修改时间修改为0,则重新登陆用户westos时,输入一次密码后,系统要求重新设置一次新密码

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值