如何防止标准用户访问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您有两种限制用户访问的方法。
第一个是标准权限。 但是,一般情况下,在系统文件上开始使用chown
和chmod
是一个非常糟糕的主意,因为您可能会破坏Ubuntu并需要重新安装。 IMO chown和chmod应仅使用主目录或共享目录中的文件,而不应使用系统目录/ bin或/ lib
原因是所有用户都需要访问二进制文件和库,例如/bin/bash
如果您需要限制超出标准权限的使用,请使用apparmor。
使用apparmor的一种简单方法是使用来宾帐户。 如果您需要超出限制,则必须编写自己的配置文件作为模板,使用此模板:
http://ubuntuforums.org/showpost.php?p=9799756&postcount=5
您需要对系统文件以及允许和限制的内容有一个深入的了解。
或者你可以使用像LXC或chroot jails这样的工具,但是,IMO,它们不容易配置,需要更多的维护,并且安全性较低(很难打破Apparmor,更容易打破监狱)。