小白学Linux运维7.文件权限管理

本文介绍了cenos系统中root账号的危险性及权限管理的重要性,详细讲解了文件的基本权限(rwx,UGO),特殊权限(suid,sgid,sticky)和文件扩展权限ACL。并通过实战演示了如何创建一个root都无法删除的文件,以及如何使用chmod和chown命令修改文件权限和属主属组。

root是cenos系统默认的账号,也是权限最高的账号,可以理解为老大哥,但是也是往往最危险的存在因为当服务器被入侵之后所做第一件事就是提权限,或者获取到root密码直接操作。那么权限的管理和就很早关键了,因为root账号可以设置一个连自己都无法删除文件。

本节所讲内容:

7.1文件的基本权限:rwx(UGO)

7.2文件的特殊权限:suidsgidsticky和文件扩展权限ACL

7.3实战:创建一个让root都无法删除的文件

ll查看权限

[root@xuegod63~]#ll/etc/passwd

红框内的9个字符都是权限。

文件权限基本解释:

-rw-r--r--.1rootroot247810月920:10/etc/passwd

-

rwx

r-x

User1

time

FILENAME

文件类型

拥有者的权限

所属组的权限

其他人的权限

拥有者

属组

对象

其中:文件类型,可以为d、l、s、c、b和–

d表示目录文件

l表示符号链接文件

-表示普通文件

s表示socket套接口文件,比如我们启用mysql时,会产生一个mysql.sock文件

c表示字符设备文件,例:虚拟控制台或tty0

b表示块设备文件例:sda,cdrom

7.1.3权限说明

对于文件来说:

r:读cat

w:写vimecho

x:执行运行命令或者脚本

对于目录来说:

r:读(看到目录里面有什么)ls

w:(目录是不可以写的)可以在目录里面建文件,删除,移动touchmkdirrmmvcp

x:目录是不能直接运行的,对目录赋予x权限,代表用户可以进入目录,也就是说,赋予x权限

的用户或群组可以使用cd命令,其他用户要读写该目录内文件,不仅要有该文件的读写权限,也要有

该目录的x权限。

就提示:cat:/home/user1/user1.txt:权限不够

即使user1.txt权限对其组以外的用户都有读权限,也是不行的。

主要是在于user1自己的家目录也是就user1.txt,的上级目录,只对自己有权限。

在home下的每个用户的都有一个规律,家目录权限默认都只对自己开放。别人是无法访问的。但是对于root用户无效的。

给目录添加权限:例如给user1目录添加一个x权限

chmod+x/home/user1

加完x权限后,在使用user2用户去访问user1.txt文件就可以读了(由于文件没有内容所以显示没内容)

UGO:所有者--用户组--其它用户

User-所有者:就是创建文件的用户,这个用户拥有对它所创建的文件的一切权限,所有者可以允

许其所在的用户组可以访问所有者的文件。

Group-用户组:用户组是具有相同特征用户的逻辑集合,有时我们需要让多个用户具有相同的权

改此文件的权限,然后将所有需要访问此文件的用户放入这个组中,那么所有用户就具有了和组一样的权

限。这就是用户组。

Other-其它用户:系统内的其他所有者用户就是other用户类

-rwx------:文件所有者对文件具有读取、写入和执行的权限。

-rwxr--r--:文件所有者具有读、写与执行的权限,用户组里用户及其他用户则具有读取的权限

-rw-rw-r-x:文件所有者与同组用户对文件具有读写的权限,而其他用户仅具有读取和执行的权

限。

drwx--x--x:目录所有者具有读写与进入目录的权限,其他用户近能进入该目录,却无法读取任何

数据。

drwx------:除了目录所有者具有完整的权限之外,其他用户对该目录完全没有任何权限。

举例如下:

每个用户都拥有自己的专属目录,通常放置/home下

ll/home/

总用量0

-rw-rw-r--.1user1user1010月1520:46user1.txt

注:[rwx------]表示目录所有者本身拥有的权限,其它用户是无法进入的。root可以。

su-user1和suuser1的区别?

[root@xuegod63~]#su-user1#从root切换到普通用户user1

user1@xuegod63~]$pwd

/home/user1

这个方式就是切换账号同时又切换目录了,

[root@xuegod63~]#suuser1

[user1@xuegod63root]$pwd#查看切完后的路径

/root

[user1@xuegod63root]$toucha.txt

touch:无法创建'a.txt':权限不够

[user1@xuegod63root]$cd/home/user1/

[user1@xuegod63~]$toucha.txt

因为当用户我是user1但是我还在root的家目录下。因为家目录默认除了自己其他用户是没操作权限的,所以当user1在执行toucha.txt就会提示权限不够。

使用suuser1他是不会切换目录的。

改变文件的所属关系用到命令:

chown:可以用来改变文件(或目录)的属主

chgrp:可以用来改变文件(或目录)的默认属组(不常用)

如果你要对目录进行操作,加参数-R

chown

语法:

chownuser:groupfilename比如:chownuser2:user2a.txt把文件的属主改为root属组改为

user2

chownuserfilename

比如:chownuser2a.txt把文件的属主改为user2用户

chown:groupfilename

比如:chown:user1b.txt把文件的属组改为user1组

:也可以用.代替

-R:递归(目录下的所有内容都更改,否则只修改目录)

方法1:使用字符设定

修改权限用的命令:chmod

作用:修改文件,目录的权限

语法:chmod[对谁操作][操作符][赋于什么权限]文件名

对谁操作:

u---->用户user,表示文件或目录的所有者

g---->用户组group,表示文件或目录所属的用户组

o---->其它用户others

a---->所有用户all

操作符:

+#添加权限;-#减少权限;=#直接给定一个权限

权限:rwx

例如下面的组合:

u-wuser拥有者

g+xgroup组

o=rother其他人

a+xall所有人

例:chmod修改权限

chmodu+x1.txt

这个命令的操作是只对当前用户root加了一个x权限,其他不变。

chmodu+x,g=-,o-r1.txt

针对1.txt文件权限组权限g=-表示组权限全部删除,o-r表示其他用户减少r权限。

Shado文件,除root账号其他任何用户都无权限对它操作

权限二进制值八进制值描述

---0000没有任何权限

--x0011只有执行权限

-w-0102只有写入权限

-wx0113有写入和执行权限

r--1004只有读取权限

r-x1015有读取和执行权限

rw-1106有读取和写入权限

rwx1117有全部权限

有三种权限可以应用:读取,写入与执行,这些权限对访问文件和目录的影响如下:

权限对文件的影响对目录的影响

r(读取)可以读取文件的内容可以列出目录的内容(文件名)

w(写入)可以更改文件的内容可以创建或删除目录中的任意文件

x(执行)可以作为命令执行文件可以访问目录的内容(取决于目录中文件的权限)

其实文件与目录设置不止这些,还有所谓的特殊权限。由于特殊权限会拥有一些“特权”.

7.2.1文件的特殊权限:suidsgidsticky

1、SUID(setuid设置用户ID):限定:只能设置在二进制可执行程序上面。对目录设置无效

功能:程序运行时的权限从执行者变更成程序所有者的权限

2、SGID:限定:既可以给二进制可执行程序设置,也可以对目录设置

功能:在设置了SGID权限的目录下建立文件时,新创建的文件的所属组会继承上级目录的所属组

3、Stickybit:粘滞位权限是针对目录的,对文件无效,也叫防删除位

4、

这3个特殊权限对应的数值为:

SUIDSGIDStickybit

421

chmodu+schmodg+schmodo+t

chmod4664chmod2664chmod1664

suid的代表数字是4,比如4755的结果是rwsr-xr-x

sgid的代表数字是2,比如2755的结果是rwxr-sr-x

sticky位代表数字是1,比如1755的结果是rwxr-xr-t

suid+sgid+sticky=7,比如7755的结果是rwsr-sr-t

SGID:

限定:既可以给二进制可执行程序设置,也可以给目录设置。

给二进制可执行程序设置,则运行程序时,临时获得该程序所属组权限

功能:在设置了SGID权限的目录下建立文件时,新创建的文件的所属组会继承上级目录的所属组。

Stickybit

限定:只作用于目录

功能:目录下创建的文件只有root、文件创建者、目录所有者才能删除。

例:系统中的tmp目录就是这样

其他用户无法删除,只有文件创建者、目录所有者才能删除

Getfacl用来设置或者修改权限setfacl

创建一个文件touch/opt/a.txt

设置只让用户user1对文件a.txt拥有的rwx权限,user1不属于a.txt的所属主,和组,other

的权限还是r--。怎么做?

getfacl/opt/a.txt

查看默认权限。

执行命令:setfacl-mu:user1:rwx/opt/a.txt

给user1用户真对/opt/a.txt文件添加rwx权限

执行修改后结果对比

如果直接使用ll查看显示效果就是这样的

当然在user1用下也可以执行getfacl/opt/a.txt

setfacl-mu:user1:rwx,user2:-/opt/a.txt

这是切换到user2,cat/opt/a.txt执行命令就提示权限不够。

setfacl-xu:user2/opt/a.txt

删除user2的权限。

如果要清空所有的

Setfacl-b/opt/a.txt

权限还原了

创建一个root账号都删除不了的文件

Lsattr查看权限

参数:i不能被修改不能被删除

+i:即Immutable,系统不允许对这个文件进行任何的修改。如果目录具有这个属性,那么任何的进程只能修改目录之下的文件,不允许建立和删除文件。

+a:只能追加内容如:echoaaa>>hack.sh

发现windows中有文件删除不了,怎么办?使用360强制删除,粉碎文件

那么在Linux下怎么办?

Touch新创建的文件在默认情况下是可以被执行删除

删除命令:rm-rf文件名

执行命令:chattr+iaa.sh给aa.sh文件加个i权限,就能让root都无法删除。

i也是无法进行内容追加的

使用chattr设置i权限需要使用lsattr命令查看,使用gerfaclll命令查看是没效果的。

如果需要root对aa.sh文件有删除权限,就需要把i权限删除

执行chattr-iaa.sh

对于给aa.sh文件加a权限,执行删除提示不允许从操作的而不是权限不够。

a权限和i权限同理都是不可以删除,但是a权限是可以使用echo命令进行追加内容的。

虽然可以追加内容但是不可以使用vim命令进行文件编辑。

针对目录添加i权限

创建一个der2文件

执行命令:Chattr给文件夹添加一个i权限,这个时给der2目录添加一个a.txt文件是不成功的,提示权限不够。目录有了i权限也是无法删除自己,连目录里面的子级文件也无法删除。

注意的是可以子级文件做编辑

使用命令:vim编辑der2/a.txt

Cat查看编辑的内容

推荐阅读

【小白学Linux运维】6.文件的管理和归档…

cenos作为服务器管理系统,除非技术上做维护管理之外,同是还需要对服务器上的文件做管理,同Windows系统一样它也有自己的文件,只是管理的方式不同,以执…

THE END
1.Chatra是什么意思Chatra的用法翻译读音海词词典,最权威的学习词典,专业出版Chatra是什么意思,Chatra的用法,Chatra翻译和读音等详细讲解。海词词典:学习变容易,记忆很深刻。http://m.corp.dict.cn/Chatra
2.CHATTERPronunciationinEnglishUS /?b?b.?l ?b?θ/ a special liquid soap with a pleasant smell, that you put in bath water to make a lot of bubbles About this Blog A young man of twenty: talking about age January 01, 2025 Read More New Words January brain January 06, 2025 More new words Learnhttps://dictionary.cambridge.org/pronunciation/english/chatter
3.ChatterDefinition&MeaningMerriamPlural and Possessive Names: A Guide Why is '-ed' sometimes pronounced at the end of a word? What's the difference between 'fascism' and 'socialism'? More Commonly Misspelled Words Words You Always Have to Look Up Popular in Wordplay https://www.merriam-webster.com/dictionary/chatter
4.吱吱喳喳chatter登陆:畅享实时沟通新体验利玛资讯在数字化飞速发展的今天,人与人之间的连接不仅限于面对面的交流,网络社交平台的崛起使得“吱吱喳喳chatter”成为一种全新的沟通方式。本文将探讨这一概念的重要性和影响,分析如何在众多社交平台中实现有效的沟通与互动。 什么是“吱吱喳喳chatter”? “吱吱喳喳chatter”指的是人在社交媒体或即时通讯工具上进行的轻松、http://www.limakeji.info/goodarticle/73657.html
5.發現乍都乍市場何時榉?週末奇觀等待著您!?Agoda:SeeThe歡迎來到乍都乍市場,這裡是購物者和美食家的天堂,坐落在曼谷市中心!這個龐大的市場被稱為乍都乍周末市場,是任何想要體驗這座城市豐富文化和不拘一格的購物場所的人的必遊之地。乍都乍市場佔地 27 英畝,擁有超過 15,000 個攤位,難怪是泰國 最好的市場之一,是曼谷旅遊景點的首選。 https://www.agoda.com/zh-tw/travel-guides/thailand/bangkok/discover-when-chatuchak-market-is-open-weekend-wonders-await/
6.AppStore上的“ChatGeo”ChatGeo是一款结合AR(增强现实),通过与实体地球仪进行搭配使用,带给用户虚实结合的有趣交互体验,让用户可以随时随地,了解各种跟地理相关的知识。 应用包含动物、建筑、自然、人文等多个分类版块,均配备有超写实的模型动画,利用AR技术,让用户可以轻易将这些内容放置在现实场景中。从东非草原的热带动物到埃菲尔铁塔的壮观https://apps.apple.com/cn/app/chatgeo/id6479868879
7.Dechat(CHAT币)兑换土耳其里拉今日价格行情,Dechat(CHAT币)今日价格行流通量(CHAT)-- --流通率流通率 =(流通总量 ÷ 最大供应量 )× 100% 24H成交额($)2,289,794.71 --换手率换手率也称“周转率”,指在一定时间内市场中转手买卖的频率,是反映流通性强弱的指标,24H换手率计算公式:24H内的成交额 ÷ 流通市值 × 100%未https://www.jb51.net/coin/dechat-try.html
8.茨阿圖,茨阿圖,ChoatuA.阿里 莫哈莫德·里祖万 哈桑·托拉尔 艾沙姆 莫雷罗球员/教练 球队 搜索简体名:茨阿圖报错 繁体名: 茨阿圖 英文名: Choatu 国籍: 马尔代夫 体重: kg 身高: cm 生日: 2001-05-24 惯用脚: 预计身价: 万英镑 现效力球队现效力球队 球衣号码 位置 马尔代夫 12 后卫 马纪亚 14 前锋球员http://info.nowscore.com/cn/team/player/882/213696.html
9.开源项目Chitr常见问题解决方案Chitr是一个开源的壁纸和背景应用,旨在为用户提供一个集中的平台,用于查找、设置和分享多种多样的壁纸。项目提供超过100万张来自Pixabay的惊艳图片,并支持不同类型的图片分类浏览。Chitr的主要编程语言包括Dart、Ruby、Kotlin、Swift和Objective-C,其中以Dart为主。 https://blog.csdn.net/gitblog_01004/article/details/145366419
10.ChattraChakkraVartiWhiteSun单曲在线试听专辑简介 音乐组合White Suns于2016年08月26号发布最新专辑《White Sun II》,收录了《Chattra Chakkra Varti》等单曲。 下载这首歌 手机扫描二维码下载客户端Chattra Chakkra Varti White Sun 专辑: White Sun II 发行时间: 2016-08-26立即播放 添加 收藏 分享 评论http://bd.kuwo.cn/play_detail/19537234
11.对文件file1执行如下操作:chattr+afile1则此时,能对fiA. 1-3个月 B. 3-6个月 C. 6-9个月 D. 9-12个月 E. 12-18个月 查看完整题目与答案 领导人员到龄退休后,担任社会团体等职务不得超过1个,任职年龄界限为( )周岁。 A. 65 B. 68 C. 70 D. 72 查看完整题目与答案 客户经理小孙在办理银行承兑汇票时,对贸易合同进行https://www.shuashuati.com/ti/7f76a75c92274d66abf688f8f5c682f7.html?fm=bd8ff467478c99590abc7a0d6f37747e22
12.唱诵精选ChattrachakkravarteeChattr chakkr bhugtay Suyambhav subang, sarabdaa sarab jugtay Dukaalang pranaasee, dayaalang Sarupay Sada angsangay, abhangang, bhibootay 你的存在遍布四方,你是四方世界的享有者。 你自身發出光芒並於萬物結合。 你是惡運的毀滅者,如此的化身你將永遠和我們在一起。 https://www.jianshu.com/p/40e83c62e815
13.ChattradownloadSourceForge.netChattra Web Site Other Useful Business Software Protect Your Online Privacy with ExpressVPN For anyone who needs a fast and secure VPN service The VPN that just works. #1 Trusted leader in VPN. Enjoy unrestricted access worldwide. 30-day money-back guarantee. ExpressVPN defeats content restrictiohttps://sourceforge.net/projects/chattra/
14.ChattraTangkittiphatharaphornIMDbProChattra Tangkittiphatharaphorn Edit page Add to list Track Visual Effects, Art DepartmentContacts Become a member to see Chattra Tangkittiphatharaphorn's contact information. Try IMDbPro Premium for free Chattra Tangkittiphatharaphorn Edit page Add to list Track Visual Effects, Art https://pro.imdb.com/name/nm9367091/network
15.Linux服务器发现挖矿病毒(crypto和pnscan)导致CPU爆满100的详细chattr -a authorized_keys # 去除i属性 chattr -i authorized_keys # 去除e属性 chattr -e authorized_keys 没有修改特殊属性的文件 权限是600 。root用户无法删除和修改。通过上面的chattr命令一一去除特殊属性,就可以正常修改和删除密钥文件了。 密钥文件里面的内容已经被我清空了。这两个文件终于可以修改了。 https://blog.itpub.net/69988117/viewspace-2773055
16.5'chattr'CommandstoMakeImportantFilesIMMUTABLEchattr is a command line tool to set/unset certain attributes on a file or folder to secure accidental deletion or modification of files and folders, even though you are logged in as root user.https://www.tecmint.com/chattr-command-examples/
17.chattr命令chattr指令可改变linux文件系统的文件属性,通用格式为:+-=[aAcCdDeijsStTu] “ aAcCdDeijsStTu ” 表示可以赋予文件的新属性,这些属性共有以下几种模式 。a:让文件或目录仅供附加用途; A:当一个具有“A”属性的文件被访问时,它的atime记录不会被修改; c:将文件或目录压缩后存放; d:将文件或目录排除在http://www.linux265.com/course/linux-command-chattr.html
18.linux下chattr命令的使用为文件file.txt设置追加数据和禁止删除属性: chattr +a +i file.txt 3.1.2 不允许任何更改 为目录dir设置只读属性: chattr +A dir 3.2 查看文件属性 查看文件file.txt的属性: lsattr file.txt 3.3 恢复文件属性 取消文件file.txt的追加数据和禁止删除属性: chattr a i file.txthttps://www.kdun.com/ask/679881.html
19.linuxchattr命令详解?Worktile社区chattr +i file.txt – 取消文件的只读属性: chattr -i file.txt – 设置文件为不可修改属性: chattr +i file.txt – 取消文件的不可修改属性: chattr -i file.txt – 设置文件为只追加属性: chattr +a file.txt – 取消文件的只追加属性: https://worktile.com/kb/ask/314624.html
20.使用logrotate管理日志文件anmile/usr/bin/chattr +a /var/log/messages 重新为 /var/log/messages 文件指定“只追加”属性,这样防治程序员或用户覆盖此文件。 最后的 endscript 用于结束 postrotate 部分的脚本 3、logrotate 的运行分为三步: 判断系统的日志文件,建立转储计划以及参数,通过cron daemon 运行下面的代码是 Red Hat linux 缺省的crohttp://blog.chinaunix.net/uid-25006584-id-174901.html
21.Linux文件保护禁止修改删除移动文件等,使用chattr+i保护2019-12-19 18:37 ?转自:https://www.cnblogs.com/ftl1012/p/chattr.html 常见命令参数 A:即Atime,告诉系统不要修改对这个文件的最后访问时间。 S:即Sync,一旦应用程序对这个文件执行了写操作,使系统立刻把修改的结果写到磁盘。 a:即Appe https://recomm.cnblogs.com/blogpost/10656118
22.OtherCommands%a 星期的缩写。 %A 星期的完整名称。 %b 月份英文名的缩写。 %B 月份的完整英文名称。 %c 日期与时间。只输入date指令也会显示同样的结果。 %d 日期(以01-31来表示)。 %D 日期(含年月日)。 %j 该年中的第几天。 %m 月份(以01-12来表示)。 https://math.ecnu.edu.cn/~jypan/Teaching/Linux/command/other.htm