为了账号安全,请及时绑定邮箱和手机立即绑定
  • 文件就三个权限

    所有者权限 组权限 其他权限 有时候不够用 这时候就需要ACL权限 用来解决用户身份不够的问题

    查看分区ACL权限是否开启

    dumpe2fs -h /dev/sda5

    #dumpe2fs命令查询指定分区详细文件系统信息的命令

    -h  仅显示超级块中信息,而不显示磁盘块的详细信息

    文件信息: Default mount options: user_xattr acl 那就说明分区是支持acl的

    临时开启分区ACL权限 mount -o remount,acl /

    #重新挂载根分区,并挂载加入acl权限

    永久开启分区ACL权限

    vi /etc/fstab UUID=c2ca6f57-b15c-43ea=bca0-f239083d8bd2 / ext4 defaults,acl 1(#启动是否需要检测) 1(#启动是否需要备份) #加入acl

    mount -o remount / #重新挂载文件系统或重启系统,使修改生效

    查看全部
  • 1、UUID分区唯一标志

    2、/ 挂载点

    4、defaults 挂载的时候使用默认权限,若默认没有acl权限只需要这样写 defaults,acl即可

    5、分区启动时是否需要检测

    6、分区启动时是否需要备份

    序号为参数顺序

    查看全部
  • 永久开启分区ACL权限

    写入配置文件

    /etc/fstab

    查看全部
  • 临时开启分区ACL权限

    mount 命令

    重新挂载根分区,并挂载加入acl权限

    mount -o remount ,acl/

    -o是特殊挂载

    remount是重新挂载

    /根分区

    查看全部
  • df:查看分区

    dumpe2fs /dev/sda5查询根分区的权限(显示的块太多)

    dumpe2fs -h /dev/sda5 显示超级块

    查看全部
  • ACL权限是否开启

    ACL权限作用在分区上,是一个挂载权限

    查看全部
  • Windows分配权限:不管所有者、所属组,想让哪个用户拥有权限,直接将文件操作权限给了就可以,对windows来说,不用考虑文件的所有者、所属组,只要考虑打算给谁权限

    所有者、所属组、其他人三个身份过于简单,导致复杂身份不能够使用

    Linux参考Windows下的权限,赋权限

    查看全部
  • ACL权限:解决用户对文件身份不足的问题

    查看全部
  • sticky BIT 粘着位作用    (与setUID、setGID一起)

    查看全部
    0 采集 收起 来源:Linux中Sticky BIT

    2018-11-06

  • chattr  [+-=] [选项] 文件名或目录:

    -- +:增加权限

    --  -:删除权限

    --  =:等于某权限

    chattr 常用选项包括:i和a (等价于insert和append)

        i 不能增加,不能删除 

         文件:不能删除文件(当然不能改名),不能修改文件内容 

         目录:不能删除目录(当然不能改名),不能修改目录里面的内容(新增文件、删除文件),只能修改目录下文件的数据(即改文件名)。

        a :只能在文件中追加内容,不能删除和修改内容,文件被赋予a属性后,linux进制vi/vim操作,只能echo ... >> 文件名 方式追加;只能在目录中建立和修改文件,但不允许删除

    lsattr 文件名  查看chattr权限

    -a 显示所有文件和目录

    lsattr -d 目录名   #查看目录


    查看全部
  • 1.SBIT权限:仅能针对目录生效 ,有粘着位作用

    2.要赋予SBIT 权限必须给目录普通用户赋予7权限,因此也比较危险。

    3.赋予SBIT权限: chmod o+t 或者 chmod 1***

    4.目录有SBIT权限后,任何普通用户都可以在目录下新建文件,但是只能删除自己创建的文件,不允许删除其它用户的文件。

    5. 目录默认有SBIT权限

    注:不建议手工建立拥有粘着位的目录


    SBIT权限,针对其他人,在其他人的x权限位置显示t;

    chmod 1755 目录名 或 chmod o+t 目录名 为目录设定SBIT权限; chmod 0777 目录名 或 chmod o-t 目录名 取消目录的SBIT权限



    查看全部
    0 采集 收起 来源:Linux中Sticky BIT

    2018-10-05

  • SetUID 只能对文件设置;

    SetGID,即能对文件,又能对目录设置;

    设置SetGID权限2;SetUID权限4;


    SetGID针对文件的作用:

    例如:

    /usr/bin/locate有SGID权限,执行locate命令时用户user1的组身份会升级为slocate组,

    而slocate组对/var/lib/mlocate/mlocate.db有r权限,

    所以普通用户可以使用locate命令查询mlocate.db数据库,

    命令结束后user1用户的组身份从slocate组返回原来组


    SetGID 针对目录的作用!

    1.用户必须附有对目录的rx权限

    2.用户在目录中创建文件的所属组均为该目录所有组,而非用户的所属组

    3.目录有SGID权限后,在目录中建立的新文件的组和目录文件的组默认相同

    查看全部
    0 采集 收起 来源:Linux中SetGID

    2018-10-05

  • 危险的SetUID(尽量少操作SetUID)

        关键目录应严格控制写权限。比如“/”、“/usr”等

        用户的密码设置要严格遵守密码三原则:复杂性、易记性、时效性

        实际工作当中应该将默认具有SetUID权限的文件作一列表,定时检查有没有这之外的文件被设置了SetUID权限。

    绝不允许给系统文件赋SUID权限,如chmod 4755 /bin/vi


    SUID和SGID检测脚本

     find / -perm -4000 -o -perm -2000 > suid.log


    定期检查suid 的脚本:

    #!/bin/bash 

    find / -perm -4000 -o -perm -2000> /tmp/setuid.check 

    #搜索系统中所有拥有SUID和SGID的文件,并保持到临时目录中

    for i in $(cat /tmp/setuid.check)      

    #做循环,每次循环取出临时文件中的文件名   

    do        

        grep $i /root/suid.log> /dev/null  

        #比对这个文件名是否在模板文件中

            if [ "$?" != "0" ] 

            #检测上一个命令的返回值,如果不是0,证明上一个命令报错

            then  

                echo "$i isn't in listfile! ">>/root/suid_log$(date +%F)

                #如果文件名不在模板文件中,则输出错误信息,并把报错到日志中

            fi

    done

    rm -rf /tmp/setuid.check #删除临时文件






    查看全部
  • 特殊权限尽量少修改;尤其是SUID & SGID

    SetUID的功能  

    只能对文件进行设置,

    1. 必须是可执行的二进制程序,才能赋予SUID权限

    2. 执行文件的用户必须有该文件的x权限

    3. 用户在执行程序过程中,是以文件所有者的身份执行该文件的。

    4. SetUID权限只在该程序执行过程在有效,也就是说身份改变只在程序执行过程中有效


    #0022首位的0是特殊权限

    #suid只能针对可执行文件,如果对没有执行权限的文件执行suid,则会变成大写S,s=S+x


    4代表SUID

    chmod 4755 文件名 或 chmod u+s 文件名 为文件设定SetUID权限; chmod 0755 文件名 或 chmod u-s 文件名 为文件取消SetUID权限(注:s指 SUID)


    passwd命令拥有SetUID权限,所以普通用户可以修改自己的密码

    cat 命令没有SetUID权限,所以普通用户不能查看/etc/shadow文件内容


    查看全部
  • 授权普通用户可以添加其他用户

    visudo   #编辑/etc/sudoers文件,即编辑sudo配置 

    sudo -l --查看sudo权限

    user1 ALL= /usr/sbin/useradd 

    user1 ALL= /usr/bin/passwd  授予用户设定密码的权限

    user1 ALL=/bin/vi           #赋予user1使用vi更改任意文件的权限(包括/etc/shadow阔怕!) (会造成严重后果, 在运行该权限时,是root身份,甚至能更改root密码)

    禁止普通用户使用sudo给设置root账号的密码user ALL=/usr/bin/passwd [A-Za-z]*, !/usr/bin/passwd "", !/usr/bin/passwd root

    sudo命令,所有字母多次使用,(后跟空格)不许passwd后加空更改密码, 不许passwd后跟root !注意中间必须有空格,顺序不能颠倒

    注意事项不能设定root用户密码

    在centos7上 不加空格也可以 zdy ALL=/usr/bin/passwd [A-Za-z]*,!/usr/bin/passwd "",!/usr/bin/passwd root

    不给普通用户设置root密码  不要给他vi权限  一定切记



    查看全部

举报

0/150
提交
取消
课程须知
1、需要掌握Linux的基本命令 2、需要学习本课程的前置课程《Linux权限管理之基本权限》
老师告诉你能学到什么?
通过本课程的学习,可以掌握Linux中的常用权限命令,包括ACL权限、sudo权限、文件特殊权限和不可改变位权限,并能理解这些权限的应用场景。

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!