1.基本权限与归属
1)基本权限
读取:允许查看内容-read r
写入:允许修改内容-write w
可执行:允许运行和切换-excute x
对于文本文件:
r读取权限:cat、less、grep、head、tail
w写入权限:vim、> 、 >>
x可执行权限:Shell与Python
对于目录:
r读取权限:ls命令查看目录内容
w写入权限:能够创建、删除、修改等目录的内容
x 执行权限:能够cd切换到此目录下(进入此目录)
2)归属关系
所有者(属主):拥有此文件/目录的用户-user u
所属组(属组):拥有此文件/目录的组-group g
其他人:除所有者、所属组以外的用户-other o
执行 ls -l或者ls -ld 命令查看
以-开头:文本文件 例子:-rwxr-xr-x
以d开头:目录 例子:drwxr-xr-x
以l开头:快捷方式 例子:lrwxr-xr-x
3)Linux中判断用户具备的权限:
1.首先查看该用户或者组是否有ACL策略
2.查看用户,对于该数据所处的身份,顺序所有者>所属组>其他人,原则是匹配即停止
3.查看相应身份的权限位
2.修改数据的权限chmod
chmod u-w /nsd10 #所有者去掉w权限
chmod u+w /nsd10 #所有者加上w权限
chmod g+w /nsd10 #所属组加上w权限
chmod g=r /nsd10 #所属组重新定义只有r权限
chmod a=rwx /nsd10 #a表示所有人
chmod u=---,g=rx,o=rwx /nsd10
mkdir -p /opt/aa/bb/cc
chmod -R o=--- /opt/aa # -R:递归修改权限
3.chown修改归属关系
–chown 属主 文件...
–chown 属主:属组 文件...
–chown :属组 文件...
groupadd tmooc #创建组tmooc
useradd lisi #创建用户lisi
chown lisi:tmooc /nsd15 #修改所有者与所属组
chown zhangsan /nsd15 #仅修改所有者
chown :root /nsd15 #仅修改所属组
4.ACL策略管理
文档归属的局限性:
–任何人只属于三种角色:属主、属组、其他人
–针对特殊的人实现更精细的控制
acl访问策略作用:
–能够对个别用户、个别组设置独立的权限
setfacl -m u:dc:rx /nsd19 #单独赋予dc用户rx权限
getfacl /nsd19 #查看ACL策略
setfacl -x u:zhangsan /nsd22 #删除指定用户ACL
setfacl -b /nsd22 #清除目录所有ACL策略
setfacl -m u:lisi:--- /home/public
#ACL策略-黑名单的使用(单独拒绝某些用户)
setfacl -Rm u:dc:rwx /opt/aa #-R:递归设置ACL策略
三种特殊权限(Sticky Bit ,SGID, SUID)
1) 粘滞位,Sticky Bit 权限
–占用其他人(Other)的 x 位
–显示为 t 或 T,取决于其他人是否有 x 权限
–适用于目录,用来限制用户滥用写入权
–在设置了t权限的目录下,即使用户有写入权限,也不能删除或改名其他用户文档
chmod o+t /nsd26#赋予粘滞位特殊权限
drwxr-xr-t. 2 root root 6 6月 22 15:16 /nsd26
2)Set GID权限(SGID权限
–占用属组(Group)的 x 位
–显示为 s 或 S,取决于属组是否有 x 权限
–对目录有效
–在一个具有SGID权限的目录下,新建的文档会自动继承父目录的属组身份
chmod g+s /nsd28 #赋予SGID特殊权限
drwxr-sr-x. 2 root root 6 6月 22 15:18 /nsd28
3)附加权限Set UID(SUID)权限
–占用属主(User)的 x 位
–显示为 s 或 S,取决于属主是否有 x 权限
–仅对可执行的程序有意义
–当其他用户执行带SUID标记的程序时,具有此程序属主的身份和相应权限
chmod u+s /opt/hahadir #赋予SUID特殊权限
drwsr-xr-x. 2 root root 6 6月 22 15:22 /opt/hahadir
6.权限利用扩展
1)权限利用数字的方式表示
基本权限:
利用数字4表示读取权限(r)
利用数字2表示写入权限(w)
利用数字1表示执行权限(x)
附加权限:
利用数字4表示suid
利用数字2表示sgid
利用数字1表示t
chmod 3755 /nsd30 #附加权限写在第一位,基本权限写在后边
2)文件/目录的默认权限
– 新建文件/目录的默认权限
– 一般文件默认均不给 x 执行权限
– 其他取决于 umask(权限掩码) 设置
– 新建目录默认权限为755
– 新建文件默认权限为644
案例:实现natasha用户新建数据,目录权限为700文件为600
vim /home/natasha/.bashrc #修改家目录配置文件
umask 077 #新增配置,指定权限掩码值
umask #查看权限掩码
3)手动建立家目录
/etc/skel是新建用户时,会以此目录作为模板建立用户家目录
]# useradd harry
]# rm -rf /home/harry
]# cp -r /etc/skel /home/harry
]# chown -R harry:harry /home/harry
4)常见故障:递归设置权限错误补救
chmod -R 000 /nsd26 #设置nsd26目录所有权限为000
find /nsd26 -type d -exec chmod 755 {} \;
#查找nsd26内目录类型设置权限为755
find /nsd26 -type f -exec chmod 644 {} \;
#查找nsd26内文件类型设置权限为644
5)实操:请问实现lisi用户可以读取/etc/shadow文件内容,您有几种办法?(至少写出三种以上)
1. 利用其他人身份
chmod o+r /etc/shadow
2. 利用所属组身份
chown :lisi /etc/shadow
chmod g+r /etc/shadow
3. 利用所有者身份
chown lisi /etc/shadow
chmod u+r /etc/shadow
4. 利用ACL策略
setfacl -m u:lisi:r /etc/shadow
标签:etc,归属,用户,chmod,修改,chown,权限,目录 From: https://blog.51cto.com/u_16981549/11883161