如何防止标准用户访问ubuntu -12-04桌面中的其他文件目录?

我需要阻止/限制标准用户访问bin,boot,dev等目录,lib,media?

如果从终端CTRL + ALT + T输入以下命令

ls -la / 

你应该看到这样的东西

 warren@min:~$ ls -la / total 84 drwxr-xr-x 22 root root 4096 Jun 20 16:13 . drwxr-xr-x 22 root root 4096 Jun 20 16:13 .. drwxr-xr-x 2 root root 4096 Jun 20 15:58 bin drwxr-xr-x 3 root root 4096 Jun 20 16:15 boot drwxr-xr-x 15 root root 4080 Jul 4 09:12 dev drwxr-xr-x 120 root root 4096 Jul 4 09:38 etc drwxr-xr-x 3 root root 4096 Mar 20 14:50 home lrwxrwxrwx 1 root root 37 Jun 20 16:13 initrd.img -> /boot/initrd.img-3.2.0-48-generic-pae lrwxrwxrwx 1 root root 37 Jun 3 13:51 initrd.img.old -> /boot/initrd.img-3.2.0-45-generic-pae 

列表缩短

这表明所有目录都已受到限制。 让我们举个例子。

 drwxr-xr-x 2 root root 4096 Jun 20 15:58 bin 

第一位drwxr-xr-x描述了权限,然后我们拥有所有者root然后是组root后跟大小,然后是时间和日期,最后是名称。

权限drwxr-xr-x可以进一步分为4个部分

在这种情况下,第一个字符d表示这是一个目录,但您也会看到l表示链接,而对于普通文件。

在这种情况下,接下来的3个字符rwx是所有者的权限。 在这种情况下,我们有r所有者可以读取文件或目录w写和x执行。

接下来的三个是针对该组的成员,在这种情况下, rx表示组root但不是root用户的人可以读取和执行但不能写入。

在这种情况下,最后三个字符适用于其他所有人rx为每个人提供读取和执行访问权限但不写入。

对于目录d类型,执行权限意味着您可以输入目录。 对于普通文件-类型或链接l这表示它可以作为程序运行。

对于您询问普通用户的目录,已经限制读取和执行。


如果你想更改这些权限,你可以使用这里描述的chmod命令,或者通过运行nautilus作为root gksudo nautilus以图形方式执行

但正如bodi.zazen所指出的那样,不推荐用于系统目录和文件。

您无法真正限制用户访问这些目录,因为他们需要访问库和二进制文件,例如/ bin / bash。

IMO您有两种限制用户访问的方法。

第一个是标准权限。 但是,一般情况下,在系统文件上开始使用chownchmod是一个非常糟糕的主意,因为您可能会破坏Ubuntu并需要重新安装。 IMO chown和chmod应仅使用主目录或共享目录中的文件,而不应使用系统目录/ bin或/ lib

原因是所有用户都需要访问二进制文件和库,例如/bin/bash

如果您需要限制超出标准权限的使用,请使用apparmor。

使用apparmor的一种简单方法是使用来宾帐户。 如果您需要超出限制,则必须编写自己的配置文件作为模板,使用此模板:

http://ubuntuforums.org/showpost.php?p=9799756&postcount=5

您需要对系统文件以及允许和限制的内容有一个深入的了解。

或者你可以使用像LXC或chroot jails这样的工具,但是,IMO,它们不容易配置,需要更多的维护,并且安全性较低(很难打破Apparmor,更容易打破监狱)。