权限管理

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