linux中用ACL实现灵活的权限管理

ACL是什么??

ACL英文原意是Access Control List(访问控制列表).它能够实现灵活的权限管理,除了文件的所有者,所属组和其他人,设置相应的权限外,ACL允许你给任何用户或是用户组设置任何文件/目录的访问权限(注意的是有些不支持数字模式的权限给定)

ACL有什么用??

作为UGO权限管理的补充,aclGUO办不到或者是难以办到的功能

        1.可以针对用户来设置权限

        2.可以针对用户组来设置权限

        3.子文件/子目录继承父目录的权限

检查linux是否支持ACL??

acl需要linux内核和文件系统的配合才能工作,目前我们能见到的大多数linux发行版默认是支持的,但最好还是先检查一下

 图片1.png

注意:在linuxVfat 文件系统不支持acl

      centos7.0默认创建的xfsext4文件系统上有acl

      centos7.x之前版本,手工创建的ext4文件系统也不支持acl

      功能。需手动增加:

               tune2fs -o acl /dev/sdb1

               mount -o acl /dec/sdb1 /mnt

设置/dev/sda1挂载选项,用Posix Access Control Lists和用户指定的扩展属性

 那如何设置acl呢??

  1.   setfacl  -m  u:用户名:所给权限:文件

 图片2.png   

   2.  setfacl  -m  u:用户名:所给的权限:目录

如果后面是目录,则只有所给的这个目录有这个权限,其子目录里面没有。

    3.    setfacl  -Rm  g:组名:所给权限X:目录

R 就会递归到子目录里和文件,用X只给目录执行权限给文件件怎会没有

   4.    setfacl  -M file.acl 文件或是目录

比如,编辑一个acl文件。以后用到这个权限时直接调用就行了 uwang0   gtomrw

大量文件对要求有相同的acl,可写在文件里这样统一管理比较方便

   5.    setfacl  -m  du:用户名:权限 目录

表示在这个目录下新建的文件、目录默认都会有这个acl

   6.    setfacl  -x  u:用户名:文件|目录

删除所创建的acl

   7.    setfacl  -X  file.acl 目录

默认acl权限给了x,文件也不会继承x权限

base acl不能删除

   8.    setfacl  -k  dir 删除默认acl权限

   9.    setfacl  -b  file清除所有自己设置的acl权限

 图片3.png

如何限制特殊用户的最高权限呢??

acl文件上的group权限是mask值(自定义用户,自定义组,拥有组的最大权限)而非传统的组权限

mask 只影响除所用者和other的之外的人和组的最大权限

mask需要与用户的权限进行逻辑与运算后,才能变成有限的权限

用户或组的设置必须在mask权限设定范围内才会生效

  10.  Setfacl -m mask ::rw 文件名(中间两个冒号之间没有空格)

图片4.png 

  –set选项会把原有的acl项都删除,用新的替代,需要注意的是一定要包含UGO的设置,不能像-m一样只是添加acl就可以如

  11.  setfacl –set u::rwuwangrwg::ro::–  文件

  12 .  acl 的备份 getfacl -R /tmp/dir >acl.txt

  13.  getfacl 可看到特殊权限

 

原创文章,作者:yywan1314,如若转载,请注明出处:http://www.178linux.com/27841

(0)
yywan1314yywan1314
上一篇 2016-08-05
下一篇 2016-08-05

相关推荐

  • Varnish基础进阶

    Varnish基础进阶 前言 互联网早已惠及全人类, 我们可以通过网络与家人、朋友进行实时通信, 也能通过网络随时随地在各大电商站点上购物, 我们访问web站点的速度也越来越快, 这背后都是有很多精巧的架构以及各种先进的技术来支撑的, 我们就今天主要聊聊Web的缓存技术, 对于当今的互联网来说, Cahe Is King, 缓存真的有那么神奇么? 就由我来带…

    Linux干货 2016-04-19
  • linux用户权限管理

       在linux文件系统中使用ls -l命令可以查看文件的属性,但是我们明白其中属性各自代表的意思吗?下面我们就来看一看,这其中的奥义。。。 文件属性 使用ls命令查看文件,可以发现列表分为几个部分,各自所代表的意义如图所示: 文件属性操作     chown 设置文件的所有者  &nb…

    Linux干货 2016-08-04
  • iptables 实现应用层过滤

        在linux环境中,工作于内核空间的netfilter和工作于用户空间的iptables共同组成了其功能强大且操作灵活的防火墙系统,对进出主机或内外网之间的流量基于IP地址、通信协议、端口以及连接状态等进行管控,然而,对于一些使用非固定端口或者通信协议的应用程序,默认是没有办法做限制的,比如聊天软件QQ、下载工具迅雷等,不过我们可…

    Linux干货 2015-07-10
  • Sed文本文件工具的使用详解

    Sed文本文件工具的使用详解 一、概述 sed 工具实际上就是一个非交互式的编辑器,主要是为了处理文本而生的,我们知道处理文本的三剑客是 grep sed awk 我们之前学习过 grep 文本过滤工具,它的主要作用是为了过滤文本,而sed 工具也是过滤文本,只不过sed工具针对的是文件中的每一行,而且sed工具更加强大,下面还具体说明一下sed 工具的原理…

    Linux干货 2016-10-09
  • Linux Zabbix监控

                           Linux Zabbix监控 zabbix监控系统:    zabbix是基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。zab…

    Linux干货 2016-11-19
  • 【N25第五周作业】find命令以及相关练习

    find: 实时查找工具,通过遍历指定起始路径下文件系统层级结构完成文件查找; 工作特性: 查找速度略慢; 精确查找; 实时查找; 用法: find [OPTIONS]  [查找起始路径]  [查找条件]  [处理动作] 查找起始路径:指定具体搜索目标起始路径;默认为当前目录; 查找条件:…

    Linux干货 2016-12-27