linux的权限管理
1.1设定权限的方式及文件权限理解
- 字符方式设定权限:chmod 参数 权限模式 目标
- 数字方式设定权限:chmod 参数 权限值 目标
- 复制方式设定权限:chmod 参数 --reference=模板 目标
watch -n 1 ls -lR /mnt/
1.字符方式设定权限
r:阅读权限 w:写的权限 x:执行的权限
chmod u+x,g+w,o+w file 修改拥有者、所有组、其他用户的权限
chmod u-x,g-w,o-w file 修改拥有者、所有组、其他用户的权限
chmod u=rwx,g=rw,o=r file 设定所有人 、所有组、其他用户的权限
chmod +x file 所有位都加
chmod +r file 所有位都加
chmod -r file 所有位都减
chmod -x file 所有位都减
chmod +w file 只有u加w
chmod -w file 只有u减w
2.数字方式设定权限
权限可以用一个八进制数字表示
chmod 777 file
chmod 644 file
3.复制方式设定权限
cp -p file linux (复制文件的属性和内容)
chmod --refecence=file linux(只复制文件属性)
文件text1 text2的属性
1.2系统预留权限阀值
对于权限预留阀值的理解
- 资源存在意义在于共享,权限开放越大资源存在意义在于共享,权限开放越大共享效果越明显,
- 但是安全性越差
- 对于系统安全而言,开放权利越小,系统越安全
- 在系统中开放应开放的权利,保留不安全的权利以确保系统功能性及安全性
umask 查看预留阀值
目录权限777-022=755 文件的权限755-111=644
umask 700 (临时修改预留阀直,改变环境时修改就无效了)
永久更改预留阀直
vim /etc/bashrc (更改shell配置文件)
vim /etc/profile (更改系统配置文件)
source /etc/bashrc (立即生效)
source /etc/profile (立即生效)
1.3对特殊权限的理解
watch -n 1'ls - l /mnt/pub; ls - ld /mnt/pub/'监控目录
STICKYID:对于文件即使没有被程序调用也会被加载到交换空间中去
对于目录 :当目录上有STICKYID的权限时,所有用户在该目录创建的文件只有文件拥有者和root可以删除
chmod o+t /mnt/pub/ (chmod 1777 /mnt/pub) 开启STICKYID 权限
监控用户、所有组、其他用户 cat命令
SGID:针对二进制可执行文件,该命令发起的程序是以该命令所有组的身份去执行
没开启SGID之前
开启SGID后
针对目录 目录新建文件的所属组和该目录的所有组保持一致(监 控 watch -n 1 ls -lR /mnt/pub/)
SUID;只针对二进制可执行文件,使用拥有SUID权限的文件时,记录的文件会以拥有者的身份去执行
chmod g+s /bin/rm 用户以文件所属组去执行
chmod u+s /bin/rm 用户以文件拥有者身份去执行
让超级用户删除不了文件
1.4FACL权限列表
facl概述及注意事项
- 传统的权限仅有三种身份(owner,group,othe)搭配三种权限(r,w,x),并没有办法单纯的针对某一个使用者或某一个群组来设置特定的权限需求,此时就得要使用ACL(文件访问控制列表,AccessControlList)这个机制
- 因此目前ACL几乎已经默认加入在所有常见的Linux文件系统的挂载参数中
- (ext2/ext3/ext4/xfs等等),但rhel6.0以及之前的版本默认不支持acl的功能
facl命令
setfacl -m u:用户:权限 文件 设定权限
(m 设定 x删除 b关闭权限)
setfacl -b 文件
getfacl 文件
监控用户列表权限 watch -n 1 getfacl westos
未设定用户列表权限
设定用户列表权限后