在 Ubuntu 上,如果希望任意用户均无法访问加密文件夹,可以使用 gocryptfs 或 CryFS,因为它们采用基于 FUSE(用户空间文件系统)的加密方式,不暴露解密密钥,即使高级用户也无法解密数据。
方案 1:使用 CryFS(更强匿名性)
CryFS 会随机拆分加密文件,不暴露目录结构,适用于云存储同步(如 Google Drive)。
1. 安装 CryFS
sudo apt update
sudo apt install cryfs
2. 创建加密文件夹
mkdir ~/secure_data ~/secure_data_decrypted
cryfs ~/secure_data ~/secure_data_decrypted
系统会要求你输入一个加密密码。
3. 访问加密数据
cryfs ~/secure_data ~/secure_data_decrypted
你可以在 ~/secure_data_decrypted 内部存储数据。
4. 取消挂载
fusermount -u ~/secure_data_decrypted
为什么高级用户也无法访问?
目录结构被隐藏,高级用户也无法还原真实的文件树。
文件内容拆分存储,即使高级用户访问 ~/secure_data,也只能看到一堆随机的文件块。
无法强行解密,除非输入正确的密码。
方案 2:使用 gocryptfs(推荐)
gocryptfs 是 encfs 的更安全替代品,支持 AES-GCM 加密,并且不会暴露目录结构。
1. 安装 gocryptfs
sudo apt update
sudo apt install gocryptfs
2. 创建加密文件夹