当前位置: 首页> 教育> 大学 > 沈阳做网站的互联网公司_优秀网页设计作品文字分析_企业网站的域名是该企业的_啦啦啦资源视频在线观看8

沈阳做网站的互联网公司_优秀网页设计作品文字分析_企业网站的域名是该企业的_啦啦啦资源视频在线观看8

时间:2025/8/24 13:39:33来源:https://blog.csdn.net/2301_80943978/article/details/146896892 浏览次数:2次
沈阳做网站的互联网公司_优秀网页设计作品文字分析_企业网站的域名是该企业的_啦啦啦资源视频在线观看8

一、权限的概念

Linux 系统的架构里,权限是构建安全堡垒的基石,精准界定了不同用户对文件与目录的操作边界, 对系统安全的维护以及数据完整性的保障起着决定性作用。Linux 将权限归纳为读( r )、写( w )和执 行(x )这三种基础类别,它们各司其职,共同守护系统资源。 

 

读(r)权限: 看文件当中写了什么。
写(w)权限: 更改文件当中的内容。
执 行(x)权限 通过文件的名称调用文件里面的动作。

二、权限的查看与读取

1·权限的查看

ls -l 文件   ##查看文件权限
ls -ld 目录  ##查看目录权限

示例如下:

2.文件权限的种类

文件的属性被叫做文件的元数据(meta data),一类元数据用1个byte来记录内容(其中【9】有多少个字母表示多少个字节,多少个中文表示3*n个字节)

#文件权限信息#
- | rw-r--r-- | . | 1 | root | root | 0 | Apr 12 10:57 | xhm
[1]   [2]      [3] [4]  [5]     [6]  [7]    [8]         [9]
#目录权限信息#
d | rw-r--r-- | . | 2 | root | root | 0 | Apr 12 10:57 | xiaohongmao
[1]   [2]      [3] [4]  [5]     [6]  [7]    [8]         [9]

【1】描述数据的类型(是文件(-)还是目录(d))

【2】描述数据谁能干什么

【3】描述这个文件selinux的开关

【4】描述数据的硬连接个数(文件)或者表示目录中子目录的个数(目录)

【5】描述数据属于哪个主组

【6】描述数据有哪个附加组

【7】描述数据有多大

【8】数据最后一次更改的时间

【9】数据的名称

【1】文件类型

#文件类型
#- 普通文件
#d 目录
#l 软连接 (例如快捷方式是真正文件的一个影子)
#b 快设备(类似于u盘)
#c 字符设备
#s socket套接字(程序对外开放的一扇门,可以进入到程序中的数据库里)
#p 管道 |

【2】文件权限说明

##用户权限
##rw-|r--|r--
#  u   g   o

u:user

g:group

o:other

【3】文件安全上下文标记

##系统的selinux开启,那么在此位会出现“.”

【4】文件副本标记或目录中子目录标记

##对于文件:文件内容被系统记录的次数(硬链接个数)
##对于目录:目录中子目录的个数

5】文件的归属

##文件拥有者

【6文件的归属

##文件拥有组

【7】文件容量统计

##对于文件:文件内容大小
##对于目录:目录中子文件的元数据大小

【8】文件时间戳

##文件内容被修改的时间

【9】文件名称

##文件名称中一个英文字符占用一个字节,一个中文字符占用三个字节

3.用户对于文件的身份识别及设定

1)用户对文件的身份

u: #user 文件的拥有者,ls -l 看到的第五列信息
g: #group 文件拥有组, ls -l 看到的第六列信息
o: #other 既不是拥有者也不是拥有组成员的其他用户的通称

具体如下:

2)权限位

rwx|r--|r--u   g   o

3)文件用户用户组管理

chown username file                      ##更改文件拥有者
chgrp groupname file                     ##更改文件拥有组
chown username:groupname file            ##同时更改文件的拥有者和拥有组
chown|chgrp-R user|group dir            ##更改目录本身及目录中内容的拥有者或者拥有组

对文件的实验演示:

对目录的实验:

4.设定普通权限的方法

chmod ##设定文件权限#chmod 复制权限#
chmod --reference=/tmp /mnt/lee           #复制/tmp目录的权限到/mnt/lee上
chmod -R --reference=/tmp /mnt/westosdir  #复制/tmp目录的权限到/mnt/westosdir及#目录中的子文件上 -R 代表第归操作
#chmod 字符方式设定权限chmod <a|u|g|o><+|-|=><r|w|x> file        ##用字副方式设定文件权限示例:
chmod u-rw /mnt/lee2
chmod u-rw,g+x,o+wx /mnt/lee3
chmod a-rwx /mnt/lee4
chmod u=rwx,g=rx,o=--- /mnt/lee5
chmod -R u=rwx,g=rx,o=--- /mnt/timinglee#chmod 数字方式设定权限#
权限波尔指表示方式
rwx = 111
--- = 000
三位二进制可以表示的最大范围为8进至数rwx=111=7
rw-=110=6
r-x=101=5
r--=100=4=r
-wx=011=3
-w-=010=2=w
--x=001=1=x
---=000=0#示例:
chmod 600 /mnt/lee1rw-------

建立一个实验环境并用监控命令对命令结果进行对照:

关于chmod --reference=xxx  xxx的用法实验:

可以看到xhm1中的权力从最开始的-rwxr-xr-x变成了与xhm2一样的权力-rw-r--r--

关于chmod <a|u|g|o><+|-|=><r|w|x> file的用法实例

可以看到xhm1上的权力由-rw-r--r--变成了-rwxr--r--也就是xhm1上user的权力由读写变成了读写执行+就是增加权力,-相反,当然+或-后面可以增加多个权力(例如:g+rwx(group的权力增加读写执行)、o+rx(other的权力增加读与执行))。也可以多位一起进行操作(例如:uo=rx(user和other的权力都增加读与执行))大家可以自行进行实验,示例太多就不放截图上来了。

chmod 数字方式设定权限,即权限波尔指表示方式首先我们可以将权限分为u、g、o三组,每组又可以分为rwx三个权限,而权限波尔指表示方式将这三权限看成二进制有这权限看成1,反之则看成0(例如:rwx为111---7    rw-为110---6   r-x为101---5  --x为001---1)由这方法得出的数就是与之对应的那一组的数字(如:-rw-r--r--,对应的数字就是644    -rwxrwxrwx,对应的数字就是777)

实验将xhm1的权力变为-rwxrwxrwx,如下:

5.系统默认权限设定

·系统本身存在的意义共享资源
·从安全角度讲系统共享的资源越少,开放的权力越小系统安全性越高
·既要保证系统安全,又要系统创造价值,于是把应该开放的权力默认开放把不安全的权力默认保留

1)如何保留权力

# umask表示系统保留权力
umask                                             #查看保留权力
umask 权限值                                      #临时设定系统预留权力#文件默认权限 = 777-umask-111#目录默认权限 = 777-umask#umask值越大系统安全性越高
#umask临时更改
umask 077
#永久更改
vim /etc/bashrc                                   ##shell系统配置文件
74 if [ $UID -gt 199 ] && [ "`id -gn`" = "`id -un`" ]; then
75 umask 002                                      #普通用户的umask
76 else
77 umask 022 -- 077                               #root用户的umask
78 fivim /etc/profile                                  ##系统环境配置文件
59 if [ $UID -gt 199 ] && [ "`id -gn`" = "`id -un`" ]; then
60 umask 002                                      #普通用户的umask
61 else
62 umask 022 -- 077                               #root用户的umask
63 fi
source /etc/bashrc     ##source作用时使我们更改的内容立即被系统识别 source /etc/profile

6.系统中的特殊权限

Linux 系统中,常规的文件权限包括读( r )、写( w )和执行( x ),分别对应数字 4 2 1 。通过这些权限的组合,我们可以灵活地控制用户对文件和目录的访问。然而,在某些特定场景下,常规权限无法满足需求,这时就需要借助特殊权限来实现更精细的访问控制。

1SUIDSet UID

当一个设置了 SUID 权限的程序被执行时,内核会将进程的有效用户 IDEffective User ID)临时设置为文件所有者的用户 ID,而实际用户 IDReal User ID)保持不变。这样,在程序执行期间,该进程就具有了文件所有者的权限。

即任何人在执行二进制可执行文件时都是以他的所有人身份运行

chmod 4原属性 filechmod u+s file实验:
su - lee
/bin/cat
ps ax -o user,group,comm | grep cat lee lee cat
#用root用户身份
chmod u+s /bin/watch
su - lee
/bin/cat
ps ax -o user,group,comm | grep cat root lee cat

实验如下:

首先用监控命令watch -n 1 "ps ax -o user,group,comm | grep cat ;ls -l /bin/cat"建立一个窗口

通过用户xhm对/bin/cat的运行我们可以得知二进制执行文件的所有人不会影响到用户的运行当中

而我们可以通过对user权力的更改,即设置了SUID,user权力由rwx变为了rws

如下(当然我们也可以用 chmod u+s /bin/cat来实现SUID的设置,有+号也就有-号):

为什么是4755:是因为我们可以将u、g、o看作二进制,然后将得出的数填到第一位当中(如:

-rwsrwsrw-是6776)

注意:

由于 SUID 权限会提升用户的执行权限,不当使用可能会带来安全风险。例如,如果一个恶意程序
被设置了 SUID 权限且可被普通用户执行,那么该程序可能会以文件所有者的权限执行任意恶意操
作。因此,在设置 SUID 权限时,应谨慎考虑必要性和安全性。

2SGIDSet GID

对于可执行文件,当设置了 SGID 权限的程序被执行时,进程的有效组 ID Effective Group ID )会临时被设置为文件所属组的组 ID 。对于目录,设置了 SGID 权限后,在该目录下创建的新文件和子目录将自动继承该目录的组,而不是创建者的默认组。
#sgid 强制位
#针对目录: 目录中新建的文件自动归属到目录的所属组中
设定:chmod 2源文件权限 dirchmod g+s dir实验
group testgroup
mkdir /mnt/public
chgrp testgroup /mnt/public
chmod 777 /mnt/public
lee ---> touch /mnt/public/file ##是谁建立的文件组就是谁的 chmod g+s /mnt/timinglee
lee ---> touch /mnt/public/file1 ##file1自动复制了/mnt/public目录组 #只针对二进制的可执
行文件(c程序)
#当运行二进制可执行文件时都是用文件拥有组身份运行,和执行用户无关实验:
su - lee
/bin/cat
watch -n 1 "ps ax -o user,group,comm | grep cat"
lee lee cat
用root用户身份
chmod g+s /bin/cat
su - lee
/bin/cat
ps ax -o user,group,comm | grep cat
lee root cat

注意:

同样, SGID 权限的不当使用也可能导致安全问题。例如,如果一个可执行文件设置了 SGID 权限且被恶意利用,可能会使普通用户获得过高的组权限,从而访问到不应访问的资源。对于共享目录设置 SGID 权限时,要确保组内成员的权限管理得当,避免权限滥用。

3Sticky Bit

上述功能。它限制了用户对目录中文件的删除和重命名操作,只有满足特定条件的用户才能执行这些操作
#stickyid 粘制位
#针对目录: #如果一个目录stickyid开启,那么这个目录中的文件
#只能被文件所有人删除chmod 1原始权限 dirchmod o+t dir 实验:mkdir /pub
chmod 777 /pubsu - lee ----> touch /pub/leefile
exit
su - timinglee --------> touch /pub/timingleefile
rm -fr /pub/leefile #可以删除
rm -fr /pub/timingleefile #不属于自己的文件也可以删除
如何解决此问题:chmod 1777 /pub
chmod o+t /pub
以上两条命令都可以开启pub目录的t权限
su - timinglee ----> touch /pub/timingleefile
exit
su - lee --------> touch /pub/leefile
rm -fr /pub/leefile #可以删除
rm -fr /pub/timingleefile #不属于自己的文件不能删除
rm: cannot remove 'timingleefile': Operation not permitted

注意:

在设置 Sticky Bit 权限时,要明确其适用场景,确保目录中的文件安全性。同时,要注意与其他权限的协同工作,避免因权限设置不当而影响正常的文件操作。

关键字:沈阳做网站的互联网公司_优秀网页设计作品文字分析_企业网站的域名是该企业的_啦啦啦资源视频在线观看8

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: