setfacl的实验验证过程

一.命令作用

setfacl命令的作用是细分linux文件权限,可以精确到一个文件或者目录,而chmod只能把权限分为u、g、o三个组来划分权限。

二.实验证明

实验题:复制inittab文件到/tmp目录下,并要求对user1用户有访问和写入权限。inittab的权限为rw-rw----。

使用chmod命令

分析:1.使user1拥有访问和写入权限,将other组添加rw-权限,但是其他用户也拥有了rw-权限,未达到实验要求。2.使user1拥有访问和写入权限,将user1加入到root group里面,能对文件进行访问,但是拥有了root group组的所有权限,未达到实验要求。

以上的chmod未能满足实验题的需求。因此使用文件控制访问列表(ACL)来对文件的权限进行精确控制。

1.用root复制inittab文件到/tmp目录下,并从查看相关权限

[[email protected] tmp]# cp /etc/inittab ./
[[email protected] tmp]# getfacl inittab 
# file: inittab
# owner: root
# group: root
user::rw-
group::r--
other::r--

2.创建user1用户后实验是否能够写入相关的内容

[[email protected] tmp]$ echo 123456 >> inittab 
bash: inittab: 权限不够

3.设置/tmp/inittabl文件的权限

[[email protected] tmp]# setfacl -m u:user1:rw- inittab

4.查看/tmp/inittab文件的权限

[[email protected] tmp]# setfacl -m u:user1:rw- inittab 
[[email protected] tmp]# getfacl inittab 
# file: inittab
# owner: root
# group: root
user::rw-
user:user1:rw-
group::r--
mask::rw-
other::r--

5.去除掉关于user1对inittab文件的rw-权限

[[email protected] tmp]# setfacl -x u:user1 inittab

6.查看inittab的文件的权限

[[email protected] tmp]# getfacl inittab 
# file: inittab
# owner: root
# group: root
user::rw-
group::r--
mask::r--
other::r--

7.使用user1再次写入内容到inittab中

[[email protected] tmp]$ echo 1111111 >> inittab 
bash: inittab: 权限不够

三.总结

实验证明,setfacl对权限的设置更加精确。满足以上试题的需求。

时间: 2024-10-18 05:52:19

setfacl的实验验证过程的相关文章

C#发送邮件异常:根据验证过程,远程证书无效

今天在做发送邮件功能时,开始用qq邮箱和163邮箱都可以正常发送,后再改用我公司的邮箱和smtp时竟然报错了. 异常提示-----"根据验证过程,远程证书无效",后来通过查询资料解决该问题,上代码: using log4net; using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Net.Mail; using System.Net.Secur

爬虫登陆验证过程

混合模式 结合二.三两大步,通过模拟点击快速拿到cookie,虽然效率低,但可以减少数据包分析的时间以及解决搞不定ajax登陆验证的烦恼,然后继续用urllib2拼接cookie继续快速获取数据.分下面两步: a. 从selenium中拿到cookie b. 添加cookie给urllib2使用 方法1:使用CookieJar,可参考<Creating Custom Cookies for HTTP Requests> 方法2:直接拼凑一个名称是"Cookie"的heade

架构验证过程发现非数据类型错误 validation found non-data type errors

问题: infopath报一下错误 validation found non-data type errors 架构验证过程发现非数据类型错误 原因: 重复表字段在后台代码里要一一对应,否则报错. 错误代码: //Remove 1st row. It's empty by default XPathNavigator FirstRowNode = MainDataSource.CreateNavigator().SelectSingleNode("/my:myFields/my:e301/my:

RIP概述、原理详解及实验验证

RIP路由协议 一.路由类型: 直连路由--设备直连的网络默认路由静态路由--管理员手动配置的路由动态路由(IGP)internal gateway protocol1.DV-距离矢量路由协议--RIP IGRP EIGRP2.LS-链路状态路由协议--ISIS OSPF 二.RIP:路由信息协议 RIP概述: 是一应用层协议-距离矢量路由协议,端口号UDP 520.用来在"直接相连的路由器之间" 互相 传递 路由条目,利用跳数来作为计量标准.在带宽.配置和管理方面要求较低,最大跳数为

# 大小型网络构建-BGP加实验验证

大小型网络构建-BGP加实验验证 BGP -定义-概述-原理#建立邻居表#同步数据库 :network {精确的路由条目}import-route {protocol}BGP数据库中每个条目的状态,必须是: , 表示的是"best -- 最好的".1.尝试着放入自己的路由表:2.发送给自己的 BGP 邻居:#计算路由表 -报文 open :包含BGP建立邻居时需要协商的参数update:包含的是 BGP 路由条目 keep-alive : 用于周期性的发送,维护邻居关系:notific

System.Security.Authentication.AuthenticationException:根据验证过程,远程证书无效。

好久没写博客了,今天突然遇到个神奇的问题. 做好的网站在win10上和Windows sever 2012 上都没有问题,搬到Windows sever 2003上就出现了这么一个错误: Server Error in '/' Application. The remote certificate is invalid according to the validation procedure. Description: An unhandled exception occurred durin

System.Net.WebException: 基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系。 ---&gt; System.Security.Authentication.AuthenticationException: 根据验证过程,远程证书无效。

今天写程序的时候调用到一个第三方提供的https地址,访问此地址去获取加密的json格式数据,出现BUG c#报错 :  System.Net.WebException: 基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系. ---> System.Security.Authentication.AuthenticationException: 根据验证过程,远程证书无效. 引用: private string callbackRefund(string url, string d

VLAN基本概念和实验验证

VLAN基本概念和实验验证 一.VLAN的概念及优势 VLAN,即虚拟局域网(virtual Local Area Network),首先,我们为什么要引入VLAN呢? 我们考虑这样一种情况:在传统的交换式以太网中,所有的用户都在同一个广播域中,当网络的规模较大时,广播包的数量会急剧增加,这样会较大程度上影响网络传输的效率,尤其是当某个网络设备出现故障,不停地向网络发送广播,就会导致广播风暴,使网络通信陷于瘫痪.所以我们需要分割广播域来解决这个问题,下面先介绍一下分割广播域的方式: 分割广播域

linux基础概念和个人笔记总结(2)——账号和权限管理实验验证

特此感谢! 教员:张仁珑 班主任:傅春华 我想给予他们最崇高的敬意 防伪码:滴水之恩,涌泉相报 感想:当我今天在首页上看到了自己发的文章,这是我的第九篇文档,觉得心里特别开心,也真正理解了 "努力和收获是成正比的."这句话.刚好也正准备整理Linux相关笔记,心里五味杂陈,仿佛就在昨天,似乎就在眼前. 总而言之,没有他们就没有今天的我! 第四章:账号和权限管理 实验要求: 1.建立用户目录 /benet/teachers 和 /benet/students,分别用于存放不同身份用户的宿