第五章用户组和管理权限学习笔记

本章内容:

解释Linux的安全模型

解释用户账号和组群账号的目的

用户的组管理命令

理解并设置文件权限

默认权限

特殊权限

ACL

笔记整理开始2018年4月3日17:27:07

介绍安全3A

Authentication:认证

Authorization:    授权

Accouting|Audition:审计

本章主要介绍的内容为认证和授权方面的内容

 

用户user

令牌token,identiry

用户通过账号和口令登录(认证)之后,系统会根据认证的账号类型

发放不同的类型令牌(授权)。

用户持令牌通过程序访问文件,文件会审核令牌类型判断是否具有访问

权限。

若在登录过程中做了权限变更,需重新登录之后才能领取新的令牌。

Linux用户:Username/UID

管理员:root,0

普通用户:xx,1-65535

系统用户:1-499,1-999(CentOS7)

对守护进程获取资源进行权限分配

登录用户:500+,1000+(CentOS7)

交互式登录

 

组group

Linux组:Groupname/GID

管理员组:root,0

普通组:

系统组:1-499,1-999(CentOS7)

普通组:500+,1000+(CentOS7)

 

安全上下文

Linux安全上下文

运行中的程序:进程(process)

以进程发起者的身份运行:

root:/bin/cat

hello:/bin/cat

进程能够访问资源的权限取决于进程的运行者的身份

组的类别:

用户的主要组(primary group)

用户必须属于一个且只有一个主组

组名同用户名,且仅包含一个用户,私有组(创建用户时自动创建)

用户的附加组(supplementary group)

一个用户可以属于零个或多个附加组

 

用户和组的配置文件

linux用户和组的主要配置文件:

/etc/passwd:用户及其属性信息(名称、UID、主组ID等)

/etc/group:组及其属性信息

/etc/shadow:用户密码及其相关属性

/etc/gshadow:组密码及其相关属性

 

passwd文件格式:

例:

root:x:0:0:root:/root:/bin/bash

hello:x:1000:1000:hello:/home/hello:/bin/bash

systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin

 

login name: 登录名(hello)

passwd:             密码(已移动到shadow文件,此地为x)

UID:                   用户身份编号(1000,192…)

GID:                   登录默认所在组编号,主组

GECOS:                     用户全名或者注释

home directory:用户主目录(/home/hello)

shell:                  用户默认使用shell

 

gshadow文件格式:

root:$6$vOrgaA175RBG06bP$A/WYhuPC6pFNEUBKm0xp5/0W8jwQZIGJJUQI5o

1aAQJtLRRW9J9h07ga5mcub4Tl7fL1MLdEH7ayTJsWCwMwN/::0:99999:7:::

 

systemd-network:!!:17617::::::

 

hello:$6$9t4/ZZJe$CKCzXlZJct4ryh9eAmr.ztf9SlnuuoQfFCtmEdKdbycAge

Wrv2xhAh0HF6KmRbKLSkcF70icUfysiycoOsbsB/:17623:0:99999:7:::

 

1.login name:                             登录名

2.encrypted password:                   加密的密码,类型、salt、密文

现在一般使用sha512加密

3.date of last password change:上一次修改密码的时间,已1970-1-1之后

的天数表示

计算方法:echo `date +%s`/3600/24 |bc

4.minimum password age:              密码的最小使用周期,即密码修改之后

最少多少天之后可以再次修改

0 表示随时可以更改

5.maximum password age:             密码的最长使用周期,修改密码之后多少

天之后必须再次修改密码(过期)

99999,永不过期

6.password warning period:            密过过期之前几天发出提示信息

7.password inactivity period:    过期之后多少天之内还可以登录

8.account expiration date:        从1970-1-1算起,多少天后账号失效

9.空                                           预留位置

 

密码加密

加密机制:

加密:明文–>密文

解密:密文–>明文

单向加密:哈希算法,原文不同,密文必不同

相同算法定长输出,获得密文不可逆推出原始数据

雪崩效应:初始条件的微小改变,引起结果的巨大改变

md5:message digest,128bits,听说已被破解

sha1:secure hash algorithm,160bits

sha224:224bits

sha256:

sha384:

sha512:

 

密码的复杂性策略

使用数字、大写字母、小写字母及特殊字符中至少3种

足够长

使用随机密码

定期更换,不要使用最近曾经使用过的密码

 

group文件格式:

root:x:0:

hello:x:1000:hello

kvm:x:36:qemu

group_name:     群组名称

password:          密码,不显示

GID:                   群组ID

user_list:        以当前组为附加组的用户列表(分隔符为逗号)

 

gshadow文件格式:

root:::

hello:!!::hello

systemd-network:!::

group name:             群组名称

encrypted password:加密的密码

administrators:   组管理员列表,更改组密码和成员

members:                 成员,以当前组为附加组的用户列表(分隔符为逗号)

 

文件操作命令:

vipw:    vi+passwd

vigr: vi+passgr

pwck:

grpck:

 

用户管理命令:

useradd

usermod

usedel

组账号维护命令:

groupadd

groupmod

userdel

 

useradd:用户创建

useradd [options] login.name

-u                        指定UID,如不指定,正常情况id按最大的id上递增

超过范围则按最小的数递增

-o                        配合-u选项,不检查UID的唯一性

-g GID:                 指明用户所属的基本组,可为组名,也可以为GID

-c ”COMMMENT”:     用户的注释信息

-d home_dir         以指定的路径(不存在)为家目录

-s shell:              指明用户的默认shell程序

可用列表在/etc/shells中

-G group1..           为用户指明附加组,须存在

-N                       不创建私有组做主组,使用users组做主组100

-r                        创建系统用户

-m                       创建家目录,用于系统用户

-M                       不创建家目录,用户非系统用户

家目录不存在则登录会进入”/”

 

默认值设定:/etc/default/useradd文件中

显示或更改默认设置:

useradd -D          显示基本设置

[root@sentos7 ~]#useradd -D

GROUP=100                -N选项,如果不创建同名主组,则属于这个组

HOME=/home                    家目录位置

INACTIVE=-1               过期之后还可以登录的天数,-1表示不会锁死

EXPIRE=                       账号有效期,默认99999

SHELL=/bin/bash         默认使用的shell类型

SKEL=/etc/skel             创建家目录的源文件地址

CREATE_MAIL_SPOOL=yes 是否创建mail

useradd -D -s /bin/csh 修改默认shell类型

useradd -D -b /dir             修改默认家目录

usreadd -D -g group          -N选项之后默认的主组

 

练习:

1.创建用户gentoo,附加组为bin和root,默认shell为/bin/csh,注视信息

“Gentoo Distribution”

useradd -G bin,root -s /bin/csh -c “Gentoo Distrition” gentoo

2.创建下面的用户、组和组成员关系

名字为webs的组

用户名nginx使用webs作为附属组

用户varnish,也是用webs作为附加组

用户mysql,不可交互式登录系统,也不是webs的成员,nginx,

varnish,mysql密码都是magedu

grpadd webs

useradd -G webs nginx

useradd -G webs varnish

useradd -r     mysql

echo magedu |passwd –stdin nginx

echo magedu |passwd –stdin varnish

echo magedu |passwd –stdin mysql

 

新建用户的相关文件和命令

/etc/default/useradd     新建用户默认信息

/etc/skel/                            家目录复制地址

/etc/login.defs                     添加用户配置信息

/var/spool/mail                   邮箱路径

newusers passwd格式文件:     批量创建用户

chpasswd                                  批量修改用户口令

如:    [root@sentos7 ~]#cat f2

newmike:maduge

[root@sentos7 ~]#cat f2 |chpasswd

 

 

usermod:用户属性修改

usermod [options] login

-u UID                         新UID

-g GID或者group              新主组

-G Group1[,Group]..     新附加组,原来的附加组将会被覆盖

-aG                             若保留原有,则要同时使用-a 选项

-s shell                 新的默认使用shell

-c ’comment‘:             新的注释信息

-d home                     修改家目录,新的家目录不会自动创建

-dm home                   创建新家目录并移动原家数据

-l login.name        新的名字,改名之后家目录,邮箱不变

-L:                     lock指定用户,在/etc/shadow密码栏增加!

-U:                            unlock指定用户,将/etc/shadow密码栏的!拿掉

-e                                yyyy-MM-DD:指明用户账号过期时间

-f INACTIVE:              设定非活动期限,宽限期

-p, –password PASSWORD

use encrypted password for the new password

用加密之后的明文设置密码

例:

usermod -u 7888 hello

修改hello的uid为7888

usermod -g root hello

修改hello的主组为root

usermod -aG lily hello

将hello添加到附加组lily

 

userdel:删除用户:

userdel [option]… login.name

-r:          删除用户家目录

 

id:查看用户的ID信息:

id [option]…[USER]

-u:          显示UID

-g:          显示GID

-G:      显示用户所属附加组的ID

-n:          显示名称,需配合ugG使用

 

su:switch user切换用户或以其他用户身份执行命令

su [option]..[-] [user[args..]]

切换用户的方式:

su username         非登录式切换,不会读取目标用户的配置文件,不改变当前

工作目录

su – username      登录式切换,会不去目标用户的配置文件,切换至家目录,

完全切换

root su至其他用户无需密码,非root用户切换时需要密码

退出用exit,ctrl+d,不要嵌套su

 

su [-] username -c ‘cmd’     换个身份执行命令,执行完之后退回

su – hello -c “cat /etc/shadow”

su -l –login  相当于su – username

 

passwd:设置密码:

passwd [options] username: 修改指定用户的密码

 

常用选项:

-d          删除指定用户的密码

-l            lock锁定指定用户,加!

-u          unlock,解锁指定用户,去掉!

-e          强制用户下次登录修改密码

-f    强制操作

-n mindays:          指定最短使用期限

-x maxdays: 最大使用期限

-w warndays:     提前多少天开始警告

-i inactivedays:过期还可以使用的天数

–stdin:从标准输入接收用户密码

例:

echo helloyou |passwd –stdin -n 3 -i 5 hello

修改hello的密码 最小使用天数3天,过期之后锁定时间5天

echo redhat |passwd –stdin hello &> /dev/null

修改hello的密码为redhat 影藏标准输出和标准错误

 

chage:修改用户密码策略

chage [option]…login.name

-d lastdays                  还可以继续使用的天数

-E –expire.date days   指定失效时间

-I –inactive days             过期之后锁定的时间

-m –mindays days            最小使用期限

-M –maxdays days            最长使用时间

-W –warndays days          提醒时间

例:

chage -d 0 tom          passwd -e tom

设置tom账号下一次登录修改密码

chage -m 0 -M 9999 -W 5 -I 7 tom

设置tom账号的密码最小使用时间0,最大9999,提醒5 冻结7

chage -E 2200-09-16   hello

usermod -e

设置tom账号失效时间2200-9-16

 

其他相关命令:

chfn:修改用户注释信息,

usermod -c类似

[root@sentos7 ~]#chfn hello

Changing finger information for hello.

-f    Name [hello]:

-o   Office [hahah]: 原office为hahah,冒号后输入新的

-p   Office Phone [12345]: 不修改可以直接回车

-h   Home Phone [54321]:

 

Finger information not changed.

例:

chfn -f hello -h 76521 hello

修改hello的名为hello,homephone为76521

 

chsh:(-s)修改指定shell

chsh -l 列出当前所有shell, cat /etc/shells

chsh -s /bin/bash hello

修改hello默认shell为csh

 

finger:查看当前系统登录的用户信息,类似who

finger hello

查看用户hello信息(name,bin,lastlogin ip)

 

groupadd:创建组

groupadd [option]…group.name

-g GID           指明GID号,[DID_MIN,GID-max]

-r:                 创建系统组

CentOS6:<500

CentOS7:<1000

具体规则查看/etc/login.defs

 

groupmod:组属性修改

groupadd [option]…group

-n group.name            修改组名

-g GID:              新的GID

 

groupdel:组删除

groupdel GROUP

 

gpasswd:更改组密码

gpasswd [option] group

gpasswd notbook        修改密码

不支持标准输入

-a user          将user添加至指定组中

-d user          从指定组中移除用户user

-A user1,user2,..    设置有管理权限的用户列表

 

newgrp:临时切换主组

newgrp hello

临时切换主组为hello

exit或者ctrl+d退出

如果用户本不属于此组,则需要组密码

 

groupmems :更改组成员

groupmems [options] [action]

-g,–group groupname      root only

-a,–add username                    指定用户加入组

-d,–delete username         指定用户从组中删除

-p,–purge                                删除组所有成员

-l,–list                             显示组成员列表

例:

groupmems -g hello -a lily

usermod -aG hello lily

gpasswd -a hello lily

将lily添加到组hello的三种写法

groupmems -g hello -d mady

将lily从hello中删除

groupmems -g hello -p

清除hello附加组所有成员

groups:

groups hello

查看hello的所有组,主组+附加组

 

其他命令:

pwunconv     passwd里面显示密码,shadow就不存在了

pwconv         将passwd中密码放入shadow

getent passwd                    查看passwd

getent passwd hello            只看hello的passwd

getent passwd |shadow | group |gshadow

 

 

文件权限:

文件的权限主要针对三类对象进行定义:

owner:属主,u

group:属组,g

othe:其他,o

每个文件针对每类访问者都定义了三种权限

r:     Readable 读,查看权限,可使用文件查看类工具获取其内容

w:    Writealbe       写,修改权限,可修改其内容

x:     eXcutable       执行权限,可以把此文件提请内核启动为一个进程

ps:

普通用户不能改文件所有者

所有者修改文件所属组,要求自己必须在相同组才能改

对于root账号,rw权限不受控制,x权限受影响

ugo只要有一个x,root就可以执行此文件 ,x全为-,则无法执行

对于普通用户,没有r只有w,不能打开,但是能有>,>>写入

可执行文件,无需r只需x即可执行,r全是有时会需要,比如file

删除文件需要目录的w权限

 

目录:

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

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

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

X:只给目录x权限,不给文件x权限

ps:

没有r权限,有x权限,可以进入目录,无法查看文件列表,可以查看

文件内容

有r权限,没有x权限,不能进入目录,不能目录里面的详细属性,也

不能查看文件内容

 

有w权限,没有x权限,无法删除里面文件

有w权限,没有r权限,可以删除里面文件

要执行目录下的文件,必须对目录具有x权限

 

用户获取文件(目录)权限:

所有者—所属组–other,一旦匹配,不看其他

如果是所有者,只看—-,不看后面

如是是所属组,直接所属组权限生效,不看other权限

 

chown:修改文件的属主

chown [option]..[owner][:[group]] file

chown hello f1                    修改文件f1的属主为hello

chown hello:hello f1  修改文件f1的属主和组为root,hello

(:group)只修改属组,不建议使用

-R   递归,针对目录

chown –reference=f1 f2 修改f2的owner:group和f1相同

 

chgrp:修改文件所属组

chgrp [option] group file

chgrp lily f1    修改文件f1所属主为lily

chgrp -R              递归,针对目录

chgrp –reference=f1 f2 修改f2的group和f1相同

 

文件权限操作:

drwxr-xr-x. 2 root   root     6 Mar 28 03:47 Desktop

drwxr-xr-x. 2 root   root     6 Mar 28 03:47 Documents

r:4

w:2

x:1

2-4位,owner权限

5-7位,group权限

8-10位,other权限

八进制数表示:    Octal-mode

— 000 0

–x  001  1

-w- 010 2

-wx 011 3

r– 100 4

r-x 101 5

rw- 110 6

rwx 111 7

如:

rwxr-xr-x       755

rw——-     600

 

修改文件权限:

chmod [option]..octal-mode file

-R   递归

chmod 644 f1       修改文件f1权限为644

chmod -R 777 dr1 递归修改dr1下所有文件权限为777

chmod [option]..mode,[mode]…file

chmod u=rw,g=rw,o=r f3

修改文件f3的权限为:rw-rw-r–

修改一类用户的所有权限:

u= g= o= ug= a=

u=,g=,o= 清空

修改一类用户某位或某些权限

u+r,g-rw,o+r,o-w…a+r,a-x….

chmod [option] –reference=f1 f2 f3

参考f1设置f2,f3的所有权限

 

例:

chmod u+wx,g-r,o=rx file

修改文件file权限,u+wx g-r o=rx

chmod -R g+rwX /testdir

递归修改目录testdir权限,g+rwX

 

新建文件和目录的默认权限:

umask指:可以用来保留新创建文件权限

新建file权限:666-umask指

如果所得结果某位存在执行(奇数)权限,则其权限+1

新建dir权限:777-umask

非特权用户umask是002

root账号的umask是022

umask           查看umask值

umask -S       模式方式显示

umask 2222   设置umask值为222

umask u=rwx,g=r,o=    模式方式修改umask

umask -p       输出可别调用,多了个名字。。

如:

umask -p >>.bashrc

umask文件地址:

/etc/bashrc           全局

~/.bashrc              用户设置

 

练习:

1.当用户docker对/testdir目录无执行权限是,意味着无法做哪些操作

无法进入目录

可以用ls查看列表,但是无法查看文件属性类型

就算对目录中的文件有rw权限,也无法查看和写入>>也不行

 

2.当用户mongodb对/testdir目录无读权限时,意味着无法做哪些操作

可以进入目录,无法查看文件列表,可以查看ll file详细信息

可以执行目录内程序,cat file可以查看文件内容

如果对文件有w权限,还可以通过>>写入文件

3.当用户redis对/testdir目录无写权限时,该目录下的只读文件file1是否

可以修改和删除

不能

4.当用户zabbix对/testdir具有写执行权限时,该目录下的制度文件file1是否

可修改和删除?

可以删除,不能修改

5.复制/etc/fstab文件到/var/tmp下,设置文件所有者为tomcat读写权限,所属

组为apps组有读写权限,其他人无权限

cp /etc/fstab /var/emp/

chmod 650 /var/tem/fstab

6.误删除了用户git的家目录,请重建并回复该用户家目录及相应的权限属性

cp -r /etc/skel/ /home/git

chown -R git:git /home/git

 

linux文件系统上的特殊权限:

SUID,SGID,Sticky

三种常用权限:r,w,x           user,group,other

安全上下文

前提:进程有属主和属组:文件有属主和属组

1.任何一个可执行程序文件能不能启动为进程,取决于发起者对程序文件是否

拥有执行权限

2.启动为进程之后,起进程的属主为发起者,进程的属组为发起者所属的组

3.进程访问文件的权限,取决于进程的发起者

a.进程的发起者,同文件的属主:则应用文件属主权限

b.进程的发起者,属于文件属组,则应用文件文件属组权限

c.应用文件“其他”权限

 

可执行文件上SUID权限:

任何一个可执行程序文件能不能启动为进程:取决于发起者对程序文件是否

拥有执行权限

启动为进程之后,其进程的属主为原程序文件的属主

SUID只对二进制可执行程序有效

SUID设置在目录上无意义

权限设定:

chmod u+s file

chmod u-s file

 

可执行文件上SGID

任何一个可执行程序文件能不能启动为进程:取决于发起者对程序文件是否

拥有执行权限

启动为进程之后,其进程的属组为原程序文件的属组

权限设定:

chmod g+s file

chmod g-s file

 

目录上的SGID权限:

默认情况下,用户创建文件时,其属组为此用户所属的主组

一旦某目录被设定了SGID,则对此目录有写权限的用户在此目录中创建的文件

所属的组为此目录的属组

通常用于创建一个协作目录

权限设定:

chmod g+s DIR

chmod g-s DIR

 

Sticky 位

具有写权限的目录通常用户可以删除该目录中的任何文件,无论该文件的权限

或拥有权

在目录设置Sticky位,只有文件的所有者或root可以删除该文件

sticky设置在文件上无意义

权限设定:

chmod o+t DIR…

chmod o-t DIR…

 

特殊权限数字法:

SUID:      4—

GUID:     2—

sticky      1—

 

权限位映射:

SUID:      user,占据属主的执行权限位:

s:属主拥有x权限

S:属主没有x权限

SGID:      group,占据属组的执行权限位

s:     group拥有执行权限位

S: group没有x权限

Sticky:other,占据other的执行权限位

t:     other拥有x权限

T:  other没有x权限

 

设定文件特定属性:

chattr +i 不能删除,改名,更改

-i           取消

chatr +a  只能追加内容

-a           取消

chattr +A      锁定atime

lsattr              显示特定属性

-R          可以递归

chattr +i /data/11         给/data/11增加锁定,不能删除更改改名

chattr +a /data/11        给/data/11增加锁定,只能追加内容

i存在的情况,a存在,也无法追加数据

chattr -i -a /data/11     取消data/11的特定权限

 

访问控制列表

ACL:Access Control List,实现灵活的权限管理

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

CentOS7 默认创建的xfs和ext4文件系统具有ACL功能

CentOS7 之前的版本,默认手工创建的ext4文件系统无ACL功能,需手动增加

(安装系统的时候创建的分区默认安装了acl,后续分区默认不带)

tune2fs -o acl /dev/sdb1

mount -o acl /dev/sdb1 /mnt/test

如添加了ACL权限,权限后面的.就会变成+

-rw-r–r–. 1 root root 8127 Apr 6 21:59 f16

未添加ACL

drwxrwxrwx+ 2 root root   49 Apr 7 01:55 23

已添加ACL

ACL生效顺序:

所有者,自定义用户,自定义组,其他人

PS:

用户所具有的组权限,为所有的组权限叠加取最大权限

[root@sentos7 /data]#getfacl 234

# file: 234

# owner: root

# group: root

# flags: -s-           显示特殊权限

user::r-x                所有者owner,

user:hello:rwx        自定义用户user

group::r-x

group:hello:rwx

group:lily:rwx        自定义组

mask::rwx                    组最高权限

other::-wx                    others

 

为多用户或者组的文件和目录赋予访问权限rwx

getfacl    f1 dr1

查看f1,目录dr1的acl权限

 

setfacl [-bkndRLP] { -m|-M|-x|-X … } file …

 

setfacl -m, –modify=acl u:hello:rwx 35 23

修改文件35,目录23的acl权限,使user用户hello具有rwx权限

setfacl     -Rm g:lily:rwX 23

递归修改目录23的acl权限,使lily组用户具有rwX权限

setfacl -M file.acl f5 234

按照文件file.acl中的权限设置文件f5 目录234的权限

[root@sentos7 /data]#cat file.acl

u:hello:rwx

g:lily:rwx

g:hello:rwx

 

setfacl -m d:u:wang:rx dir

-d, –default   operations apply to the default ACL

setfacl -d -m u:hello:rwx dir1

不能写成-m -d

设置目录dir的默认acl权限,给用户wang 附件rx权限,

默认对于目录下新建的文件或者目录默认附加相同权限,

对于现有文件,权限无变化

setfacl -x u:hello file|dir

清空hello用户对于file|dir的acl权限

setfacl -X file1.acl file dir

按照文件文件file1.acl删除文件file 目录dir的权限

setfacl -RX file3 dir1 如需递归,-R应在X的前面

setfacl -k dir

删除默认(default)ACL权限

setfacl -b file1

清除所有acl权限

getfacl file1 |setfacl –set-file=- file2

复制file1的acl权限给file2

–set选项会把原有的ACL项都删除,用新的替代,需要注意的是一定要

包含UGO的设置,不能像-m一样只是添加ACL就可以

示例:

setfacl –set u::rw,u:wang:rw,g::r,o::- file1

 

cp -p/-a f1 f2

复制文件用-p选项可以保留源acl权限

 

mask值:

ACL文件上的group权限是mask值(自定义用户,自定义组,用户组的最大权限)

而非传统的组权限,相当于限高

getfacl可以看到特殊权限:flags

通过ACL赋予目录默认x权限,目录内文件也不会继承x权限

base ACL不能删除

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

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

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

setfacl -m mask::rx file1

设置文件file1的mask值为rx

 

备份和恢复acl

主要的的文件操作命令cp和mv都支持acl,只是cp命令需要加上-p选项

但是tar等常见的备份工具是不会保留目录和文件的acl信息

示例:

getfacl -R /tmp/dir1 >acl.txt

setfacl -R -b /tmp/dir1

setfacl -R –set-file=acl.txt /tmp/dir1

setfacl –restore acl.txt

getfacl -R /tmp/dir1

 

练习:

1.在/testdir/dir里创建的新文件自动属于webs组,组apps的成员如:

tomcat能对这些新文件有读写权限,组dbs的成员如:mysql只能对新文件有读

权限,其他用户(不属于webs,apps,dbs)不能访问这个文件夹

chgrp webs /testdir/dir

chmod g+s /testdir/dir

chmod o= /testdir/dir

setfacl -m d:g:apps:rw,d:g:dbs:r /tsetdir/dir

 

2.备份/testdir/dir里面所有文件的acl权限到/root/acl.txt中,清除

/testdir/dir中所有acl权限,最后还原acl权限:

getfacl -R /testdir/dir >/root/acl.txt

setfacl -R -b /testdir/dir

setfacl -R –set-file=/root/acl.txt

getfacl -R /testdir/dir

 

 

 

笔记整理完成时间:2018年4月7日11:42:24

 

 

 

 

 

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/95200

(0)
青楼丨青楼丨
上一篇 2018-04-07
下一篇 2018-04-07

相关推荐