linux文件的权限机制,linux 文件特殊权限

Linux文件系统上的特殊权限

进程的安全上下文:

前提:进程有属主(进程以哪个用户的身份运行);文件有属主和属组;

(1) 用户是否能够把某个可执行程序文件启动为进程,取决于用户对程序文件是否拥有执行权限;

(2) 程序启动为进程后,此进程的属主为当前用户,也即进程的发起者;进程所属的组,为发起者的基本组;

(3) 进程拥的访问权限,取决其属主的访问权限:

(a) 进程的属主,同文件属主,则应用文件属主权限;

(b) 进程的属主,属于文件的属组,则应用文件属组权限;

(c) 则应用其它权限;

SUID:

(1) 任何一个可执行程序文件能不能启动为进程:取决于发起者对程序文件是否有执行权限;

(2) 启动为进程之后,其属主不是发起者,而程序文件自己的属主;这种机制即为SUID;

权限设定:

chmod u+s FILE...

chmod u-s FILE...

注意:

s: 属主原本拥有x权限;

S: 属主原本无x权限;

SGID:

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

一旦某目录被设定了SGID权限,则对此目录拥有写权限的用户在此目录中创建的文件所属的组为目录的属组,而非用户的基本组;

权限设定:

chmod g+s FILE...

chmod g-s FILE...

Sticky:

对于一个多人可写的目录,此权限用于限制每个仅能删除自己的文件;

权限设定

chmod o+t FILE...

chmod o-t FILE...

SUID, SGID, STICKY

SUID为4

SGID为2

STICKY为1

这个和r,w,x一模一样

chmod 4777 FILE

详细解释:对FILE文件加了SUID并且属主属组其他用户都有读写执行权限

chmod 3755 DIR

详细解释:对DIR目录加了SGID和STICKY属主拥有读写执行,属组和其他用户拥有读和执行权限

chattr和lsattr

chattr:改变文件属性

常用选项:

+在原有参数基础上,增加参数

-在原有参数基础上,减少参数

=直接设置为该参数

i:设定文件不能被改名,删除,设定链接关系。同时不能增加和修改内容(这项对root用户也生效)

a:只允许文件被追加,不能删除。多用于服务器日志安全(这项对root用户也生效)

lsattr:查看文件属性

实战

1.让普通用户能使用/tmp/cat去查看/etc/shadow文件

解答:cp /bin/cat /tmp/cat

chmod u+s /tmp/cat

su - hadoop

/tmp/cat /etc/shadow

200f00775d61ca97f2db38e4053b1c40.png

2.创建目录/test/data,让某组内普通用户对其有写权限,且创建的所有文件的属组为目录所属的组;此外,每个用户仅能删除自己的文件;

解答:mkdir -p /test/data

setfacl -m g:hadoop:rwx /test/data

chmod g+s,o+t /test/data

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值