在 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. 创建加密文件夹
mkdir