天天看点

Linux权限管理Linux权限管理一、权限概述二、权限设置三、属主与属组设置四、拓展

Linux权限管理

Linux的权限操作与用户、用户组是兄弟操作

一、权限概述

总述:Linux系统一般将文件可存/取访问的身份分为3个类别:owner、group、others,且3种身份  各有read、write、execute等权限

1、权限介绍

什么是权限:

在多用户(可以不同时)计算机系统的管理中,权限指某个特定的用户具有特定的系统资源使用权利,像是文件夹,特定系统指令的使用或存储量的限制。

在Linux中分别有读、写、执行权限:

读权限:

         文件夹,影响用户是否能够列出目录结构

         文件,影响用户是否可以查看文件内容

写权限:

         文件夹:影响用户是否可以在文件夹下,创建/删除/复制到/移动到

         文件:影响用户是否可以编辑文件

执行权限:

         一般对于文件来说:(脚本文件)

2、身份介绍

Owner身份(文件所有者,默认文档创建者)

Linux权限管理Linux权限管理一、权限概述二、权限设置三、属主与属组设置四、拓展

Group身份(与文件所有者同组的用户)

Linux权限管理Linux权限管理一、权限概述二、权限设置三、属主与属组设置四、拓展

Others身份(其他人)

Linux权限管理Linux权限管理一、权限概述二、权限设置三、属主与属组设置四、拓展

Root用户(超级用户)

Linux权限管理Linux权限管理一、权限概述二、权限设置三、属主与属组设置四、拓展

3、Linux的权限介绍

要设置权限,就需要知道文件的一些基本属性和权限分配规则。在Linux中,ls命令常用查看文件的属性,用于显示文件的文件名和相关属性。

# ls –l 路径               ls –l 等价于 ll

Linux权限管理Linux权限管理一、权限概述二、权限设置三、属主与属组设置四、拓展

Linux中存在用户、用户组和其他人概念,各自有不同权限,对于一个文档来说,其权限具体分配如下:

Linux权限管理Linux权限管理一、权限概述二、权限设置三、属主与属组设置四、拓展

十位字符的表示含义:

第1位:表示文档类型,常见“d表示文件夹”、“-表示文件”、“l表示软链接”、“s表示套接字”

第2-4位:表示文档所有者的权限情况,第2位表示读权限,取值r、-,第3位表示写权限,取值w、-,第4位表示执行权限,取值x、-

第5-7位:表示与所有者同在一个组用户的权限情况,第5位表示读权限,取值r、-,第6位表示写权限,取值w、-,第7位表示执行权限,取值x、-

第8-10位:表示其他用户的权限情况,第8位表示读权限,取值r、-,第9位表示写权限,取值w、-,第10位表示执行权限,取值x、-

注意:位置不会变化

二、权限设置

语法:# chmod 选项 权限模式 文档

常用选项:

         -R:递归设置权限(当文档类型为文件夹的时候)

权限模式:需要设置的权限信息

文档:可以是文件,也可以是文件夹,可以是相对路径,也可以是绝对路径

注意:如果给文件设置权限,操作者为root用户,或者是文档所有者

提权漏洞

1、字母形式

Linux权限管理Linux权限管理一、权限概述二、权限设置三、属主与属组设置四、拓展
Linux权限管理Linux权限管理一、权限概述二、权限设置三、属主与属组设置四、拓展
Linux权限管理Linux权限管理一、权限概述二、权限设置三、属主与属组设置四、拓展
Linux权限管理Linux权限管理一、权限概述二、权限设置三、属主与属组设置四、拓展
Linux权限管理Linux权限管理一、权限概述二、权限设置三、属主与属组设置四、拓展
Linux权限管理Linux权限管理一、权限概述二、权限设置三、属主与属组设置四、拓展
Linux权限管理Linux权限管理一、权限概述二、权限设置三、属主与属组设置四、拓展

文件为绿色,拥有执行权限

Linux权限管理Linux权限管理一、权限概述二、权限设置三、属主与属组设置四、拓展

2、数字形式

# chmod 777 a.txt

读:r                 4

写:w               2

执行:x            1

没有权限:0

Linux权限管理Linux权限管理一、权限概述二、权限设置三、属主与属组设置四、拓展

案例:给anaconda-ks.cfg设置权限,所有者拥有全部权限,同组用户拥有读执行权限,其他用户只读

语法:#Chmod 754 anaconda-ks.cfg

Linux权限管理Linux权限管理一、权限概述二、权限设置三、属主与属组设置四、拓展

3、注意事项

使用root创建一个文件夹,权限默认drwxr-xr-x

在文件夹下创建一个文件,给777权限

切换用户test(不是所有者,不是同组用户,是其他人)

能打开文件:能打开

能编辑文件:能编辑

能删除文件:权限不够,无法删除,不允许创建文件/文件夹,移动文件,重命名文件

在Linux中,如果删除一个文件,不是看文件有没有对应权限,而是看文件所在目录是否有写权限,如果有才可以删除。

三、属主与属组设置

属主:所属的用户(文件的主人)

属组:所属的用户组

Linux权限管理Linux权限管理一、权限概述二、权限设置三、属主与属组设置四、拓展

前面为属主,后面为数组

这两项信息在文档创建的时候会使用创建者的信息(用户名、用户所属的主组名称)

删除某个用户时,该用户对应的文档的属主和属组信息就需要去修改。

1、chown

作用:更改文档的所属用户

语法:# chown –R  username 文档路径

案例:将目录的用户名从root更改其他用户名

# chown text /oo

Linux权限管理Linux权限管理一、权限概述二、权限设置三、属主与属组设置四、拓展

2、chgrp

作用:更改文档的所属的用户组

语法:# chgrp –R groupname 文档的路径

案例:将目录所属用户组从root改为其他组

# chgrp test oo/

Linux权限管理Linux权限管理一、权限概述二、权限设置三、属主与属组设置四、拓展

如何通过一个命令同时更改用户名和用户组

命令:chown

语法:# chown –R username:groupname 文档路径

Linux权限管理Linux权限管理一、权限概述二、权限设置三、属主与属组设置四、拓展

四、拓展

Reboot、shutdown、init、halt、user管理,普通用户无法处理

解决:sudo(switch user do)命令进行权限设置

默认sudo中没有除root之外用户的规则,要想使用则先设置sudo

Sudo配置文件:/etc/sudoers

Linux权限管理Linux权限管理一、权限概述二、权限设置三、属主与属组设置四、拓展
  1. 配置sudo文件请使用“# visudo”,打开后,与vim使用一致
  2. 配置普通用户的权限
Linux权限管理Linux权限管理一、权限概述二、权限设置三、属主与属组设置四、拓展

Root:表示用户名,如果是用户组,则可以写成“%组名”

ALL:表示允许登录的主机(地址白名单)

(ALL):表示以谁的身份执行,all表示root

ALL:表示当前用户可以执行的命令,多个命令可以使用“,”分割

案例:用普通用户添加用户,并且修改密码(不能改root密码)

注意:写sudo规则时,不建议直接写命令,而是写命令的完整路径,路径可以用which查看

语法:# which 指令名称

Linux权限管理Linux权限管理一、权限概述二、权限设置三、属主与属组设置四、拓展
Linux权限管理Linux权限管理一、权限概述二、权限设置三、属主与属组设置四、拓展
Linux权限管理Linux权限管理一、权限概述二、权限设置三、属主与属组设置四、拓展

添加好对应规则后,使用:# sudo 命令

Linux权限管理Linux权限管理一、权限概述二、权限设置三、属主与属组设置四、拓展

在普通用户下如何查看自己哪些权限:

# sudo –l

Linux权限管理Linux权限管理一、权限概述二、权限设置三、属主与属组设置四、拓展

Sudo不是所有任何Linux分支都有的命令,常见centos与Ubuntu都存在

继续阅读