unix文件权限的基本介绍

亲爱的Lifehacker,我已经按照您的指南使用FreeNAS构建了一个家庭服务器,但是我不知道如何处理我的文件的权限。我能把它们都调成777吗,还是不安全?这东西对我来说就像中国菜,救命啊!...
Illustration for article titled A Basic Introduction to UNIX File Permissi***

亲爱的tl80,我已经按照您的指南使用FreeNAS构建了一个家庭服务器,但是我不知道如何处理我的文件的权限。我能把它们都调成777吗,还是不安全?这东西对我来说就像中国菜,救命啊!

诚恳地,被许可所困扰

亲爱的困惑,你并不孤单。事实上,我很长一段时间都被文件权限搞糊涂了,但其实很简单!下面是您应该关心的原因,以及如何理解保护文件安全的权限。

注意:这是一个非常大的主题,我们不可能涵盖所有内容。现在,我们将重点讨论UNIX权限,即Mac、Linux和FreeBSD系统(如FreeNAS)上的权限,并从基础开始。

为什么文件权限很重要

你可能认为一个好的Wi-Fi密码是防止数据被篡改的唯一方法,但正如我们之前向你展示的那样,侵入Wi-Fi网络非常容易。因此,即使这不太可能发生,你也应该确保你的文件不会被任何人盗取,特别是如果你的服务器上有更敏感的信息(比如你的计算机备份,其中可能包含许多重要的东西)。

http://tl80.com/5873407/how-to-crack-a-wi+fi-networks-wpa-password-with-reaver

此外,如果你在家里共享文件,确保某些家庭成员不能篡改不是他们的文件是很重要的。你不想有一天醒来却发现你的孩子不小心删除了你服务器上的所有内容,因为服务器对他或她开放,或者你不太懂技术的配偶移动了你所有的电影,所以你的家庭影院PC找不到你的库。稍加调整就可以大有帮助,并确保您的文件在任何和所有可怕的情况下都是安全的。

参与者:所有者、团体和公众

Illustration for article titled A Basic Introduction to UNIX File Permissi***

对于所有UNIX系统(Mac OS X、Linux和FreeNAS使用的FreeBSD),权限通常以相同的方式工作。每个文件和文件夹都有一个所有者和一个分配给它的组,该组决定允许谁访问该文件。所有者是唯一可以更改权限的用户,而且传统上他们拥有对文件的完全访问权限(也就是说,他们可以读写)。另一组用户可能有单独的权限(可能他们只能读取文件),其他人可能有不同的权限(可能他们根本看不到文件)。

这使得你可以很容易地将权限分配给这个家庭。比如说你,文件的所有者,想要完全访问,但是你不希望家庭的其他成员能够写入或删除这些文件。作为所有者,您可以拥有完全权限:可以读取、写入和执行(即打开文件夹或运行程序)。如果您希望您的其他家庭成员只读取这些文件,您可以将组“家庭”分配给这些文件并授予其只读权限。

第一件事:创建用户和组

Illustration for article titled A Basic Introduction to UNIX File Permissi***

在开始之前,您需要确保您的系统中确实有可以授予这些权限的用户和组。通常,这最好通过操作系统Linux、OS X或FreeNAS的用户和组设置来完成。为您家庭中的每个人添加用户,并创建您想要的任何组,如“家庭”组,并将必要的用户添加到该组。例如,如果您的名字是Donald,您将创建一个名为Donald的用户,以及您的女朋友daisy和您的同居侄子huey、dewey和louie的用户。所有这些用户都是名为family的组的一部分。

如何更改文件的所有者

更改权限最简单的方法是通过命令行(因为GUI选项通常会受到限制或混淆)。让我们举一个简单的例子。我的硬盘上有一个电影文件夹,位于/mnt/Media。要查看这些文件的所有者以及分配给它的组,我只需运行以下两个命令:

cd /mnt/Media ls -l

第一个命令将我移动到该文件夹,第二个命令列出该文件夹中的文件及其详细信息。在我的例子中,它会产生这样的结果:

heimdall:/mnt/Media# ls -l total 40 drwxrwxr-x 7 root wheel 512 Aug 9 20:07 Games drwxrwxr-x 126 root wheel 17920 Nov 10 23:25 Movies drwxrwxr-x 2 root wheel 2560 Aug 10 23:15 Music Videos drwxrwxr-x 17 root wheel 1024 Nov 26 20:45 TV Shows

这表明每个文件夹的所有者是root,分配给每个文件夹的组是wheel(为管理员保留的组)。假设我想成为文件的所有者,并且我想让一个组(我的家庭)访问这些文件。为此,我运行chown,它代表“Change Owner:”

chown -R donald Movies

这会将Movies文件夹的所有者更改为用户donald。R标志使其递归,这意味着它还将更改Movies中每个文件夹和文件的所有者(因此我还拥有我的每个Movies,而不仅仅是它们所在的文件夹)。为了确保它正常工作,您可以再次运行ls-l以查看:

heimdall:/mnt/Media# ls -l total 40 drwxrwxr-x 7 root wheel 512 Aug 9 20:07 Games drwxrwxr-x 126 donald wheel 17920 Nov 10 23:25 Movies drwxrwxr-x 2 root wheel 2560 Aug 10 23:15 Music Videos drwxrwxr-x 17 root wheel 1024 Nov 26 20:45 TV Shows

对要拥有的任何其他文件夹重复此过程。

如何更改与文件关联的组

更改组与更改所有者类似。假设我想将我的家庭组分配给我所有的电影(这样我的家庭就可以在自己的电脑上观看这些电影)。为此,我运行以下命令:

chgrp -R family Movies

此命令将Movies文件夹的组及其内容更改为family。同样,对您希望他们访问的所有其他文件夹重复此过程。

权限:读、写和执行

球员只是等式的前半部分。接下来您需要担心的是实际的权限。对于给定的文件或文件夹,您需要担心三件事:

  • 文件的所有者可以用它做什么
  • 它的团队能用它做什么
  • 公众能用它做什么

让我们回到电影文件夹的示例。如果我们返回ls-l查看这些文件,我们会得到以下输出:

heimdall:/mnt/Media# ls -l total 40 drwxrwxr-x 7 donald family 512 Aug 9 20:07 Games drwxrwxr-x 126 donald family 17920 Nov 10 23:25 Movies drwxrwxr-x 2 donald family 2560 Aug 10 23:15 Music Videos drwxrwxr-x 17 donald family 1024 Nov 26 20:45 TV Shows

看到左边那个乱七八糟的drwxrwxr-x了吗?这实际上是每个文件夹的权限列表。d表示文件是一个目录。在那之后,前三个字母(rwx)是所有者可以对该文件执行的操作。第二个三个字母表示团队可以做什么,最后三个字母表示公众可以做什么。r提供读取权限,w提供写入权限,x提供执行权限(允许他们打开文件夹或执行程序)。破折号(-)表示尚未授予特定权限。

因此,在上述情况下,这些文件可以由donald和family(rwxrwx)读取和写入,但只能由public(r-x)读取。我们可能想改变这一点,因为我们不想让家人写入文件,也不想让公众看到任何东西。因此,我们可以通过运行以下命令来更改这些权限:

chmod -R 750 Movies

这会将这些权限更改为drwxr-x--,这意味着所有者可以执行任何操作(rwx),组族可以读取和执行文件(r-x),而公共用户可以执行任何操作(--)。

那么我们是如何在上面的命令中找到750这个数字的呢?每个数字代表一个参与者:所有者、组和公众。权限创建如下数字:

r=4、w=2、x=1和rwx=7

因为我们希望所有者做所有的事情,所以第一个数字变成了7。组可以读取和执行,这是4+1=5。公共不能做任何事情,这是0。因此,我们给文件权限750。有意义吗?如果我们希望组能够编写和执行,而不是公共的,那么我们应该运行:

chmod -R 770 Movies

这完全取决于你想做什么。对你想要调整的其他文件和文件夹重复这个过程,你就可以很好地找到一个更安全、更安全的共享文件集。

真的,生活黑客

标题图片从库齐(Shutterstock)和file404(Shutterstock)重新混合。

  • 发表于 2021-05-25 07:22
  • 阅读 ( 110 )
  • 分类:互联网

你可能感兴趣的文章

新增用户(adduser)和用户添加(useradd)的区别

...和Debian。计算机最常做的任务是浏览、创建、移动和删除文件。有两种方法可以有效地处理文件。即使用命令行界面(CLI)或图形用户界面(GUI)。在Linux中使用CLI更好,因为它灵活、快速。命令是使用CLI发出的,Linux包含一个...

  • 发布于 2020-10-19 22:40
  • 阅读 ( 187 )

解释了chmod命令和linux文件权限

...Linux风格,但是现在你很困惑,因为你对终端命令和Linux文件权限一无所知? ...

  • 发布于 2021-03-25 12:15
  • 阅读 ( 171 )

如何隐藏linux上的文件和文件夹

...认识的人想使用你的电脑,你可能会想隐藏一些你的私人文件和文件夹。 ...

  • 发布于 2021-03-25 15:00
  • 阅读 ( 406 )

如何使用ipad访问带有服务器消息块的windows或mac文件

文件应用程序是一种中央存储库,允许您处理存储在iPad、网络服务器和云存储服务上的文件。 ...

  • 发布于 2021-03-27 07:51
  • 阅读 ( 274 )

如何在mac上设置文件权限

与所有主要操作系统一样,macOS允许您使用一组复杂的文件权限来限制对文件的访问。您可以使用Finder应用程序或Mac终端中的chmod命令自行设置这些设置。下面是方法。 使用finder设置mac文件权限 如果您想在不使用终端的情况下...

  • 发布于 2021-04-02 05:26
  • 阅读 ( 184 )

如何在linux上更改帐户密码

...的意见在特别出版物800-63-3:数字认证指南中公开。 passwd文件 过去,类Unix操作系统在“/etc/passwd”文件中存储密码以及有关每个帐户的其他信息。今天,“/etc/passwd”文件仍然保存帐户信息,但加密的密码保存在“/etc/shadow”文...

  • 发布于 2021-04-02 22:58
  • 阅读 ( 148 )

如何在windows10的ubuntubashshell中更改用户帐户

...“letmein”,则Linux用户帐户的名称为“bob”,并且具有主文件夹“/home/bob”。当您需要在shell中输入密码时,您必须输入“letmein”。这些凭据完全独立于您的Windows用户帐户和密码。 您安装的每个Linux环境都有自己的配置,包括...

  • 发布于 2021-04-06 15:47
  • 阅读 ( 186 )

如何在windows中访问ubuntu bash文件(以及bash中的windows系统驱动器)

从商店安装的Linux环境(比如Ubuntu和openSUSE)将它们的文件保存在一个隐藏的文件夹中。您可以访问此文件夹来备份和查看文件。您还可以从bashshell访问Windows文件。 更新:从Windows10 2019年5月的更新开始,现在有了一种从Windows应...

  • 发布于 2021-04-06 16:05
  • 阅读 ( 198 )

当你被锁在外面时,如何重新访问你的丛服务器

... 问题是,在Windows注册表(或macOS和Linux上基于文本的配置文件)的幕后深处,存在一个关于如何存储帐户的登录凭据的问题。通过潜入设置并擦除为您的登录存储的令牌,您可以强制Plex再次请求它们并获得一个新的无错误登录...

  • 发布于 2021-04-07 07:54
  • 阅读 ( 171 )

如何在mac上禁用系统完整性保护(以及为什么不禁用)

...1 El Capitan使用名为“系统完整性保护”的新功能保护系统文件和进程。SIP是一个内核级的特性,它限制了“root”帐户的功能。 这是一个很好的安全特性,几乎所有人——甚至是“超级用户”和开发人员——都应该启用它。但是...

  • 发布于 2021-04-07 23:38
  • 阅读 ( 303 )
rwyx1499
rwyx1499

0 篇文章

相关推荐