在 Archlinux 上设置本地共享文件夹(在 ext4 文件系统上)

在 Archlinux 上设置本地共享文件夹(在 ext4 文件系统上)

让我们假设以下场景。我们有两个用户值得信赖不受信任. 用户不受信任用于访问互联网和下载数据,然后必须对其进行审核并提供给用户值得信赖。我目前所做的是通过不受信任账户,登录为并审查数据,然后将审查的数据移至值得信赖并将数据文件的权限设置为trusted:users。但是这是一个相当耗时的过程,我想加快速度。所以我创建了一个共享文件夹作为使用以下命令:

mkdir /srv/shared
chgrp users /srv/shared
chmod g+w,o-rx /srv/shared
setfacl -m d:g:users:rwx /srv/shared

有了这两者值得信赖不受信任可以创建、读取、写入、删除和移动此目录中的文件。我没有测试脚本的执行,但我认为我不需要它,因为该文件夹中的任何东西都应被视为潜在危险。

不幸的是我注意到如果不受信任在该文件夹中创建一个文件并值得信赖用途

mv -i /srv/shared/created.by.untrusted ~

用户值得信赖最终在他的主目录中得到了文件 created.by.untrusted,该文件仍然归不受信任。 用户值得信赖可以编辑和删除该文件,但不能将所有权更改为trusted:users。这是一个潜在的安全隐患吗?有没有办法trusted:users在不使用帐户?为了解决这个问题,我考虑创建一个新的 NTFS 文件系统分区并将其挂载到 /srv/shared。在那里创建的文件应该没有永久所有者。但这种方法的问题是分区大小必须受到固定数量的限制。无论如何,这种方法对我来说似乎有点“过头了”。还有其他方法吗?

答案1

在我看来,Linux 访问策略不允许非特权用户在不更改 i-node 的情况下更改文件所有权。这些操作包括移动、重命名和编辑。复制时,您会更改 i-node,就像您创建具有默认所有权的新文件一样。因此,只需将created.by.untrusted文件复制到用户的主目录trusted,然后删除原始文件 :)。

然后,如果您真的担心文件被复制,只需阻止不受信任的用户访问您要存储这些文件的文件夹,或使他们无法读取这些文件。

相关内容