为什么其他用户可以看到我的主文件夹中的文件?


Answers:


32

Public您的主目录(/home/user)中存在一个文件夹,用于与其他用户共享文件。如果其他用户想要访问此Public文件夹,则应在主目录上设置世界的执行位

如果您不需要允许其他人访问您的主文件夹(其他人或用户喜欢www-data使用Web服务器),则可以使用chmod o-rwx "$HOME"(从“其他”中删除读/写/执行,等同于chmod 750 "$HOME"默认权限为750) )。否则,您也应该更改umask设置,以防止默认情况下新创建的文件获得世界的读取权限。

对于系统范围的配置,请编辑/etc/profile;可以在中配置每个用户的设置~/.profile。我希望所有用户都使用相同的策略,因此我将编辑/etc/profile文件并添加以下行:

umask 027

除非您在外壳中,否则您需要重新登录以应用这些更改。在这种情况下,您可以umask 027在外壳中运行。

现在要修复现有权限,您需要从其他权限中删除读/写/执行权限:

chmod -R o-rwx ~

现在,如果您决定将~/Public文件夹共享给所有人,请运行以下命令:

  • chmod o+x ~-允许所有人进入目录(x),但不能获得目录列表(r不应添加)
  • find ~/Public -type f -exec chmod o+r {} \; -允许所有人读取其中的文件 ~/Public
  • find ~/Public -type d -exec chmod o+rx {} \; -允许所有人进入目录并列出其内容

如果您使用的是GNU coreutils(例如,在Ubuntu上,而不是在仅具有的嵌入式系统上busybox),则使用find和的前两个命令chmod可以被该单个命令替换,该命令递归使文件夹和文件可读(并添加执行(降序))位用于目录):

chmod -R o+rX ~/Public


7

根据Mark Shuttleworth所说

“ Ubuntu系统的大多数用户要么专有使用该计算机(个人笔记本电脑),要么与亲朋好友共享。我们认为共享该计算机的人是受信任的,或者可以入侵该计算机(启动)从USB!)变得微不足道。结果是,几乎没有收益”

...删除这些权限。


12
我认为在Server版本中具有相同的行为是一个安全漏洞
warvariuc

4
那是个疯狂的解释。除人员帐户外,还有一些人员可以用来隔离应用程序的技术帐户。此外,还有很多有关如何设置本地ftp服务器的说明,该ftp服务器实际上共享了计算机上的帐户。
Barafu Albino 2015年

4
我知道这是旧线程,但是认为这是愚蠢的决定。假设有一个用户运行了app / script(可能是无意的),该app / script能够从任何其他配置文件读取和发送文件。
mauron85


1

我认为,可以通过使用-X选项用chmod替换最后两个find命令来改善Lekensteyn的答案(请注意大写X)。两个find命令可以替换为

chmod -R o+rX ~/Public

这在文件和目录之间进行了适当区分,但是确实具有允许其他人运行可执行文件的附加效果。


0

由于您感兴趣的是隐私(从应用的标签来看),因此设置权限很可能不足(请参阅ignis的答案)。答案可能类似于加密的主目录。该解决方案专门针对计算机另一用户的攻击而设计。当然,它将无法阻止其他用户损坏您的文件(通过简单地删除~/.Private目录,从而删除所有文件),但是如果没有密码,他们将无法挂载目录并查看文件。

最简单的方法是在安装过程中,出现一个复选框,指出“加密主目录”,您需要选择该复选框。

由于您不太可能只想为此进行重新安装(并且由于它仍然承担不重新安装而进行安装的所有风险),因此可以执行以下操作:

sudo apt-get install encryptfs-utils
encryptfs-migrate-home

-1

如果您确实需要高级别的安全性:请重新安装并确保选择用于加密整个磁盘的选项。这将需要密码才能启动机器。当然,您可能还会在此之上再次加密您的主文件夹,这会降低性能。尽管对于正常使用而言并不明显。

请注意,加密主文件夹将禁用Dropbox等应用程序。Dropbox并不是一种始终尊重隐私的安全存储,因此这可能是一个陈词滥调。但是,如果您确实需要云中的安全和私有存储,我个人建议MEGAsync,因为只有您才具有访问数据的密钥。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.