目录
前言
今天开始进行Linux系统中的用户管理,这部分将涉及用户、用户组的概念以及用户切换、用户查看等内容。
1.用户及用户组存在的意义
- 系统资源是有限的,如何合理分配系统资源?
- 在这个问题解决时必须要有资源配合
- 1.身份 account
- 2.授权 author
- 3.认证 auth
- 3A机制,3A机制组成系统中最底层的安全架构
- 2)用户组存在意义
- 用户组是一个逻辑容器,对用户进行归类和统一授权
2.用户及用户组在系统中存在的方式
- 电脑对数字敏感 id
- 人类对字符串敏感 名称
- id <-------> 名称 必须要记录到文件当中用户才能存在
- 用户就是/etc/passwd文件中的一行字符
- 用户组存在的方式就是/etc/group 文件中的一行字符
3.用户切换
1)用户查看
- *whomai ##查看当前用户
- *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
2)用户切换
- "-" #切换环境
- su - username ##切换用户环境从超级用户切换到普通用户不需要密码
- ##从普通用户切换到超级用户或者普通用户都需要密码
- ##注意:在做用户切换时当使用完毕用户身份及时退出
- #不要在一个shell中反复执行su命令
- #在一个shell中反复执行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 -n 4 /etc/passwd /etc/group;echo =======;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 dir username ##指定用户家目录
- -M username ##建立用户时不建立家目录
- -c word username ##指定用户说明
- -s shell username ##指定用shell
- userdel -r username ##用户删除 -r 删除用户的系统配置文件
- groupadd groupname ##组建立
- -g id groupname ##指定组名称
- groupdel groupname ##组删除
6.用户和用户组的信息管理
- usermod
- -l #更改用户名称
- -u #更改用户id
- -g #更改主组id
- -G #更改用户附加组身份
- -aG #添加用户附加组身份
- -c #更改用户说明
- -d #更改家目录指向
- -md #更改家目录指向同时更改家目录名称
- -s #更改默认shell
- -L #冻结账号
- -U #解锁
- groupmod
- -g ##更改用户组id
7.用户认证信息管理
- /etc/shadow 文件内容说明
- 用户名称:用户密码的加密字符:用户密码最后一次被修改时间:密码最短有效期:密码最长有效期:密码过期前警告期:
- 账号非活跃期:账号到期时间:用户自定义(未使用)
- #1.用户名称
- passwd -S guozhen ##查看密码状态
- #2.用户加密字符
- #更改密码)
- passwd guozhen##只有root可以执行 “echo 123 | passwd --stdin guozehn”
- passwd ##普通用户改密码
- #密码使用天数
- *从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这天账号会被冻结
7.用户的权力下放
在系统中普通用户时无法执行系统管理命令的如果需要普通用户执行系统管理动作那么需要root用户来进行授权
普通用户授权方式 “sudo”
作用:可以使普通用户使用指定的用户身份呢运行命令
授权方法:visudo ##此命令作用是编辑/etc/sudoers并提供语法检测