利用chomd和chown命令无法完成针对特定用户权限设置,需要通过facl功能完成细部权限设置

1.设置facl

setfacl [选项] u:用户名:权限 文件或目录名
  • -m:设置一个facl规则
  • -x:取消一个facl规则
  • -b:取消所有的facl规则

2.查看facl规则

getfacl 目录或文件名

3.启用facl规则

例:将/dev/adb1分区挂载到/home目录,并启用facl支持

mount -o acl /dev/adb1 /home

4.设置SET位权限

SET位权限针对可执行的程序文件或者目录设置分为SUID和SGID。

  • SUID表示对用户所有者添加SET位权限
  • SGID表示对所属组内的用户添加SET位权限

给文件用户设置SET位权限

chmod u+s 文件名

给目录用户组设置SET位权限

chmod g+s 目录名

当为目录设置了SGID后,所有用户在该目录中创建的文件都将属于同一个用户组,这样只要是该组的成员都将自动用于对文件的相应权限。

5.粘滞位权限SBIT

chmod o+t 目录名

只能删除自身文件

6.设置umask值

普通用户默认的umask值为0022;普通用户默认的umask值为0002。

使用umask命令查看当前用户的umask值。

创建目录的默认权限为777-umask

创建文件的默认权限为666-umask

临时修改umask值

umask 新的umask值

7.find命令按照所属关系查找

  • -user 用户名:根据所有者查找
  • -group 组名:根据所属组查找
  • -uid UID:根据UID查找
  • gid GID:根据GID查找
  • nouser:查找没有所属者的文件
  • nogroup:查找没有所属组的文件

8.find命令按照基本权限查找

精确匹配:

find 目录 -perm mode

模糊匹配:

find 目录 -perm /mode
find 目录 -perm -mode

mode指权限

区别:-perm /mode是或的关系;-perm -mode是与的关系

9.find命令按照特殊权限查找

对于特殊权限,SUID对应的数字是4,SGID对应的数字是2,粘滞位SBIT对应的数字是1。位置位于最高位。

10.设置扩展属性

chattr [-R] +/- i/a 文件
  • -R:递归修改所有的文件及子目录,这是一个可选项

  • +:表示增加扩展选项

  • -:表示减少扩展属性

  • i:表示只读属性,增加该属性后,任何人包括root用户也无权写入更改

  • a:表示追加属性,增加该属性后,只能向文件中添加数据,而不能删除,多用于服务器日志文件安全

    lsattr 文件名

    查看文件扩展属性

11.sudo命令提权

普通用户不切换用户情况下,使用sudo命令提升至root权限,需要管理员密码。

在/etc/sudoers文件中授权用户使用sudo命令

用户 主机名列表=命令程序列表

授权用户组使用sudo命令

%用户组 主机名列表=命令程序列表

保存时使用wq!强制保存退出

命令程序列表需要使用命令文件路径,添加NOPASSWD:每次使用sudo命令不用输入密码

Comments | NOTHING