【Linux】一文带你掌握Linux权限!1

简介: 【Linux】一文带你掌握Linux权限!

本篇将由五个问题来为大家讲解Linux权限方面的内容


问题一:Linux下的用户分类有哪些?

宏观方面我们可以将Linux中的用户分为两类:


root:超级用户;当然我们windows操作系统也有root用户,比如我们打开某一个应用程序的时候使用管理员方式打开,就是Windows中的root。

普通用户:我们新建的用户,adduser



他们之间的差别主要是:

  • root用户基本不受权限的约束
  • 普通用户是授权限限制的

这两个用户之间是可以相互切换的,那么应该如何切换呢?


Linux中的所有用户,都需要有密码,无论是root还是其他,即便是多个普通用户,也都要设置密码

我们在普通用户情况下可以使用su或者su -来切换为root用户:

eg:whoami查看当前用户使用su进行切换>

1ffd0c410576499891cceb5ec5a717b7.png


这里提示我们需要输入密码(这里的密码是root账户的密码!)

输入验证完成之后我们可以看到目前是已经切换为root账户了>


ed2c3fc5b38e43a5b85f1399cce8cd04.png


那我们要退出root账户我们可以使用exit指令或者ctrl+d退出root用户>

4bc6ff04a86d4da68e879a63ce63ed05.png


使用su-切换的时候是直接使用root账号进行登录,他会直接到root账户的家目录中>


57b68b3c30e849c58db27f960f7a5550.png


当然也可以使用exit或者ctrl+d进行退出。

root用户也可以切换普通用户 直接su 用户名切换:


8b9d6c2f4445460daaa97a374c205781.png


我们可以看到root切换到普通用户是不需要输入密码的。(我是root,我就是这么嚣张,我想变成谁就变成谁

想退回root账户使用ctrl+d退回。

当我们想要对一个一条指令进行短暂的提权的时候可以使用sudo +指令>

f28a8dec8e4345fc880581cad553e7b2.png


这里提示我们输入账户(csdnyyds)的密码>我们输入密码回车之后就会看到这条指令的权限已经是root了>


483b59a2f3284348b4677bdeddcfd2db.png

因为每个系统不一样,一般来说对于一条指令进行提权之后的十几分钟内是不需要输入密码的>


2b7c63322b124b1284842010a060f83b.png【注意】:

我们使用adduser新建的用户,没有办法执行sudo,系统不信任你,除非将普通用户,添加到信任的白名单中。

把用户添加到信任白名单的方法>

  1. 使用root账号输入nano /etc/sudoers指令,进入编辑器后按↓进行下翻找到这个部分

ee701d1cee704ddeb2eb0d07e5632b2a.png

2.将我们的csdnyyds账户类似于root格式一样加在下面>

067d0e0bbbdd44f195c8b6c27e6d705b.png

  1. 最后按下ctrl+x退出->按y保存->回车退出

这样我们就把csdnyyds用户添加到系统的信任白名单中了。


问题二:什么叫做权限?

假如我是一名普通的腾讯视频用户,我们就没有权限观看vip电影,当我们成为腾讯视频vip用户就可以观看vip电影。

说白了权限就一句话:“一件事情是否允许被你做”这就是权限。


  1. 权限认证的是身份 (权限和“人”有关)
  2. 权限也和事物的“属性”有关。

文件的属性:可读、可写、可执行。

我们创建一个test.txt文件来观察一下他的属性.


546be4b7370742e0a8640f121b76bfe2.png


Linux中如何看待后缀:看用户需求。

我们再来看文件类型后面的代表什么意思:


ccd1c3c4383e498ca5a3fc4b694456d8.png


通过上面我们可以看到有拥有者、所属组、为什么没有其他人(other)呢?

Linux判断是否具有查看权限可以这样理解>


if(访问者==拥有者)
{
  //拥有者 >可以访问
}
else if(访问者==所属组)
{
  //所属组 >可以访问
}
else
{
  //other >不能访问
}

先判断是否为拥有者,如果不是再判断是否为所属组,如果还不是那么就是other了。

cc4cf2a131b3496aa0da7b550d82beaa.png

比如上面的test.txt文件来说:

对于拥有者可写、可读、不可执行;

对于所属组可读、可写、不可知性;

对于other可读、不可写、不可执行;

注:对于root用户来说不受任何权限限制


问题三:见一见没有权限是什么现象(看看就好了)


d529874f7cd94d11b7437341ed17f0d6.png


但是使用root账户可以对该文件随意访问(我是root,我就是这么嚣张,我想查看那个文件就查看那个文件,想修改用户中的那个文件就改那个文件):


fb7a4d9e94e14d458ce5a745d79a4927.png


问题四:权限的修改问题。

一般来讲可以更改权限的有两种人:拥有者、root。


chmod

**功能:**设置文件的访问权限

【语法】:chmod [参数] 权限 文件名

常用选项:

R -> 递归修改目录文件的权限

说明:只有文件的拥有者和root才可以改变文件的权限


chmod

① 用户表示符+/-=权限字符

+:向权限范围增加权限代号所表示的权限

-:向权限范围取消权限代号所表示的权限

=:向权限范围赋予权限代号所表示的权限 用户符号:

u:拥有者

g:拥有者同组用

o:其它用户

a:所有用户

07a306111220447299ff7d0d2e9b2255.png

我们也可以把rwx转为八进制数比如rwx可以转换为111、r-x可以转换为101。


7a57ace338b745b7a4b3ad3d07fa6c69.png



我们再来通过八进制数来对文件的权限进行修改>


cedfd7bbeff5404b8ffd5107d726b9a7.png


注:两种权限的设置方法掌握一种即可

chown

功能: 修改文件的拥有者

【语法】:chown [参数] 用户名 文件名


01365748f82e4120a3bdfaa44b5e677d.png


这里发现我们无法修改:

原因:我们把一个文件给一个人必须要征求对方的意见。

那么有两种解决方法:

  1. 给指令进行短暂的提权
  2. 使用root账户进行修改

ec031733e32e44cf9f1d399e0ebe3f6b.png


我们可以发现对指令进行短暂提权之后就可以进行直接修改。

我们再来使用root账号进行修改>


386184d432524222b6b17c473511d23e.png


相关文章
|
2月前
|
Linux Shell
Linux系统文件默认权限
Linux系统文件默认权限
|
25天前
|
Linux 数据安全/隐私保护
linux特殊权限!!
本文介绍了Linux系统中的特殊权限,包括suid、sgid和sbit。suid使普通用户在执行特定命令时获得root权限;sgid使用户在创建文件时继承目录的用户组权限;sbit确保用户只能删除自己在共享目录中创建的文件。此外,文章还讲解了chattr和lsattr命令,用于更改和查看文件的扩展属性,以及umask的概念和计算方法,帮助理解文件和目录的默认权限。
38 1
linux特殊权限!!
|
2月前
|
运维 监控 安全
Linux_权限理解(详细PLUS)
【10月更文挑战第3天】本文介绍了Linux系统中的权限管理基础,包括文件系统对象与权限关联、权限的继承性、字符与数字表示法的解读,以及用户、组与权限的动态交互。详细解析了`chmod`命令的高级用法和权限修改的风险,探讨了SUID、SGID和Sticky Bit等特殊权限的作用机制,并提出了基于角色的权限分配和定期权限审计的最佳实践。
70 11
|
2月前
|
Linux 应用服务中间件 nginx
Linux下权限设置之suid、sgid、sticky
Linux下权限设置之suid、sgid、sticky
|
2月前
|
Linux 数据安全/隐私保护 Windows
Linux_权限理解(详细PLUS
Linux_权限理解(详细PLUS
|
2月前
|
网络协议 Linux 网络安全
【Linux】用户和权限及实用操作------迅速了解用户和权限及其实用操作
【Linux】用户和权限及实用操作------迅速了解用户和权限及其实用操作
|
2月前
|
Linux Go 数据安全/隐私保护
Linux入门2——初识Linux权限
Linux入门2——初识Linux权限
28 0
|
4月前
|
存储 安全 Linux
Linux权限之谜:一步步教你如何解锁sudo权限并窥视/etc/shadow的神秘面纱!
【8月更文挑战第22天】在Linux中,`sudo`命令让授权用户能以其他用户(通常是root)身份运行命令。关键的安全文件`/etc/shadow`存储用户密码哈希,仅root可读。要使用`sudo`,需确保账户被列入`sudoers`文件中。系统管理员可通过`visudo`编辑此文件来赋予用户权限,例如添加`username ALL=(ALL) NOPASSWD: ALL`行。获得`sudo`权限后,可运行`sudo cat /etc/shadow`查看文件内容,但需谨慎操作以免影响系统安全。遵循最小权限原则,确保安全使用这些强大工具。
105 2
|
4月前
|
Linux 数据安全/隐私保护
在Linux中,什么是文件权限?什么是rwx权限模型?
在Linux中,什么是文件权限?什么是rwx权限模型?
|
4月前
|
Unix Linux Shell
Linux 权限简介
Linux 权限简介
47 1