2020-03-16 17:45:45 TGhades 阅读数 38

sudo
在这里插入图片描述
练习,创建新用户 user1, 让它能够使用useradd命令添加用户user2
在这里插入图片描述
在这里插入图片描述
Linux文件系统权限管理
在这里插入图片描述
664:rw- rw- r–644:rw- r-- r-- 755:rwx r-x r-x700:rwx — --- 600 :rw- — ---
3、 r w x
对于文件而言
r:可以获取文件的数据
w:可以修改文件的数据
x:可以将此文件运行成为进程
对于目录而言
r:可以使用ls命令获取目录下的文件列表
w:可以修改此目录下的文件列表,可以创建或者删除文件
x:可以cd到此目录下,并且可以使用ls -l来获取文件的详细属性信息

文件权限判断逻辑
在这里插入图片描述
在这里插入图片描述
若要删除文件先看目录的权限,判断用户身份,属主看左三位权限,若有w则可以删除文件!!
若要修改文件,看的则是文件的权限,判断其身份,然后再决定相应权限有没有w,若有则修改成功!!

权限管理类命令
chmod
三类用户
u:属主
g:属组
o:其他
a:所有
在这里插入图片描述
chown
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
进程的安全上下文:
进程对文件访问权限的应用模型
进程的属主,与文件的属主是否相同,如果相同,则应用属主权限
否则,检查进程的属主是否和文件的属组相同,如果相同,则应用属组的权限
否则,使用other权限。
将一个文件运行成为一个进程,取决于用户是否对这个文件有x权限,可执行权限

2017-07-30 14:49:14 elisayys 阅读数 246

Linux 文件特殊权限

一 文件普通权限介绍

在linux 中,文件的权限主要针对三类对象进行定义:
owner: 属主, u
group: 属组, g
other: 其他, o
每个文件针对每类访问者都定义了三种权限:
r: 可使用文件查看类工具获取其内容,用数字4表示
w: 可在此目录中创建文件,也可删除此目录中的文件,用数字2表示
x: 可以使用ls -l查看此目录中文件列表,可以cd进入此目录,用数字1表示。
X:只给目录x权限,不给文件x权限
如下图所示:
这里写图片描述
如果想修改文件的权限可以通过命令
chmod xyz filename 来实现,x 代表文件所有者权限,y代表文件所有组权限,y 代表其他用户权限,filename 表示文件或者文件夹名字。
例如: chmod 755 file1 表示修改文件file1的用户所有者权限为读写执行,所属组权限为读加执行,其他人权限为读加执行。关于修改文件普通权限这里不做详细描述。

二 文件特殊权限
文件的特殊权限有三种: suid、sgid、sticky。SUID 和SGID 是用来累加提升权限的,就是说如果原来的用户可以访问而切换到的用户或者组不能访问 这时候是照样可以访问的。下面将分别介绍这三种权限。
2.1 SUID
1. SUID只对二进制可执行程序有效,不能为普通文件,这点非常重要!
2. 发起者对程序文件必须拥有执行权限
3. 启动为进程之后,其进程的属主为原程序文件的属主,比如 /bin/x的属主为tom ,用户 y 启动了 /bin/x 的进程,这时候y 就相当于切换为tom了。
4. SUID设置在目录上无意义
配置命令 :chmod u+s filename 增加suid
chmod u-s filename 取消 suid
举例:默认情况下普通用户wang 是不能查看 /etc/shadow 文件的
[wang@Centos6.9~]$cat /etc/shadow
cat: /etc/shadow: Permission denied
现在要通过执行二进制文件 /bin/cat 来实现该功能。
1. 在root账号下增加/etc/cat 的 ssuid 权限。
[root@Centos6.9~]#chmod +s /bin/cat
2. 在wang 用户上能通过.bin/cat 程序 可以顺利查看/etc/shadow 了。
这里写图片描述

2.2 SGID
SGID 可以作用在二进制文件和作用在文件夹下。
1. 当作用在二进制文件下作用和SUID相似,只不过SUID是把发起者临时变为文件的所有者,而SGID 是把进程的发起者变成源程序文件的属组。
比如 /bin/cat 文件 所属组为rootgroup ,用户tom 发起/bin/cat 之后会切换成 rootgroup 中,享有的权限为rootgroup 的权限。
 权限设定:
增加SGID: chmod g+s filename
去除SGID: chmod g-s filename。
关于sgid 作用于二进制文件的情况这里不在举例。
2. 默认情况下,用户创建文件时,其属组为此用户所属的主组。当SGID 作用在目录下时,则对此目录有写权限的用户在此目录中创建的文件所属的组为此目录的属组, 通常用于创建一个协作目录。
 权限设定:
增加SGID :chmod g+s dirname
去除SGID :chmod g-s dirname.
举例:wang 用户新建一个叫 xiezuo 的文件夹,并执行
[wang@Centos6.9~]$chmod g+s,o+w xiezuo/ (g+s 是增加SGID, o+w 是增加其他用户的写权限,否则其他用户没法在该文件夹下床架文件啦!),之后看看到 文件夹的的属组变成rws了,如图:
这里写图片描述

此时另外一个用户yys ,属组也是yys 进入到 用户wang 的 xiezuo 目录下创建文件 xiezuo-yys 会发现文件的属组变成 wang了!(默认情况下用户创建的时候会属于用户所属组的!)
这里写图片描述

2.3 Sticky
默认情况下用户可以删除具有写权限的目录中的任何文件,无论该文件的权限或拥有权。如果在目录设置Sticky 位,只有文件的所有者或root**可以删除该文件。sticky 位 是作用在文件夹的,设置在文件上无意义。
权限设定:
命令:chmod o+t dirname 增加文件夹的sticky权限
chmod o-t dirname 除去文件夹的sticky权限
例如: [wang@Centos6.9~]$chmod o+t xiezuo/ (增加文件夹xiezuo的 sticky 权限)
普通用户yys 进入 xiezuo 目录下,发现即使里面的文件 xiezuo-wang
是 可读写执行 也照样不能删除,但是是可以读可写入内容的!

这里写图片描述

这里写图片描述

2017-07-05 23:04:08 yuhaihua529 阅读数 569

1、文件夹中所有文件的权限设置:

chmod -R 777 文件夹名字


2、文件的权限 chmod 777 文件名


3、查看文件以及文件的权限:

进入文件夹

cd /home/xxx/文档

进入当前文件夹的子目录:

cd ./文件夹名字

查看文件夹中所有文件名字:

ls -a   所有文件都会展示,包含隐藏文件


4、Linux系统获取root权限:

su+回车

密码:你自己的root密码


2019-07-29 16:14:37 qianluezyq 阅读数 19

权限类型:rwx,(读、写、执行)r=4 w=2 x=1

rwx权限说明:
1.对于文件而言:
r :可以获取文件的数据
w:可以修改文件数据
x:可以将此文件运行为进程

2、对于目录而言
r:可以使用ls命令获取文件列表
w:可以修改文件列表,即创建和删除
x:表示我们可以cd此目录,并且可以使用ls -l获取文件的详细属性

创建、删除文件的权限逻辑判断::看用户是否具备对目录的W权限
判断用户身份,owner-group-other
对于目录的权限逻辑判断:判断用户是否能够成功进入目录所在目录,X (是否有执行权限)

权限管理命令:chmod

三类用户:u(用户)g(用户组) o(其他) a=(全部)

授权表示法
u+,u-
g+,g-
o+,o-
a+,a-

注: 只有用户自己修改自己的文件

改变从属关系指令: chown,chgrp -R递归修改

注:只有管理员自己可以修改

进程对文件访问权限模型:
进程的属主与文件的属主是否相同,如果相同,则应用的是属主权限。
否则,则检查进程的属主是否属于文件的属组,如果是,则应用属组的权限
否则,使用other权限

基本ACL权限:
1、针对单个用户设置
2、针对用户组设置
3、子文件/目录继承父目录的权限

设置ACL:setfacl [-bkndRLPvh] [{-m|-x} acl_spec] [{-M|-X} acl_file] file …
-m:配置acl权限,不能和-x同时使用
-x:删除ACL配置
-b:移除所有的acl配置
-R:递归配置acl
-d:配置默认的acl参数,只对目录有效

查看ACL权限: getfacl /tmp/aclfile

权限掩码:umask 文件: 666-022 644
目录: 777-022 755
特殊权限:

   SUID:s
	当在文件所有者的x权限上出现s时,表示当前这个文件具有SUID权限
	1、SUID权限仅仅对二进制程序有效
	2、执行者对于改程序有x权限
	3、本权限仅仅在执行程序的过程中有效
	4、程序的执行者拥有该程序的拥有者的权限
	如果当前这个文件属主位没有x权限,显示大写S

SGID  s
	1、SGID也是对二进制文件有效
	2、执行者对该程序具有可执行权限  x权限
	3、主要用于目录之上:
SBIT t
	1、主要针对于other位
	2、作用于目录
	3、在该目录下创新建的文件或目录,只有自己和root可以删除
	4、对文件无效

SUID,SGID,SBIT
字符表示法
s s t u+s ,g+s,o+t
数字表示法
4 2 1
chmod 0755 4755 1755

	chattr
	a:append  只能够向文件添加数据,不能删除数据
	i:文件不能被删除,改名,链接同时不能写入内容
	A:atime 访问时间不可修改

lsattr:查看文件属性

2017-08-06 22:15:44 qq_37653144 阅读数 452

本文除必要的地方会分开讨论外,将目录视为特殊的文件类型一起讨论。

用户与用户组

在Linux中,用户是能够获取系统资源的权限的集合。而用户组则是将若干用户划分在一起形成的集合,但其成员(用户)之间对文件所拥有的权限不一定相同。Linux是一个支持多用户多任务的系统,因此可能常常会有多人同时使用这台主机来进行工作,为了考虑每个人的隐私权以及每个人喜好的工作环境,也为了保持Linux系统资源分配的合理性,“用户与用户组”的功能是对Linux这一特性的相当健全且实用的安全支持。

Linux根据用户与用户组划分了三个文件的基本权限集合:owner、group和others。

 

文件一般属性及权限

在Linux中执行“ls -al”命令,得到如下结果:

命令后列出的就是一系列文件的基本信息了。

 

第一列代表代表文件的类型与权限,其中包含了10个字符,每个字符位都有其不同的含义。

·第一个字符代表文件类型,[d]代表目录,[-]代表普通文件(其实文件两字即可,在这为与目录区分开来),[l]代表连接文件,[b]代表设备文件里面的可供存储的接口设备,[c]则表示设备文件里面的串行端口设备,例如鼠标、键盘等。

·接下来的9列,每3列为一组,每组分别代表owner、group、others的基本权限。每一组均为“rwx”的3个参数的组合。其中[r]代表可读,[w]代表可写,[x]则表示可执行,且rwx这3个权限都有相应的值,分别为4、2、1(设置权限的时候会用到)。这3个权限的位置不会改变,如果文件没有权限,就会出现[-]。

以上图中的start.cpp为例,根据第一列的信息可以得出这是一个文件所有者具有读写权限,用户组其他用户及非用户组成员具有读权限的文件。

第二列表示有多少文件名连接到此节点(iNode)。关于iNode的内容在介绍文件系统的博文中。

第三列表示这个文件的“所有者账号”。

第四列表示这个文件所属的用户组。

第五列为文件大小,默认单位为Byte。

第六列为这个文件的创建日期或修改日期。

第七列为该文件名。

 

文件默认权限:umask

我们在新建一个文件或目录时,一般都不会为其设置好权限,那么其默认权限是什么?这就和umask有关了。umask你可以理解为指定“用户在新建文件或目录时候的权限默认值”,在Linux中执行“umask”这条命令时,会显示当前系统的文件默认权限:

0022即是系统的文件权限默认值,不理解0022?可以加上-S参数,就会以符号类型的方式来显示出权限了。

为何是0022呢?与一般权限有关的是后3个数字,umask的分数指的是“该默认值需要减掉的权限”。因为r、w、x分别是4、2、1,也就是说,要拿掉能写的权限(就是2),依此类推。

在默认权限属性上,目录与文件是不一样的,所以这一节开头要分开叙述。x权限对目录非常重要,但一般文件的创建不应该有执行权限,因为一般文件通常是用于数据记录。文件与目录的默认权限如下:

·若用户创建“文件”,则默认没有可执行权限,只有读写权限,即-rw-rw-rw-

·若用户新建“目录”,由于x权限与是否可以进入此目录有关,因此默认为所有基本权限开放,即drwxrwxrwx

 

文件隐藏属性:chattr,lsattr

除了之前讲的文件的一般属性外,其实还有很多隐藏属性,这些隐藏属性很重要,尤其在系统的数据安全上面。

chattr [+-=] [Asacdistu] 文件或目录名称

参数:

+ :增加某一个特殊参数,其他原本存在参数则不动。

- :删除某一个特殊参数,其他原本存在参数则不动。

= :仅有后面接的参数。

 

A :当设置了A这个属性时,若你有访问此文件(或目录)时,他的访问时间atime将不会被修改,可避免I/O较慢的机器过度访问磁盘,这对速度较慢的计算机有帮助。

S :一般文件是异步写入磁盘的,如果加上S这个属性时,当你进行任何文件的修改,该改动会“同步”写入磁盘中。

a :当设置a之后,这个文件将只能增加数据,而不能删除也不能修改数据,只有root才能设置这个属性。

c :这个属性设置之后,将会自动将此文件压缩,在读取的时候将会自动解压缩,但是在存储的时候,将会先进行压缩后再压缩(对于大文件挺有用)。

d :当dump程序被执行的时候,设置d属性将可使该文件(或目录)不会被dump备份。

i :让一个文件“不能被删除、改名、设置连接也无法写入或添加数据”,对于系统安全性有相当大的帮助,只有root能设置此属性。

s :当文件设置了s属性时,如果这个文件被删除,它将会被完全从这个硬盘空间中删除。

u :与s相反,当使用u来配置文件时,如果该文件被删除,则数据内容其实还存在磁盘中,可以找回该文件。

隐藏属性需要用lsattr来查看。

lsattr [-adR] 文件或目录

参数:

-a :将隐藏文件的属性也显示出来。

-d :如果接的是目录,仅列出目录本身的属性而非目录内的文件名。

-R :与d相反,连同子目录的数据也一并列出来。

 

文件特殊权限:SUID,SGID,SBIT

SetUID

当s这个标志出现在文件所有者的x权限上时,此时就被称为Set UID,简称为SUID的特殊权限。SUID的限制与功能如下:

·SUID权限仅对二进制程序(binary program)有效;

·执行者对于该程序需要具有x的可执行权限;

·本权限仅在执行该程序的过程中(run-time)有效;

·执行者将暂时具有该程序所有者(owner)的权限;

·SUID对于目录无效。

Set GID

当s标志在文件所有者的x项目为SUID,那s在用户组的x时则称为Set GID,简称为SGID。与SUID不同的是,SGID可以针对文件或目录来设置。具体功能如下:

·SGID对二进制程序有效;

·程序执行者对于该程序来说,需具备x的权限;

·执行者在执行的过程中将会获得该程序用户组的支持。

对于目录,SGID还有如下功能:

·用户若对于此目录具有r与x的权限时,该用户能够进入此目录;

·用户在此目录下的有效用户组将会变成该目录的用户组;

·若用户在此目录下具有w的权限(可以新建文件),则用户所创建的新文件的用户组与此目录的用户组相同。

Sticky Bit

当t出现在others的x权限上时,被称为SBIT,且仅对目录有效,对文件无效,其功能如下:

·当用户对于此目录具有w、x权限时,如果用户在该目录下创建文件或目录时,仅有自己与root才有删除该文件或目录的权限,但有没有操作非自己创建文件或目录的权限要看其他属性。

目录与文件的权限意义

权限对文件的重要性

文件是实际含有数据的地方,包括一般文本文件、数据库内容文件、二进制可执行文件等。权限对于文件的意义如下:

·r(read):可读取此文件的实际内容,如读取文本文件的文字内容等;

·w(write):可以编辑、新增或是修改该文件的内容(但不含删除该文件);

·x(execute):该文件具有可以被系统执行的权限。

文件的r、w、x权限是针对“文件内容”而言,与文件名的存在与否没有关系,因为文件记录的是实际数据。另外,对于Windows系统来说,文件是否具有执行能力是通过“扩展名”来判断的,例如.exe,.bat,.com等,但在Linux下,实际上不存在“扩展名”,文件是否能被执行则是由x权限来决定。

权限对目录的重要性

如果将目录视为一种特殊文件的话,那么目录的内容是记录文件名列表,文件名与目录具有强烈的关联。权限对于目录的意义如下:

·r(read):表示目录具有读取目录结构列表的权限,具有r权限就可以查询该目录下的文件名数据,可以利用ls这个命令将该目录的内容列表显示出来;

·w(write):写入权限对于目录来说是很强大的,因为它表示你具有更改该目录结构列表的权限。包括新建新的文件与目录、删除已经存在的文件与目录(无论该文件的权限为何)、重命名已存在的文件或目录、转移该目录内的文件或目录的位置;

·x(execute):可执行权限对于目录而言在于用户能否进入该目录成为工作目录的用途,所谓工作目录就是当下的目录,而变换目录成为工作目录的命令为“cd”。

需要注意的是,对于一个目录,如果不具有x权限,那么就无法进入该目录,也无法执行该目录下的任何命令。因此,能否进入目录只与x权限有关,与r权限无关。

 

权限与命令的关系

让用户能进入某目录成为“工作目录”的基本权限是什么

·可使用的命令:例如cd等切换工作目录的命令;

·目录所需权限:至少需要x权限;

·额外需求:如果用户想要在该目录内查阅目录内容,还需要r权限,如果要对目录内容进行修改、删除等操作,还需要w权限。

 

用户在某个目录内读取一个文件的基本权限是什么

·可使用的命令:cat、more、less等;

·目录所需权限:用户对这个目录至少需要具有x权限;

·文件所需权限:用户对文件至少需要具有r的权限才行。

 

让用户可以修改一个文件的基本权限是什么

·可使用的命令:例如nano、vi等;

·目录所需权限:至少需要x权限;

·文件所需权限:用户对该文件至少需要r,w权限。

 

让一个用户可以创建一个文件的基本权限是什么

·目录所需权限:用户在该目录要具有w,x的权限,终点在w。

 

让用户进入某目录并执行该目录下的某个命令的基本权限是什么

·目录所需权限:用户在该目录至少要有x的权限;

·文件所需权限:用户在该文件至少要有x的权限。

理解上述关系对Linux文件的操作、文件资源分配等方面都很重要也很基础。

 

 

                                                                                  本文部分内容摘自《鸟哥的Linux私房菜 基础学习篇(第三版)》

 

Linux 查看文件权限

阅读数 205

Linux获取root权限

阅读数 1243

没有更多推荐了,返回首页