Linux权限详解

安全库:http://www.seclibs.com/
网络安全爱好者的安全导航,专注收集信安、红队常用网站、工具和技术博客

前面说完了Linux的目录、开机流程、重定向和文件查找,方便我们对理解Linux功能、反弹shell和敏感文件搜索的原理有了简单理解,其实在Linux中的各种操作都是十分透明的,理解Linux的各种细节,对Linux渗透是十分重要的,借用大佬的一句话“Linux的对抗比的就是你跟运维谁的水平更高一点”

如果没有看过前面几篇文章的小伙伴可以移步《Linux目录结构及开机流程详解》、《Linux重定向及反弹shell详解》、《Linux文件查找命令详解》

目录

0x01 用户和组

0x02 文件权限

0x01 用户和组

Linux必须要有用户,即使是一个虚拟的用户,这个在后面会说到,同时用户在系统中还拥有一个唯一的标识UID(User Identify)。

有了用户就对应的会有一个用户组,用户组在系统中也同样拥有一个标识GID(Group Identify)

在Linux中有一个特点,只要有用户,这个用户一定会属于一个用户组,一个用户至少需要属于一个用户组,在创建用户的时候没有用户组的话,系统默认会让此用户属于与用户名相同的用户组,即默认情况下UID与GID相同

file

说完这个以后,咱们说一下Linux中的用户分类,这里就会说明开头为什么会说Linux必须要有用户。

在Linux中用户分为三类

管理员UID必须为0,凡是UID为0的都是超级用户,相当于是古代的皇帝生杀大权在握,可以做到把系统自己都删掉。

file

普通用户UID范围500-65535,是由管理员用户生成的

file

虚拟用户UID范围1-499,系统默认就存在或者安装软件的时候生成的,虽然存在但是是不能正常使用的,像后面有nologin的就是不允许登陆的,它的存在仅仅只是为了满足服务运行的需求,在Linux中服务和程序的运行必须要属于用户,所以为了满足这样的需求,还是需要有这样的一个用户的。

file

那么这样的用户能不能删除呢,这样是取决于这个用户所对应的服务还需不需要,如果连这个服务都不需要了,那么就可以去进行删除的。

那么我们如何创建一个用户呢,使用 useradd 命令就可以完成了

file

那么我们要是想添加一个虚拟用户又该怎么创建呢

file

如果需要给刚刚创建的用户指定密码话,需要使用 passwd 命令来进行

file

如果后面不跟用户名的话,是修改当前用户密码的

file

如果要切换用户的话使用下列命令来进行切换

su -

file

这里说一下susu -两条命令的区别。

su只是切换了用户身份,但shell环境仍然是原用户的shell;而su -连用户和shell环境一起切换了

file

然后接下来说一说添加用户组

用户组是可以先存在的,是可以没有用户的,但是用户的存在必须先有用户组,就好比说,一个人的出生是必须要有父母的,但是有父母并不一定会有你。

使用下列命令就可以创建一个用户组了

groupadd

file

然后通过下面这个命令就可以为这个用户组创建一个用户

file

0x02 文件权限

前面说完了用户和用户组的权限,然后说一下文件所拥有的权限

我们可以发现第三列和第四列有两列都是root,它们的含义是不一样的

第一个root是用户权限,即用户或属主,文件的所有者

第二个root是用户组,即用户组或属组,文件属于的组

这个可能有点不太清晰,在下面细说权限的时候会详细来描述

file

接下来再说文件的权限

file

前面的这串字符一共有10位,第一位是用来标识它是一个什么文件类型的,他有下列几种类型

file

然后就剩下了9位字符,将这9位字符每3位为一组分成三组

第一组表示用户的权限,即当前文件拥有者的权限

第二组表示用户组的权限,即当前文件所属用户组的权限,也就是属于这个用户组中的用户对这个文件的权限

第三组表示其他用户组的权限,即第二组的用户组以外的用户组对这个文件的权限

也就是下面的这个样子

file

分组的说完了然后说一下每一组里面的字符所代表的含义,在上面这个图中,表示权限的字符有rwx-四种

r(read)可读权限,对应数字4
w(write)可写权限,对应数字2
x(execute)可执行权限,对应数字1
- 没有任何权限,对应数字0

其实除了这些还有一些特殊的权限:t、T、s、S、x、X、 ,这些就先不提了,等之后有用到的话再说,其实对于s权限大家应该都比较熟悉,因为s权限是可以利用来进行提权的。

对于权限就先说这么多,等之后具体碰到了再说。

文章首发公众号:无心的梦呓(wuxinmengyi)

这是一个记录红队学习、信安笔记,个人成长的公众号

扫码关注即可

file

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Linux 权限管理是 Linux 操作系统中非常重要的一部分,它控制着用户对文件和目录的访问权限。在 Linux 中,每个文件和目录都有三种基本权限:读取(r)、写入(w)和执行(x)。这些权限可以分别应用于文件所有者、文件所属组和其他用户,以控制不同用户对文件和目录的访问和使用。 文件权限的表示方法 Linux 中,文件权限是用一串数字来表示的,每个数字代表一种权限。其中,第一位表示文件所有者的权限,第二位表示文件所属组的权限,第三位表示其他用户的权限。每个数字的含义如下: - 0:没有权限 - 1:执行权限 - 2:写入权限 - 3:写入和执行权限 - 4:读取权限 - 5:读取和执行权限 - 6:读取和写入权限 - 7:读取、写入和执行权限 例如,文件权限为“rw-r--r--”,表示文件所有者具有读取和写入权限,文件所属组和其他用户只有读取权限。 文件权限的修改方法 在 Linux 中,可以使用 chmod 命令来修改文件权限。chmod 命令的基本语法如下: ``` chmod [选项] 模式 文件名 ``` 其中,选项包括: - -c:只在文件权限确实发生了改变的情况下,输出修改信息。 - -f:不显示错误信息。 - -v:显示每个文件的修改信息。 模式是一种用数字表示的文件权限,可以使用以下方法进行计算: - r=4,w=2,x=1 - 所有者权限的值 = rwx 的数字值 - 组权限的值 = rwx 的数字值 - 其他用户权限的值 = rwx 的数字值 例如,要将文件的所有者设置为可读写,组用户设置为只读,其他用户设置为只执行,可以使用以下命令: ``` chmod 754 filename ``` 其中,7 表示所有者具有读、写和执行权限;5 表示组用户具有读和执行权限;4 表示其他用户具有只读权限。 除了 chmod 命令,Linux 还提供了一些其他工具来管理权限,如 chown 和 chgrp 命令用于更改文件的所有者和所属组,setuid 和 setgid 位可以设置进程的权限等。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值