用户权限管理
用户管理命令
用户
adduser # 交互形式
useradd
finger -l yang # 显示用户相关信息
chfn # 修改用户个人信息
passwd # 更改密码
id # 显示用户UID GID
usemod # 修改用户登录信息 用户组g
sudo usermod -aG sudo yang #普通用户添加sudo
deluser --remove-all-files yang # 交互
deluser yang sudo # 从sudo组删除用户yang
userdel
su yang #切换用户
cat /etc/passwd #查看所有用户 与管道结合更方便grep
用户组
addgroup #系统用户组
groupadd
groups #显示用户对应的组
groupmod #更改用户组名称 ID
delgroup
groupdel
cat /etc/group #查看所用用户组
权限管理
chmod
chown #修改文件、目录归属用户或组
chgrp #修改文件或目录的归属组
文件预设权限 umask
文件: -rw-rw-rw- 666
目录: drwxrwxrwx 777
默认权限-umask权限就是创建文件的默认权限
umask
umask -S #查看文件预设权限
umask 022 #设定umask权限 这里是所用者没有权限 所属组和其他人没有写权限
隐藏属性
chattr 指令只能在Ext2/Ext3/Ext4 的 Linux 传统文件系统上面完整生效
其他的文件系统可能就无法完整的支持这个
指令了,例如 xfs 仅支持部份参数而已
chattr +i filename #文件不可更改
chattr +a filename #只能增加内容 不能删除和修改
lsattr filename #查看文件隐藏属性
特殊权限 SUID, SGID, SBIT
SUID不是用在目录上,而 SBIT 不是用在文件上
Set UID
s在user位置
/usr/bin/passwd 的-rwsr-xr-x 中的s
- SUID 权限仅对二进制程序(binary program)有效;
- 执行者对于该程序需要具有 x 的可执行权限;
- 本权限仅在执行该程序的过程中有效 (run-time);
执行者将具有该程序拥有者 (owner) 的权限。如果拥有者都没有执行权限 则执行者这个权限为S 空的意思
例如普通用户更改密码 调用passwd时就会暂时具有root权限,而使用cat查看密码不属于执行,所以不具有执行权限
文件具有 SUID 的特殊权限时,代表当用户执行此一 binary 程序时,在执行过程中用户会暂时具有程序拥有
者的权限
Set GID
s在group的位置
- SGID 对二进制程序有用;
- 程序执行者对于该程序来说,需具备 x 的权限;
执行者在执行的过程中将会获得该程序群组的支持!
目录具有 SGID 的特殊权限时,代表用户在这个目录底下新建的文件之群组都会与该目录的组名相同。
Sticky Bit
只针对目录有效
- 当用户对于此目录具有 w, x 权限,亦即具有写入的权限时;
当用户在该目录下建立文件或目录时,仅有自己与 root 才有权力删除该文件
例如/tmp 的权限是 drwxrwxrwt
目录具有 SBIT 的特殊权限时,代表在该目录下用户建立的文件只有自己与 root 能够删除!
特殊权限的修改
- 4 为 SUID
- 2 为 SGID
1 为 SBIT
chmod 4755 filename # 增加SUID
参考
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以邮件至 yangbenbo@whu.edu.cn
文章标题:用户权限管理
本文作者:杨本泊
发布时间:2019-09-30, 23:22:20
最后更新:2023-07-09, 07:10:12
原始链接:http://yangbenbo.github.io/2019/09/30/用户权限管理/版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。