Linux 主目录的默认权限

Linux 主目录的默认权限

这个问题Unix 和 Linux:/home/ 上的权限为 755涵盖了我的问题的一部分,但是:

755在许多情况下,主目录都有默认权限。但是,这可以让其他用户进入您的主文件夹并查看内容。

将权限更改为711(rwx--x--x) 意味着他们可以遍历文件夹但看不到任何内容。如果您有authorized_keysSSH,则这是必需的 - 如果没有它,SSH 在尝试使用公钥访问系统时会出错。

有没有什么方法可以设置文件夹/目录,以便 SSH 可以访问authorized_keys,postfix/mail 可以访问它需要的文件,系统可以访问配置文件,但不需要所有的东西走系统?

我可以手动创建文件夹711,设置~/.ssh/authorized_keys644,但记住每次为每个配置都这样做很容易出现(我的)错误。

我本以为默认情况下所有文件都是私有的,除非专门共享,但有两个 Ubuntu 盒子(诚然是服务器盒子)每个人都可以读取所有新创建的文件。作为默认设置,这似乎有点偏离。

答案1

如中所述手动的默认情况下,主文件夹是通过useradd复制/etc/skel文件夹创建的,因此,如果您更改其子文件夹权限,则使用默认 useradd 创建的所有用户都将拥有所需的权限。同样适用于添加用户。编辑 /etc/login.defs 中的“UMASK”将更改创建主文件夹时的权限。

如果您想要更多的用户安全性,您可以加密主文件夹并将 ssh 密钥放入/etc/ssh/%u而不是/home/%u/.ssh/authorized_keys.

答案2

应如何设置权限取决于总体安全策略和用例。在过去,Unix 机器是真正的多用户系统,有数百个用户通过串行终端(例如 DEC VT-220)同时登录。在这种情况下,你的观点有时是一个问题。 Unix 在大学等学术环境中被大量使用,在这些环境中,安全性不太受关注,至少不如无缝协作。

如今,Unix(尤其是 Linux 的化身)被用作服务器系统,在这种情况下限制主目录(无论如何不会有太多)是毫无意义的。或者,它用于桌面,通常只有一个用户,在这种情况下限制主目录也是毫无意义的。

因此,从某种角度来说你是对的。然而,这在很大程度上无关紧要最多用例(尤其是单用户情况)及其风险状况,因此,主目录权限 0755 与 0700、0711 或 0777 一样好。

附录

然而,即使单个用户也可能拥有多个用户帐户,例如默认帐户、用于网上银行的帐户、以及用于一般网上冲浪的帐户等,使得帐户被用于一种沙箱。在这种情况下,需要更严格的许可。

相关内容