专业的编程技术博客社区

网站首页 > 博客文章 正文

Linux权限灵魂拷问一:有权限就一定能访问吗? #运维

baijin 2024-10-02 11:11:54 博客文章 6 ℃ 0 评论

小伙伴们,我是杨哥。接下来进入到权限设置的灵魂拷问:有权限一定能访问吗?首先来建一个场景,在这边拷贝一个文件,简单一点到当前目录,看到了吗?当前目录下已经有这个文件了。

现在比如问一下tianyun用户对该文件有没有读权限?答案是肯定有的。因为第一,它不是所有者没关系,它不是组成员也没关系,但是它是其他人,其他人的权限是可以读的。这个文件在哪个地方?它的全路径在这,在root下的这个叫做hosts文件,看到了吗?全路径0K。

来试着cat一下root下的hosts,直接给一个permission denied。这就是回到我最初说的一个问题,要想访问首先得经过这样一个步骤。

·第一,要想进到我家里面,拿到我家里的钱,院子开开有钥匙,还能进到我的门,保险箱钥匙就算给你也没用,因为得先进院子再开门,保险箱钥匙给你了。

·先看根,就是一步一步的,也就说要访问到这个文件,不管是读还是写还是执行,首先得访问到路上的一切,第一跟目录,然后再是root目录,再是这个。也说这相当于我们家的院子,这相当于我们家的小门,这相当于最终保险柜的位置,这个位置是给到你权限的。看到了吗?兄弟们,是不是给到你权限了?但是前面看看能不能给到。

·看目录请使用-d。同样我问大家,tianyun用户刚才是被根给阻拦了吗?它对根没有权限吗?tianyun用户首先不是根目录的所有者,这个权限跟它没关系,也不是所属组的成员,这也没关系。但是tianyun用户是什么?是其他人。

对于一个目录来讲,各位如何执行并不可怕,读表示可以看到目录里面的内容,而执行表示可以进入到这个目录。如果连读和x都没有,基本上对一个目录进去看的权限是没有的。所以刚才可见并不是这层阻止。

接着往下看,-d root是这个地方吗?首先还是灵魂提问,第一个,tianyun用户是所有者吗?不是,所以这个权限跟它没关系。tianyun用户是这个组成员吗?也不是,所以跟它没关系。tianyun用户只不过是其他人,所以想要访问这个文件,得这一路上全部开挂才可以,至少对这一路上的每一级目录有读和执行才可以,否则连目录都进不去,何谈访问终极的位置。

这是我跟大家强调的,所以不能在家里面,通常家里面任何一个用户的家目录,包括在新建的用户在home下面,新建的每一个用户,不管是test01还是tianyun还是user01,它们的家目录都是默认给到一个比较私密的权限,别的用户是仿不了的,只有所有者不屑执行,其他用户没有权限。

所以这是我给大家讲到的,有权限一定能把握吗?不一定,得从根开始,每一级达到文件的位置,至少每一级目录都有读和执行权限。注意执行对于目录来讲不是执行,不是像脚本一样执行,是进入目录。所以认为对一个目录来讲,如果这个目录是需要用户访问下面的内容,读和执行是最起码的尊重。

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表