Linux权限管理总结

ACL权限

  • 引入:在linux,只有所属组,所有者,其他人三种身份,但这是远远不够的,因为总有一些用户有特殊需求。所以我们引入了ACL(Access Control List 访问控制列表)权限。
  • 查看分区ACL权限是否开启 dumpe2fs -h /dev/sda3
  • 临时开启分区ACL权限 : 重新挂载根分区,并且加入acl权限
  • 永久开启分区ACL权限 : vi /etc/fstab (修改配置文件)
  • getfacle + 文件名 :查看acl权限
  • setfacl + [] + 文件名: 设定acl权限 (m设定,x删除指定,b删除所有,d设定默认,k删除默认,R递归设定)

例子:

1. 查看分区ACL权限是否开启 dumpe2fs -h /dev/sda3
2. 临时开启分区ACL权限 mount -o remount,acl / 
3. 永久开启ACL权限 vi/etc/fstab 
4. 给用户组设定ACL权限 setfacl -m g:tgroup2 :rwx project/ (使用 g:组名:权限 格式)
5. 修改最大有效权限 setfacl -m m:rx (使用 m:权限 格式)
6. 删除指定用户ACL权限 setfacl -x u:用户名 文件名
7. 删除指定用户组ACL权限 setfacl -x g:组名 文件名 
8. setfacl -m u:用户名:权限 -R 文件名
9. serfacl -m d:u:用户名 :权限 文件名
10.setfacl -b文件名 删除文件所有ACL权限 

SUID,SGID,SBIT权限

  • 功能
    1. SUID只对文件,执行文件时root灵魂附体
    2. SGID对文件也是root灵魂附体,对目录改变所属组
    3. SBIT只对目录,限制普通用户只对自己的文件进行操作

  • 设定方法:(文件名简称为fn)
    1. SUID:chmod 4755 fn/chmod u+s fn chmod 755 fn/ chmod u-s fn
    2. SGID: chmod 2755 fn/chmod g+s fn chmod 755 fn/ chmod g-s fn
    3. SBIT : chmod 1755 fn/chmod o+t fn chmod 777 fn/ chmod o-t fn

  • 查看权限

    • ll -d /tmp/

chattr权限

  • 功能:限制所有用户对文件的操作(包括root)
  • 语法 :chattr[+ - =] [选项] 文件名/目录名
  • 选项 :-i 限制对文件删除,改名,添删数据 如果对目录 只能修改目录下文件的数据 不能建立和删除文件
    -a 只能在文件中增加数据 但是不能删除和修改数据 对目录 只能在目录中建立和修改文件,但是不可以删除
  • 查看文件系统属性 : lsattr 选项 文件名 -a 显示所有文件和目录 -d 仅列出目录本身属性(对目录)

sudo权限

  • 功能: 把本来只能是超级用户执行的命令赋予普通用户执行,sudo的操作对象是系统命令
  • 语法: visudo #用户名 被管理主机地址 = (可使用身份) 授权命令(绝对路径)
  • 例子:visudo sc ALL = /sbin/shutdown -r now 授权sc用户可以重启服务器
  • 查看可用的sudo命令 : sudo -l

Guess you like

Origin blog.csdn.net/KafenWong/article/details/112406685