权限管理

1、创建组sales,gid 3000,passwd:centos,sales admins:user2

将用户user1,user2,user3加入到sales辅助组

希望user1 创建新文件 默认的所属组为sales

user2将用户user3从sales组移除

# groupadd -g 3000 sales 

# gpasswd sales

# useradd -G sales user1

# useradd -G sales user2

# useradd -G sales user3

# gpasswd -A user2 sales

# su user2

# gpasswd -d user3 sales

11.png

2、在/data/testdir里创建的新文件自动属于g1组,组g2的成员如:alice能对这些新文件有读写权限,组g3的成员如:tom只能对新文件有读权限,其它用户(不属于g1,g2,g3)不能访问这个文件夹。

# mkdir -pv /date/testdir

# groupadd g1

# groupadd g2

# groupadd g3

# chown :g1 /date/testdir

# chmod 750 /date/testdir

# chmod g+s /date/testdir

# setfacl -Rm d:g:g2:rw /date/testdir

# setfacl -Rm d:g:g3:r /date/testdir

# getfacl /date/testdir

# usermod -g g1 user1

# usermod -g g2 user2

# usermod -g g3 user3

# su user1

$ touch f1

$ ll

$ echo xxx > f1

$ cat f1

$ exit

# getfacl f1

权限管理

权限管理

3、三种权限,三种特殊,acl,chattr 总结

文件权限

文件:

r: 可使用文件查看类工具获取其内容

w: 可修改其内容

x: 可以把此文件提请内核启动为一个进程

目录:

r: 可以使用ls 查看此目录中文件列表

w: 可在此目录中创建文件,也可删除此目录中的文件

x: 可以使用ls -l 查看此目录中文件列表,可以cd进入此目录

Linux文件系统上的特殊权限

SUID, SGID, Sticky

SUID权限:

SUID只作用与可执行的二进制文件上

用户运行该程序时,自动继承该程序所属主的权限

SGID权限:

作用在二进制的程序上:

用户运行该程序时,自动继承该程序所属组的权限

作用在目录上:

该目录内新建的文件或目录的所属组自动继承与该文件的所属组

Sticky权限:

防止某些用户对该目录有权限,则胡乱删除该目录下的(属主是自己或属主不是自己)文件

在目录设置Sticky位,只有文件的所有者或root可以删除该文件,即除root用户外,其他用户只能删除属主是自己的文件

ACL:访问控制列表 Access Control List

除了文件的所有者,所属组和其它人,可以对更多的用户设置权限

比如设置某一用户能以rwx权限访问一指定文件,而其他用户按照u,g,o权限对文件进行访问

getfacl file |directory

查看文件或目录的访问控制列表

setfacl -m u:gao:rx file|directory

设置gao用户,对目录或文件,不以u,g,o所对应的权限访问文件,而是以rx权限访问文件

setfacl -m d:u:gao:rx directory

设置gao用户,对目录及以后该目录下此命令以后创建的文件,以rx权限访问

setfacl -M file.acl file|directory

以文本的形式,,对多个用户设置某一目录或文件的ACL

setfacl -m d:u:gao:rx directory

清除指定用户的ACL

setfacl -b file1

清除文件所有ACL权限

chattr

+i 不能删除,改名,更改,只能看

+a 不能删除,改名,更改,只能增加

+A FILE 锁定文件,可以防止root用户的误操作

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

(0)
megedugaomegedugao
上一篇 2016-08-03 19:13
下一篇 2016-08-03 19:20

相关推荐

  • N23-第三周博客作业

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@localhost ~]# who | cut -d' ' -f1 | sort -u 2、取出最后登录到当前系统的用户的相关信息。 [root@localhost ~]# last -1 | head -1 3、取出当前系统上被用户当…

    Linux干货 2016-12-05
  • redis主从复制(2)— replication buffer与replication backlog

    1、redis主从复制过程先不解释replication buffer和replication backlog,而先看看redis主从复制的过程。 redis的主从复制分为两个阶段: 1)同步(sync rdb snapshot):slave复制master的某时间点(t)的全量数据,t为master接收到slave的sync命令后执行rdb bgsave的…

    Linux干货 2016-04-05
  • DNS配置

     DNS配置 基本的配置准备 1.安装bind 2.开启named服务 一、正向解析库 1、修改/etc/named.conf配置文件 vim /etc/named.conf 修改如下行 listen-on port 53 { 10.1.44.2; } allow-query     { any; } recursion no;…

    Linux干货 2016-10-09
  • 5.程序包管理与内核命令的使用

    1、  显示/boot/grub/grub.conf中以至少一个空白字符开头的行; ~]#  grep -E “^[[:space:]]+” //boot/grub/grub.conf root (hd0,0) kernel /vmlinuz-2.6.32-279.el…

    Linux干货 2017-07-30
  • tomcat

    编程语言: 硬件级:微码编程,汇编语言 系统级:C,C++,… 应用级:Java, PHP, Python, Ruby, Perl, C#, … 程序:指令+数据 过程式编程:以指令为中心,数据服务于代码; 对象式编程:以数据为中心,指令服务于数据; java Java代码的运行:*.java(source code) –…

    Linux干货 2017-07-03
  • Linux screen命令

    screen命令 一、简介 Screen是一款终端模拟的屏幕管理器,用于命令行终端自由切换。 当我们需要执行一个用时较多的作业,不希望自己或者他人误操作关闭终端导致作业中断,可以进入screen,这样,当终端关闭,作业仍会继续执行。 GNU’s Screen 官方站点:http://www.gnu.org/software/screen/ &nb…

    2017-07-13