Linux进一步研究权限-----------ACL使用
一、使用情况
1.1、场景:
某个大公司,在一个部门,有一个经理和手下有两个员工,在操控一个Linux项目,项目又分为三期做,然而一期比较重要,经理带着员工做完了,公司就觉得技术难点已经做完攻克了,不需要投入之前的人了,到了二期就招外包人员去顶替之前员工做的事,然后会做linux权限控制,外包人员就需要招甲方人员授权。
1.2、外包
指企业将某些业务活动或服务委托给外部公司或个人来进行,以降低成本、提高效率或专注核心业务。
1.3、外包的情况
- 企业需要专业技能或资源,但自身无法内部开发或维护,因此选择外包给专业公司或个人来完成。
- 企业需要降低成本,外包可以帮助企业节省人力、物力和财力,提高效率和竞争力。
- 企业需要快速扩展业务或进入新市场,外包可以帮助企业快速获得所需的资源和服务。
- 企业需要专注于核心业务,将非核心业务外包给专业公司或个人来处理,以提高企业的专业性和效率。
二、基础权限chmod
命令格式:chmod [options] mode files
options:选择 mode模式(u代表用户) files文件
-r u=rw start.sh
命令ll可以查询出来
开头字母;l:代表链接,d代表文件夹,-代表文件
后面有点:代表没有做acl控制
拥有者:就是当前用户 拥有组:就是所在的组
r代表卡读(看) w代表可以写(修改),x 代表可以执行(可以运行)
相加为7,所有有全部权限,
拿到的数字去相加得到的数字与421去对应就知道有什么权限了
如:5 4+1可以读和执行
三、ACL
3.1、ACL是
Access Control List的缩写,指访问控制列表。ACL是一种用于控制网络设备或操作系统上资源访问权限的机制,通过ACL可以限制哪些用户或哪些网络设备可以访问特定的资源。ACL通常用于路由器、交换机、防火墙等网络设备上,也可以在操作系统中用于控制文件和目录的访问权限。ACL可以根据不同的条件设置不同的访问规则,如IP地址、端口号、协议类型等。
我创建的文件自己和组内人员都可以操作,临时用户就是第三方人员也是外包进入,只有r-x可以读和执行
3.2、思考
如何实现如下的权限控制:
- 每个项目成员在有一个自己的项目目录,对自己的目录有完全权限
- 项目组中的成员对项目目录也有完全权限
- 其他人对项目目录没有任何权限
- 对于被分配进入项目的临时人员,只有读和执行权限,不能修改
初步思路:
- 创建一个临时组(例如:temp),并将临时组的权限设置位 r-w
- 将临时组也作为项目目录的所属组
- 对于临时用户作为临时组的成员即可
问题:
- Linux基本权限中,文件和目录同时只能有一个分组
- 变成775权限导致不是外包人员也能看
解决办法
- 使用ACL来解决上面的问题
3.3、具体操作
第一步:创建文件夹(查询是否创建成功ll,东西太多用管道符)
第二步:创建用户(可以是多个,用户=员工,张三zs、李四ls)
第三步:创建组(tgroup组名字)
第四步:把员工放到一个组里(-a追加和添加的意思 可以查看是否加进去 cat /etc/group)
第五步:修改目录的所有者和所有组(chown own代表拥有者)
第六步:修改权限为770
第七步:添加临时用户(外包人员 临时用户名字tempuser)
第八步:给临时用户设置密码
可以不是8个字符不管它的提示进行输入
第九步:设置ACL(给临时用户分配特定权限 一个一个加权限)
第十步:查看是否成功没
具体代码演示:
mkdir /project
ll | grep project
useradd zs
groupadd tgroup
gpasswd -a zs tgroup
chown root:tgroup /project
chmod 770 /project
useradd tempuser
passwd tempuser
setfacl -m u:tempuser:rx /project
getfacl /project
mask: 最多可以分配的权限 other其他用户
操作文件夹里面
具体代码演示:
进入文件夹
cd /project
创建文件
vim root.txt
进入编辑
i
写内容按EEC退出保存
wq
用临时用户查看别人文件
cat +文件
上面需要一个一个授权
3.4、解决一起授权
解决办法搞一个临时组,给这个组只有读和执行的权限,每来一个外包人员就丢进去
第十一步:控制组的ACL权限(创建临时组---专门放外包人员 )
与第9步区分 一个用-u一个一个用户设置,这个-g
groupadd temp
setfacl -m g:temp:rx/project
getfacl /project
有组后的做法
添加新用户
useradd tempu02
设置密码
passwd tempu02
丢到组里
gpasswd -a tempu02 temp
总:如果用项目发现没有权限,就需要思考是领导没有给你权限还是合作方没给权限了,合作方没给,可以分析两方关系是否好
相关文章:

Linux进一步研究权限-----------ACL使用
一、使用情况 1.1、场景: 某个大公司,在一个部门,有一个经理和手下有两个员工,在操控一个Linux项目,项目又分为三期做,然而一期比较重要,经理带着员工做完了,公司就觉得技术难点已经做完攻克了࿰…...

剪辑视频调色软件有哪些 剪辑视频软件哪个最好 剪辑视频怎么学 剪辑视频的方法和步骤 会声会影2024 会声会影视频制作教程
看了很多调色教程,背了一堆调色参数,可最终还是调不出理想的效果。别再怀疑自己了,不是你的剪辑技术不行,而是剪辑软件没选对。只要掌握了最基本的调色原理,一款适合自己的视频剪辑软件是很容易出片的。 有关剪辑视频…...

【Linux进阶之路】Socket —— “UDP“ “TCP“
文章目录 一、再识网络1. 端口号2. 网络字节序列3.TCP 与 UDP 二、套接字1.sockaddr结构2.UDP1.server端1.1 构造函数1.2 Init1.3 Run 2.客户端1.Linux2.Windows 3.TCP1. 基本接口2. 客户端3. 服务端1.版本12.版本23.版本34.版本4 三、守护进程尾序 一、再识网络 1. 端口号 在…...
一些用 GPT 翻译的计算机科学/人工智能 PDF 讲义
3D成像.pdf3D成像技术.pdf3D点云分析.pdfAAAI 2019 笔记.pdfCMU 10.708 概率图模型讲义.pdfCMU 15-312 编程语言基础讲义.pdfCMU 15-411 编译器设计讲义.pdfCMU 15-819 同伦类型论讲义.pdfCMU 15-819O 程序分析讲义.pdfCUNY CSci335 软件设计与分析 3 讲义.pdfDixie IT4500 信息…...

重大更新:GPT-4 API 现全面向公众开放!
重大更新:GPT-4 API 现全面向公众开放! 在 AIGC(人工智能生成内容)领域内,我们一直致力于跟踪和分析如 OpenAI、百度文心一言等大型语言模型(LLM)的进展及其在实际应用中的落地情况。我们还专注…...

【Python笔记-设计模式】对象池模式
一、说明 用于管理对象的生命周期,重用已经创建的对象,从而减少资源消耗和创建对象的开销 (一) 解决问题 主要解决频繁创建和销毁对象所带来的性能开销问题。如数据库连接、线程管理、网络连接等,对象的创建和销毁成本相对较高,…...

反序列化 [NPUCTF2020]ReadlezPHP1
打开题目 直接查看源代码 打开源代码发现了个./time.php?source 访问一下 审计代码: 现存在反序列化语句:$ppp unserialize($_GET["data"]);和执行漏洞:echo $b($a); 发现在__destruct()方法里面有 echo $b($a); 这个是php的…...

AI技术那些事儿:揭开潜伏在你生活中的高科技小能手
你有没有发现,现在的生活里有些“看不见”的聪明家伙,它们时时刻刻在帮咱们忙活呢?从早上用语音命令打开窗帘、播报新闻,到晚上喊一声关灯睡觉,这些都离不开人工智能(简称AI)的助攻。今天咱就掰…...

使用向量数据库pinecone构建应用06:日志系统异常检测 Anomaly Detection
Building Applications with Vector Databases 下面是这门课的学习笔记:https://www.deeplearning.ai/short-courses/building-applications-vector-databases/ Learn to create six exciting applications of vector databases and implement them using Pinecon…...

抽象工厂模式 Abstract Factory
1.模式定义: 提供一个创建一系列相关或互相依赖对象的接口,而无需指定它们具体的类 2. 应用场景: 程序需要处理不同系列的相关产品,但是您不希望它依赖于这些产品的 具体类时, 可以使用抽象工厂 3.优点: 1.可以确信你从工厂得到的产品彼…...
掌握 Android 中的 RecyclerView 优化
掌握 Android 中的 RecyclerView 优化 一、RecyclerView Pool以及何时使用它二、onCreateViewHolder 和 onBindViewHolder三、优化 RecyclerView 的不同方法四、视图无效与请求布局五、ViewHolder模式六、默认的废料和脏视图类型七、结论 RecyclerView 是 Android 中一个功能强…...

Android platform tool中d8.bat不生效
d8.bat因找不到java_exe文件,触发EOF d8.bat中之前代码为: set java_exe if exist "%~dp0..\tools\lib\find_java.bat" call "%~dp0..\tools\lib\find_java.bat" if exist "%~dp0..\..\tools\lib\find_java.bat" …...

WSL安装Ubuntu22.04,以及深度学习环境的搭建
安装WSL 安装 WSL 2 之前,必须启用“虚拟机平台”可选功能。 计算机需要虚拟化功能才能使用此功能。 以管理员身份打开 PowerShell 并运行: dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart下载 Linux 内核更…...
【PTA|选择题|期末复习】结构体
2-1 For the following declarations,assignment expression_is not correct. struct Student {long num;char name[28];}st1,st2{101,"Tom"},*p&st1; 〇 A.st1 st2 ◎ B.p->name st2.name O C p->num st2.num 〇 D,*pst2 2-2 下面定义结构变量的语…...

Video generation models as world simulators-视频生成模型作为世界模拟器
原文地址:Video generation models as world simulators 我们探索在视频数据上进行大规模生成模型的训练。具体来说,我们联合训练文本条件扩散模型,同时处理不同持续时间、分辨率和长宽比的视频和图像。我们利用一个在视频和图像潜在编码的时…...

高刷电竞显示器 - HKC VG253KM
今天给大家分享一款高刷电竞显示器 - HKC VG253KM。 高刷电竞显示器 - HKC VG253KM源于雄鹰展翅翱翔的设计灵感,严格遵循黄金分割比例的蓝色点晴线条,加上雾面工艺及高低起伏错落有致的线条处理,在VG253KM的背部勾勒出宛若大鹏展翅的鹰翼图腾…...

nginx-------- 高性能的 Web服务端 (三) 验证模块 页面配置
一、http设置 1.1 验证模块 需要输入用户名和密码 htpasswd 此命令来自于 httpd-tools 包,如果没有安装 安装一下即可 也可以安装httpd 直接yum install httpd -y 也一样 第一次生成文件htpasswd -c 文件路径 姓名 交互式生成密码 htpasswd -bc 文…...
Kafka是如何防止消息丢失的
Kafka通过一系列机制来防止消息丢失,主要包括以下几个方面: 生产者端(Producer)保证: 同步发送:生产者默认是异步发送消息的,但如果希望保证消息不丢失,可以选择将异步发送改为同步…...

[工具探索]VSCode介绍和进阶使用
相比较GoLand、PhpStorm、PyCharm、WebStorm的重量级内存占用,从Windows系统来,各种卡死,换到MacOS倒不会卡死,但是内存占用太多,影响体验,决定换到VSCode。当然这个过程需要适应过渡期,旧伙计都…...

Oracle迁移到mysql-表结构的坑
1.mysql中id自增字段必须是整数类型 id BIGINT AUTO_INCREMENT not null, 2.VARCHAR2改为VARCHAR 3.NUMBER(16)改为decimal(16,0) 4.date改为datetime 5.mysql范围分区必须int格式,不能list类型 ERROR 1697 (HY000): VALUES value for partition …...

React第五十七节 Router中RouterProvider使用详解及注意事项
前言 在 React Router v6.4 中,RouterProvider 是一个核心组件,用于提供基于数据路由(data routers)的新型路由方案。 它替代了传统的 <BrowserRouter>,支持更强大的数据加载和操作功能(如 loader 和…...

基于Flask实现的医疗保险欺诈识别监测模型
基于Flask实现的医疗保险欺诈识别监测模型 项目截图 项目简介 社会医疗保险是国家通过立法形式强制实施,由雇主和个人按一定比例缴纳保险费,建立社会医疗保险基金,支付雇员医疗费用的一种医疗保险制度, 它是促进社会文明和进步的…...
今日科技热点速览
🔥 今日科技热点速览 🎮 任天堂Switch 2 正式发售 任天堂新一代游戏主机 Switch 2 今日正式上线发售,主打更强图形性能与沉浸式体验,支持多模态交互,受到全球玩家热捧 。 🤖 人工智能持续突破 DeepSeek-R1&…...

3-11单元格区域边界定位(End属性)学习笔记
返回一个Range 对象,只读。该对象代表包含源区域的区域上端下端左端右端的最后一个单元格。等同于按键 End 向上键(End(xlUp))、End向下键(End(xlDown))、End向左键(End(xlToLeft)End向右键(End(xlToRight)) 注意:它移动的位置必须是相连的有内容的单元格…...
AspectJ 在 Android 中的完整使用指南
一、环境配置(Gradle 7.0 适配) 1. 项目级 build.gradle // 注意:沪江插件已停更,推荐官方兼容方案 buildscript {dependencies {classpath org.aspectj:aspectjtools:1.9.9.1 // AspectJ 工具} } 2. 模块级 build.gradle plu…...

wpf在image控件上快速显示内存图像
wpf在image控件上快速显示内存图像https://www.cnblogs.com/haodafeng/p/10431387.html 如果你在寻找能够快速在image控件刷新大图像(比如分辨率3000*3000的图像)的办法,尤其是想把内存中的裸数据(只有图像的数据,不包…...

数据结构:递归的种类(Types of Recursion)
目录 尾递归(Tail Recursion) 什么是 Loop(循环)? 复杂度分析 头递归(Head Recursion) 树形递归(Tree Recursion) 线性递归(Linear Recursion)…...

保姆级【快数学会Android端“动画“】+ 实现补间动画和逐帧动画!!!
目录 补间动画 1.创建资源文件夹 2.设置文件夹类型 3.创建.xml文件 4.样式设计 5.动画设置 6.动画的实现 内容拓展 7.在原基础上继续添加.xml文件 8.xml代码编写 (1)rotate_anim (2)scale_anim (3)translate_anim 9.MainActivity.java代码汇总 10.效果展示 逐帧…...

五子棋测试用例
一.项目背景 1.1 项目简介 传统棋类文化的推广 五子棋是一种古老的棋类游戏,有着深厚的文化底蕴。通过将五子棋制作成网页游戏,可以让更多的人了解和接触到这一传统棋类文化。无论是国内还是国外的玩家,都可以通过网页五子棋感受到东方棋类…...
React核心概念:State是什么?如何用useState管理组件自己的数据?
系列回顾: 在上一篇《React入门第一步》中,我们已经成功创建并运行了第一个React项目。我们学会了用Vite初始化项目,并修改了App.jsx组件,让页面显示出我们想要的文字。但是,那个页面是“死”的,它只是静态…...