• Linux---1.07.ACL权限及其他文件属性命令


    • 解决身份不足问题

    • 查看分区是否支持ACL权限

      • dumpe2fs -h /dev/sda1
      • 看到 Default mount options: acl 就是支持的
      • 需要临时开启的话 mount -o remount,acl / 就可以了
        • 重新挂载根分区,并挂载加入acl权限的意思 -o支持特殊挂载选项
      • 永久生效需要修改 /etc/fstab文件 开机自动系统挂载文件
        • 在UUID=最后加,acl
        • 重启 或 重新挂载 mount -o remount /
        • 这个文件是系统默认开机启动文件,修改要小心
    • getfacl 文件名 查看文件acl权限

    • setfacl 选项 文件名

      • -m 设定ACL权限
      • -x 删除指定的ACL权限
      • -b 删除所有的ACL权限
      • -d 设定默认ACL权限
      • -k 删除默认ACL权限
      • -R 递归设定ACL权限
      • setfacl -m u:st:rx /project/
      • 给组给权限 setfacl -m g:tgroup2:rwx /project/
    • 最大有效权限

      • sefacl -m m:rx /project
    • 递归权限 只是加-R 必须放在后边

      • setfacl -m u:用户名:权限 -R 目录
    • 默认acl权限的作用是如果给父目录设定了默认acl权限 那么父目录中所有新建的子文件都会继承父目录的acl权限

      • setfacl -m d:u:用户名:权限 目录
    • 文件特殊权限

      • setUID 只能给文件

        • 只有可移植性的二进制程序才能设定suid权限
        • 命令执行者要对该程序拥有x执行权限
        • 命令执行者在执行该程序时获得该程序文件属组的身份
        • 权限只在该程序执行过程中有效,身份改变只在程序执行过程有效
        • 设置suid方法 4代表suid
          • chmod 4755 文件名
          • chmod u+s 文件名
        • 取消suid方法
          • chmod 755 文件名
          • chmod u-s 文件名
        • 危险的setUID
          • 关键目录应严格控制写权限 比如/和/usr
          • 用户的棉麻设置要严格遵守密码三原则
          • 对系统中默认应该具有setUID权限的文件做一列表 定时检查有没有这之外的文件被设置了setUID权限
      • setGID 类似setuid 能给目录和文件

        • ll /usr/bin/locate 实际时查 ll /var/lib/mlocate/mlocate.db 数据库 这个时候是给用户赋予了slocate组
        • 设定setgid
          • chmod 2755 文件名
          • chmod g+s 文件名
        • 取消setgid
          • chmod 755 文件名
          • chmod g-s 文件名
            ·
      • sticky bit

        • 粘着位权限 只能给目录分配
        • 意思是用户对文件夹内文件有写权限时,为了防止其删除其他用户文件,禁止其删除
        • 设置粘着位
          • chmod 1755 目录名
          • chmod o+t 目录名
        • 取消粘着位
          • chmod 777 目录名
          • chmod o-t 目录名
      • 文件系统属性权限chattr

        • change file attributes on a Linux file system 能限制root
        • chattr 【+-=】【选项】 文件或目录名
        • -i 对文件 不允许对文件删除 改名 不能添加和修改数据 对目录 只能修改目录下文件的数据 但不允许建立和删除文件
        • -a 对文件 只能在文件中添加数据 不能删不能改 对目录 只能建立和修改文件 不能删
      • 查看文件系统属性 lsattr 选项 文件名

        • a 显示所有文件和目录
        • d 目标是目录 仅列出目录本身的属性 而不是子文件
    • sudo权限

      • root把本来只能超级用户执行的命令赋予普通用户执行

      • sudo的操作对象是系统命令

      • visudo 实际修改的是/etc/sudoers文件 (可以用man 5 sudoers查看帮助)

      • root ALL=(ALL) ALL 意思是用户名 被管理主机的地址=(可使用的身份) 授权的身份(绝对路径)

      • %wheel ALL=(ALL) ALL %组名 被管理主机的地址=(可使用的身份) 授权命令(绝对路径)

      • 实例

        • visudo
        • sc ALL=/sbin/shutdown -r now 在visudo中添加
        • su - sc su到sc
        • shutdown -r now 执行不了
        • sudo -l 查看能执行什么
        • 看到的是要用root身份来执行shutdown命令
        • sudo /sbin/shutdown -h now
      • 实例2

        • visudo
        • sc 192.168.3.33=/usr/bin/vim
  • 相关阅读:
    【转】理清基本的git(github)流程
    GIT CHEAT SHEET
    failed to push some refs to 'git@github.com:*/learngit.git'
    catch(…) vs catch(CException *)?
    char[]与TCHAR[]互相转换引发的一个问题!
    关于 AfxSocketInit()
    href="#"与href="javascript:void(0)"的区别
    Camera帧率和AE的关系(转)
    详细的摄像头模组工作原理!!!(转)
    高清摄像头MIPI接口与ARM处理器的连接(转)
  • 原文地址:https://www.cnblogs.com/FGdeHB/p/15545942.html
Copyright © 2020-2023  润新知