1.用户及用户组存在的意义
1.用户存在的意义
系统资源是有限的,如何合理分配系统资源?
在这个问题解决时必须要有连个资源配合
- 身份account
- 授权author
- 认证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: Linux系统自用ID
1000-65535: 用户级ID
以上ID设定规则都被记录在/etc/ login.defs
2.用户切换
su - username
切换用户环境
username 如果root ----> commonuser 不需要后者密码
commonuser ---->comnonuser 需要密码
注意:在做用户切换时当使用完毕用户身份及时退出
不要在一个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 #解锁
期:账号到期时间:用户自定义(未使用)
#1.用户名称
passwd -s lee #查看密码状态
#2.用户加密字符
#更改密码)
passwd lee ##只有root可以执行“echo 123 | passwd --stdin lee"
passwd #普通用户改密码
changing password for user lee .
Retype new pas sword : #输入新密码《8位以上无序数字+无序字母组合)
Retype new pas sword : #重复输入
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天内不能改密码
#密码使用天数
*从1970-1-1算其到今天的时间
passwd -e lee ##修改默认使用时间为0
chage -d 0 lee ##账号必须改密码扌能登陆系统
#密码最短有效期
passwd -n l lee #lee在1天内不能改密码
chage -m 1 lee
#密码过期警告
passwd-w 2 lee ##账号过期前警告时间
chage w l lee
#认证非活跃天数
passwd -i 2 lee ##账号认证最大时间超过后还能用多久
chage -I1lee
#账号认证到期时间
chage -E "2020-05-11" ##到2020-5-11这天账号会被冻结
#未后用功能
8.用户权力下放
可以使普通用户使用指定的用户身份呢运行命今
授权方法:
visudo ##此命合作用是编辑/etc/sudoers并提供语法检测
在文件的100行左右 ##代码规范性
username hostname= (newusername ) [NOPASSWD:] /command, /command1
#lee用户在linux.wesots.com主机=(用超级用户身份) 执行useradd命今
Lee linux. westos.com=( root) / usr/ sbin/useradd
#westos用户 在linux . wesots.com 使用超户 免密 执行useradd和userdel
westos linux.wesots.com = (root) NOPASSwWD : /usr/sbin/ useradd,/usr/ sbin/userdel
测试:
su – lee
sudo useradd westostest ##在lee第一次使用sudo命合时需要输入lee密码
exit #退出lee
su – westos
sudo userdel -r westostest #westos可以免密执行userdel命今
9.权限查看及读取
#1 .权限查看#
ls -l file ##查看文件权限
ls -ld dir ##查看目录权限
#2.权限的读取
“文件的属性被叫做文件的元数据(meta data)"
“一种元数据用1个byte来记录内容"
#文件权限信息#
- l rw-r--r-- l . l 1 l root | root | 0 | Apr 12 10:57 | westos
[1] [2] [3] [4] [5] [ 6] [7] [8] [9]
#目录权限信息#
d l rw-r--r-- l . l 1 l root | root | 0 | Apr 12 10:57 | westosdir
[1] [2] [3] [4] [5] [ 6] [7] [8] [9]
#对于每一位的解释#
[1] #文件类型
# - 普通文件
#d目录
#l软连接
#b快设备
#c字符设备
#s socket套接字
#p管道 |
[2] #用户权限
#rw- | r-- lr--
# u g o
[3] ##系统的selinux开后
[4] #对于文件:文件内容被系统记录的次数(硬链接个数)
#对于目录:目录中子目录的个数
[5] #文件拥有者
[6] #文件拥有组
[7] #对于文件:文件内容大小
#对于目录:目录中子文件的元数据大小
[8] #文件内容被修改的时间
[9] #文件名称
10.普通权限的类型及作用
#1.用户对文件的身份#
u: #user文件的拥有者,ls -l看到的第五列信息
g: #group文件拥有组,ls -l看到的第六列信息
chmod #设定文件权限
#chmod复制权限#
chmod --reference=/tmp/mnt/westosdir #复制/tmp目条的权限到/mnt / westosdir上
chmod -R-reference=/ tnp /mnt/westosdir #复制/tmp目录的权限到/mnt/westosdir及
#目录中的子文件上-R代表第归操作
#chmod宇符方式设定权限
chmod <alulgl0<+l-| =><r |w|x> file #用字副方式设定文件权限
示例:
chmodu-rw /mnt /westos1
chmodu-rw /mnt/westosfilel
chmodu-rw,g+x,o+wx / mnt/westosfile2
chmoda-rwx/mnt/westosfile3
chmodu=rwx,g=rx,o=--- / mnt/westosfile4
chmod-R u=rwx,g=rx,o=--- / mnt/westosdir/
#chmod数字方式设定权限#
权限波尔指表示方式
rwx =111
--- = 000
三位二进制可以表示的最大范围为8进至数
rwx=111=7
rw-=110=6
r-x=101=5
r--=100=4=r
ac1列表开后标识
- rws -rwe- --- 1 root caiwu a Apr 18 o9:03 westosfile
没有”+"代表ac1列表未开后
- rw-rw--- -+ l root caiwru Apr 18 e9:03 westosfile
acl列表功能开后
#acl列表权阻读取
getfacl westosfile
显示内容分析
# file: wes tosfile #文件名称
#owner : root #文件拥有者
#group : root #文件拥有组
user: :rw- #文件拥有者权限
user:lee:rw- #特殊指定用户权限
group::r-- #文件拥有组权限
group:westos:--- #特强指定的用户组的权限
mask::rw- #能够赋予特殊用户和特殊用户组的最大权限岗值,,
other::r-- #其他人的权限
注意:
当文件权限列表开后.不要用ls -l的方式来读取文件的权限
ac1列表的控制
setfacl -m: lee:rw westosfile #设定
setfacl -m g:westos:rw westosfile
setfacl -m u: rwx westosfile
setfacl -m g::0 westosfile .
setfacl -x u:lee westosfile . 删除列表中的lee
setfacl -b westosfile #关闭
acl列表的默认权限
setfacl -m u:lee:rwx /mt/westosdir #只对于/mnt/westosdir目录本身生效
setfacl -Rm u:lee: rwx /mnt /westosdir #对于/mnt/westosdir日录和目录中已经存在的内容生效
以上的命令之针对与存在的文件生效,新建文件是不会被设定的