linux文件权限 第三章

1.基本权限 UGO

u:user 属主

g:group属组

o:others 其他人

r:read 读权限=4

w:write写权限=2

x:exec执行权限=1

1.1设置权限

chown:更改文件或者目录的属主及属组

chmod:为文件或目录设置权限

chown

[root@localhost ~]# chown hr.alice a.txt  //修改属主、属组
[root@localhost ~]# chown tom a.txt //修改属主
[root@localhost ~]# chown .jack a.txt  //只修改属组
[root@localhost ~]# chown -R hr.alice dir //递归修改---只针对目录

 chmod

修改权限可以通过使用符号修改,也可以使用数字修改权限。

使用符号

-rw-r--r--. 1 hr alice 0 2月  28 19:06 a.txt
[root@localhost ~]# chmod u+x a.txt  //属主增加执行权限
[root@localhost ~]# chmod a=rwx a.txt  //所有人等于读写执行权限
[root@localhost ~]# chmod a=- a.txt   //所有人都没有权限
[root@localhost ~]# chmod ug=rw,o=r a.txt  //属主和属组等于读写权限,其他人等于读权限
[root@localhost ~]# ll
-rw-rw-r--. 1 tom   jack      0 Nov  1 15:30 a.txt

 使用数字

[root@localhost ~]# chmod 644 a.txt 
[root@localhost ~]# ll a.txt 
-rw-r--r--. 1 hr alice 0 2月  28 19:06 a.txt
[root@localhost ~]# chmod 755 a.txt 
[root@localhost ~]# ll
总用量 0
-rwxr-xr-x. 1 hr alice 0 2月  28 19:06 a.txt
[root@localhost ~]# chmod 521 a.txt 
[root@localhost ~]# ll
总用量 0
-r-x-w---x. 1 hr alice 0 2月  28 19:06 a.txt

2.权限案例UGO

2.1设置权限案例

针对hr部门的访问目录/home/hr设置权限,要求:root和hr组的员工可以读写执行,其他用户没有任何权限

[root@localhost ~]# groupadd hr
[root@localhost ~]# useradd hr01 -G hr
[root@localhost ~]# useradd hr02 -G hr
[root@localhost ~]# mkdir /home/hr
[root@localhost ~]# chown .hr /home/hr
[root@localhost ~]# chmod 770 /home/hr
[root@localhost ~]# ll -d /home/hr
drwxrwx---. 2 hr hr 62 2月  28 19:06 /home/hr

2.2.rwx对文件的影响

文件对其他人有读写权限,其他人可以查看此文件,也可以在此文件写东西,但无法执行该文件,一个用户对于一个文件,如果想在此文件下写入东西,需要同时拥有rw权限,否则即使其他人对该文件有w权限,没有r权限,是无法向文件内写入内容的。

2.3.rwx对目录的影响

没有r权限,其他人无法查看目录内的内容。即使有了r权限,但是没有x执行权限,其他用户使用ls命令查看这个目录里的内容,会提示无法访问该目录,但依然会列出目录下的文件。也就是说查看一个目录下的内容需要有r权限。

对于目录来说其他人如果没有w写权限,在目录内是无法创建或删除文件的,其他人想在该目录下创建删除文件需要同时拥有wx权限。   

其他人打开一个目录需要x执行权限  (切换到一个目录,需要对该目录有x权限)

其他人对某目录有rwx权限,对该目录下的文件没有任何权限,其他人可以在该目录下创建删除文件,但无法对该目录中的文件做任何操作,即使是查看也没有权限

权限掩码
umask用户掩码
umask 用户掩码:控制用户创建文件和目录的默认权限
# umask    查看用户掩码
# umask 掩码  修改掩码
0022 root账户默认            0002 普通用户默认
root用户默认最高权限:目录777   文件666
root用户创建目录和文件的默认权限为:
       目录:r w x r w x r w x
       掩码:- -  - - w - - w -
新建目录:r  w x r - x r  - x    root用户创建目录的默认权限为755

       文件:r w - r w - r w -
       掩码:- -  - - w - - w -
新建文件:r w - r  -  - r -  -     root用户创建文件的默认权限为644

普通用户创建目录和文件的默认权限为:
       目录:r w x r w x r w x
       掩码:- -  - -  - -  - w -
新建目录:r w x r w x r  -  x    普通用户创建目录的默认权限为775

       文件:r w - r w - r w -
       掩码:- -  - -  - -  - w -
新建文件:r w - r  w - r -  -      普通用户创建文件的默认权限为664

高级权限(了解)
高级权限的类型
suid ==== 4 提权 (只对二进制命令文件生效,其他不管用)执行者将具有该程序拥有者(owner)的权限。which 查看命令的工作路径  例如:which cat   /usr/bin/cat


sgid ==== 2 组继承   主要用于目录,如果用户在此目录下具有w权限的话,使用者在此目录下建立新文件,则创建的这个文件的群组与此目录的群组相同。


sticky == 1 (t权限)  权限控制,目前只针对目录有效,对于目录的作用是:当用户在该目录下建立文件或目录时,仅有自己与 root才有权力删除。

设置特殊权限
a、字符---语法:
chmod u+s file  针对文件
chmod g+s dir  针对目录
chmod o+t dir  
b、数字(不建议使用,了解即可)
chmod 4777 file 
chmod 2770 dir 
chmod 1770 dir

suid 普通用户通过suid提权  针对文件
[root@localhost ~]# chmod u+s /usr/bin/cat
[root@localhost ~]# su - alice 
上一次登录:日 1月 23 16:14:22 CST 2022pts/0 上
[alice@localhost ~]$ cat /root/file1
[alice@localhost ~]$    未报错,说明提权之后,普通用户使用cat命令也可以查看root目录中的文件
取消提权
[root@localhost ~]# chmod u-s /usr/bin/cat

 sgid 组继承

[root@localhost ~]# chmod 775 /opt/dir1/
[root@localhost ~]# ll -d /opt/dir1/
drwxrwxr-x 2 root root 6 1月  23 16:22 /opt/dir1/
[root@localhost ~]# chown .hr /opt/dir1/
[root@localhost ~]# chmod g+s /opt/dir1/
[root@localhost ~]# ll -d /opt/dir1/
drwxrwsr-x 2 root hr 6 1月  23 16:22 /opt/dir1/
[root@localhost ~]# touch /opt/dir1/111
[root@localhost ~]# ll /opt/dir1/111
-rw-r--r-- 1 root hr 0 1月  23 16:25 /opt/dir1/111
[root@localhost ~]# chmod o+w /opt/dir1/ -R
[root@localhost ~]# su - alice 
上一次登录:日 1月 23 16:15:34 CST 2022pts/0 上
[alice@localhost ~]$ touch /opt/dir1/222
[alice@localhost ~]$ ll /opt/dir1/222
-rw-rw-r-- 1 alice hr 0 1月  23 16:59 /opt/dir1/222

Sticky Bit  t权限

[root@localhost home]# mkdir dir2
[root@localhost home]# chmod 757 dir2/
[root@localhost home]# chmod o+t dir2/
[root@localhost home]# ll -d dir2/
drwxr-xrwt 2 root root 6 1月  23 17:04 dir2/
[root@localhost home]# su - alice 
上一次登录:日 1月 23 16:26:08 CST 2022pts/0 上
[alice@localhost ~]$ touch /home/dir2/alice.txt
[alice@localhost ~]$ 登出
[root@localhost home]# su - jack 
[jack@localhost ~]$ rm -rf /home/dir2/alice.txt 
rm: 无法删除"/home/dir2/alice.txt": 不允许的操作

sudo提权

vim /etc/sudoers

配置解释:
root表示用户名
第一个 ALL 指示允许从任何终端、机器访问 sudo
第二个 (ALL) 指示 sudo 命令被允许以任何用户身份执行
第三个 ALL 表示所有命令都可以作为 root 执行

[root@localhost ~]# visudo
##
## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL
alan    ALL=(ALL)       NOPASSWD:ALL
  
## Allows members of the 'sys' group to run networking, software,
 
[root@localhost ~]# su - alan
上一次登录:二 3月  1 15:50:23 CST 2022pts/0 上
[alan@localhost ~]$ sudo mkdir /test
 

ACL提权

ACL文件权限管理:设置不同用户,不同的基本权限(r、w、x)。对象数量不同。

参数介绍:

  • -m:修改文件当前的ACL,不可与-x参数合用

  • -x:从文件的ACL中单独移除一条权限

  • -b:移除文件的全部ACL

 

设置完acl命令后可以通过getfacl 文件名 来查看增减的acl命令,此时不能用ll查看文件的权限,不准确。 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值