我对 Ubuntu 上的加密部分还不熟悉。
有没有办法从终端用密码加密文件和文件夹?无需使用真加密或者守墓人ETC。
答案1
你可以使用 gpg 加密和解密文件
加密文件
gpg -c file.to.encrypt
解密文件
gpg file.to.encrypt.gpg
但是 gpg 不会处理整个目录。对于整个目录,您有几种选择,ecryptfs 很受欢迎。
# Install if ecryptfs-utils if needed
sudo apt-get install ecryptfs-utils
# Make an encrypted directory
ecryptfs-setup-private
这将使目录变为“私有”。您放入目录的任何数据Private
将在您注销时自动加密,并在您登录时解密。
如果您想要不同的行为或不同的目录...
mkdir ~/secret
chmod 700 ~/secret
sudo mount -t ecryptfs ~your_user/secret ~your_user/secret
将您的数据放入〜/ secrete
加密
sudo umount ~your_user/secret
解密
sudo mount ./secret ./secret -o key=passphrase,ecryptfs_cipher=aes,ecryptfs_key_bytes=16,ecryptfs_passthrough=no,ecryptfs_enable_filename_crypto=yes
提示:为第二个命令创建一个别名。
看http://bodhizazen.com/Tutorials/Ecryptfs或者管理员 ecryptfs了解更多详细信息。
答案2
ecryptfs 肯定会加密文件和文件夹,确保写入磁盘的数据始终是加密的,并且需要访问明文上下文的应用程序可以无缝地获取这些数据。
但是,具体回答您的问题,您当然可以使用密码和 gpg 加密单个文件:
gpg -c /tmp/file > /tmp/file.gpg
要加密文件夹,您应该将 tar 与 gpg 结合使用:
tar zcvf - /tmp/directory | gpg -c > /tmp/directory.tar.gz.gpg
答案3
encfs
, 作为社区文档建议,效果很好。
安装:为了安装,你必须先添加宇宙存储库
然后发出命令:
sudo apt install encfs
然后在终端中输入:encfs encrypted visible
在当前目录中创建名为的文件夹encrypted
并visible
设置密码。
例如,如果我在默认(主)目录(用于pwd
查看您所在的位置),这将为我创建文件夹/home/ijoseph/visible
和,因为我的用户名是。/home/ijoseph/encrypted
ijoseph
visible
可写入和读取,并将其数据加密存储在encrypted
文件夹中。
要“隐藏”数据并仅保留文件夹的加密版本,请键入
fusermount -u visible
。通常,为了保护数据,您需要在注销或移动笔记本电脑之前执行此操作。visible
键入 后,您会注意到文件夹中的所有内容都会消失ls
。
要重新挂载(重新获得visible
对文件夹的读/写访问权限),请encfs encrypted visible
再次运行。