如何隐藏放入 cryptfs 文件系统中的文件的加密版本?

如何隐藏放入 cryptfs 文件系统中的文件的加密版本?

假设我创建一个加密文件夹并向其中添加一个文件:

# mount -t ecryptfs /srv /srv
# echo word > /srv/file

文件的内容unavailable仅在卸载文件系统后才存在。

如何配置ecryptfs(或在 Linux 上使用替代加密系统)以避免文件内容随时未加密?


一种可能性是运行一个脚本,ecryptfs每次添加文件时都会挂载和卸载文件系统,但必须提供挂载密码,这会产生安全风险。

答案1

我不确定在此用例中您想要的是加密文件系统。

为什么不使用alias(参见男人别名)来使用该gpg工具(请参阅男子GP)在打开/关闭时解密/加密指定的文件/文件夹?

可以找到这样的示例@我的要点页面(工作示例)

虽然我知道这可能不是最理想的解决方案,但它应该提供一种仅在需要时加密/解密文件/文件夹的方法,而不是安装磁盘并始终解密文件/文件夹。

答案2

一般回答(因为我的专业知识是AIX EFS,而不是linux)

在谈论加密文件时,您必须区分“存储”和“内存中”。我希望您遇到的是文件内容以明文形式“在内存中” - 而(我确信)它们被加密“在磁盘上,也称为存储”或也称为“静态”。

测试您执行:
* 作为非 root 用户A 将文件添加到您的加密文件系统,模式 644
* 作为非 root 用户B - 您不应该知道加密密钥,因此理想情况下您看不到“明文”,更好的是无法访问。
* 作为root,理想情况下,无权访问(没有解密密钥),最坏的情况下,可以看到加密的数据。

在 AIX 上,所以我假设 Linux 是相同的:您将需要一些凭据,允许您访问(用于加密/解密的密钥)“静态”数据和/或访问相同“的缓存表示”缓存内存中的数据 - 高于传统的 *NIX DAC 访问机制。

然而,我的假设可能是错误的。如果 Linux 对每个分区而不是每个文件进行加密 - 访问加密分区可能意味着唯一剩下的保护是通过经典 DAC 和/或 ACL 机制(例如,通过 SELinux 和/或 AppArmor 提供的额外保护)

相关内容