Linux教程

unit4-Linux系统中的用户管理

本文主要是介绍unit4-Linux系统中的用户管理,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1.用户及用户组存在的意义

1)用户存在的意义
系统资源是有限的,如何合理分配系统资源?
在这个问题解决时必须要有连个资源配合
1.身份 account
2.授权 author
3.认证 auth

3A机制,3A机制组成系统中最底层的安全架构

2)用户组存在意义
用户组是一个逻辑容器
对用户进行归类和统一授权

2.用户组在系统中的存在方式

电脑对数字敏感      id
人类对字符串敏感    名称

id<---->名称   必须要记录到文件当中用户才能存在
用户就是/etc/passwd文件中的一行字符
用户组存在的方式就是/etc/group 文件中的一行字符

3.用户切换

1)用户查看
*whoami            ##查看当前用户
*id                ##查看当前用户id信息
         -u        ##查看用户的用户id
         -g        ##查看用户主组id
         -G        ##查看用户所有的组的id
         -n        ##显示名称

[root@westoslinux ~]# whoami
root
[root@westoslinux ~]# id
uid=0(root) gid=0(root) groups=0(root) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
[root@westoslinux ~]# id -u
0
[root@westoslinux ~]# id -g
0
[root@westoslinux ~]# id -G

用户id范围
0-65535
0:           ##LINUX超级用户ID
1-999:       #Linux系统自用ID
1000-65535:  ##用户级ID
             ##以上ID设定规则都被记录在/etc/login.defs

2)用户切换
su - username
   -              #切换用户环境
username          ##如果root---->commonuser   不需要后者密码
                  ##root---->commonuser   不需要密码
                  ##commonuser---->root   需要密码
                  #
                  ##注意:在做用户切换时当使用完毕用户身份及时退出
                  ##不要在一个shell中反复执行su命令
                  ##在一个shell中反复执行su命令会导致环境错乱

[root@westoslinux ~]# su - westos
Last login: Mon Jul 19 22:53:37 CST 2021 on pts/1
[westos@westoslinux ~]$ exit
logout
[root@westoslinux ~]# exit
logout
[root@westoslinux Desktop]# exit
logout
Connection to 172.25.254.33 closed.
[westos@localhost Desktop]$ su - root
Password: 

su - 和su命令的区别:
su - 切换用户,切换用户环境
su   切换用户

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

/etc/passwd                ##用户身份信息文件
                           #用户名称:用户密码:用户id:用户主组id:用户说明:用户家目录:用户默认shell

/etc/group                 ##组身份信息文件
                           #组名称:组密码:组id:组的附加成员

/etc/skel/.*               ##用户环境配置文件模板

/etc/shadow                ##用户认证信息文件

/home/username             ##用户家目录

/var/spool/mail/username   ##用户邮箱文件

5.用户和用户组的建立及删除

监控用户建立的命令
watch -n 1 "tail /etc/passwd /etc/group;ls -l /home"

[root@localhost ~]# watch -n 1 "tail /etc/passwd /etc/group;ls -l /home"

监控界面

useradd           username      ##用户建立
        -u id     username      ##uid         2**16=0-65535
                                ##0            表示超级用户
                                ##1-200        系统预留id
                                ##201-999      系统用户
                                ##1000-60000   用户级用户
                                ##/etc/login.defs          记录用户建立的默认规则

        -g id    username       ##主组id
        -G id    username       ##附加组id
        -d id    username       ##指定用户家目录
        -M       username       ##建立用户时不建立家目录
        -c word  username       ##指定用户说明
        -s shell username       ##指定用shell

[root@westoslinux ~]# userdel -r jwenh
[root@westoslinux ~]# useradd jwenh
[root@westoslinux ~]# useradd -g 978 jwenh1
[root@westoslinux ~]# useradd -G 978 jwenh2
[root@westoslinux ~]# useradd -G 975 jwenh2
useradd: user 'jwenh2' already exists
[root@westoslinux ~]# id -G jwenh2
1003 978
[root@westoslinux ~]# id -g jwenh2
1003

监控信息

 userdel    -r     username      ##用户删除 -日删除用户的系统配置文件

未删除用户jwenh的系统配置文件

 删除用户jwenh2及其配置文件

 

groupadd          groupname      ##组建立
         -g id    groupname      ##指定组名称

 


groupdel          groupname      ##组删除
groupdel          groupadd

6.用户和用户组的信息管理

usermod
          -l             #更改用户名称
          -u             #更改用户id
          -g             #更改主组id
          -G             #更改用户附加组身份
          -aG            #添加用户附加组身份
          -c             #更改用户说明
          -d             #更改家目录指向
          -md            #更改家目录指向同时更改家目录名称
          -s             #更改默认shell
          -L             #冻结账号
          -U             #解锁

[root@westoslinux ~]# usermod -l haha jwenh1
[root@westoslinux ~]# usermod -u 1001  haha
[root@westoslinux ~]# usermod -u 2341  haha
[root@westoslinux ~]# usermod -g 2009  haha
[root@westoslinux ~]# usermod -G 2009  haha
[root@westoslinux ~]# usermod -aG 70,21,72  haha

监控界面

 

groupmod  -g             ##更改用户组id

7.用户认证信息管理

#/etc/shadow  文件内容说明

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

#1.用户名称
passwd  -S  lee      ##查看密码状态

[root@westoslinux ~]# passwd -S haha
haha LK 2021-07-19 0 99999 7 -1 (Password locked.)

#2.用户加密字符
#更改密码)`
passwd lee           ##只有root可以执行:echo 123 | passwd --stdin lee"      
passwd               ##普通用户改密码
Changing password for user lee.
Current password:    #输入原始密码
New password:        ##输入新密码(8位以上无序数字+无序字母组合)
Retype new password: ##重复输入
passwd: all authentication tokens updated successfully.

#冻结认证)
passwd -l lee        ##冻结账号认证
passwd -u lee        ##解锁账号认证

#密码删除)
passwd -d lee

#密码使用天数
*从1970-1-1算其到今天的时间

passwd -e lee        ##修改默认使用时间为0
chage -d 0 lee       ##账号必须改密码才能登陆系统

#密码最短有效期
passwd -n 1 lee      ##lee在1天内不能改密码
chage -m 1 lee

#密码最长有效期
passwd -x 40 lee     ##40天内lee用户必须更新密码否则会被冻结
chage -M 30 lee

#密码过期警告
passwd -w 2 lee      ##账号过期前警告时间
chage -W 1 lee

#认证非活跃天数
passwd -i 2 lee      ##账号认证最大时间超过后还能用多久
chage -I 1 lee

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

#未启用功能

这篇关于unit4-Linux系统中的用户管理的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!