Pet*_*ter 44 linux unix encryption
我正在寻找一个实用程序来加密 Linux 中的某些目录。我不是在寻找任何全盘加密服务,而只是为了将文件存储在云中而加密一些目录。一旦检索到它们,我就必须先解密它们,然后才能访问它们。希望为几个目录(大小为几百 GB)执行此操作。有任何想法吗?最好是基于 CLI 的。
zer*_*ro0 50
我只使用 GnuPG 来完成这项任务。这些文件夹首先被打包到一个 TAR-GZ 档案中:
tar czf files.tar.gz /path/to/my/files
Run Code Online (Sandbox Code Playgroud)
如果尚未完成,您需要先创建一个 GPG 私钥/公钥对:
gpg --gen-key
Run Code Online (Sandbox Code Playgroud)
按照说明操作。默认值应该足以进行第一次测试。会出现这样的东西:
gpg (GnuPG) 2.0.18;版权所有 (C) 2011 Free Software Foundation, Inc.
这是免费软件:您可以自由更改和重新分发它。
在法律允许的范围内,不提供任何保证。
请选择您想要的密钥类型:
(1) RSA 和 RSA(默认)
(2) DSA 和 Elgamal
(3) DSA(仅签名)
(4) RSA(仅签名)
你的选择?1
RSA 密钥的长度可能在 1024 到 4096 位之间。
你想要什么键大小?(2048) 4096
请求的密钥大小为 4096 位
请指定密钥的有效期。
0 = 密钥不会过期
= 密钥在 n 天后到期
w = 密钥在 n 周后到期
m = 密钥在 n 个月后到期
y = 密钥在 n 年后到期
密钥对什么有效?(0)
密钥根本不会过期
这样对吗?(y/N) 是
GnuPG 需要构造一个用户 ID 来标识您的密钥。
真实姓名:文件加密密钥
电子邮件地址:admin@company.org
评论:文件加密密钥
您选择了此用户 ID:
《文件加密密钥(File Encryption Key)》
更改 (N)ame、(C)omment、(E)mail 或 (O)kay/(Q)uit?○
您将被要求输入密钥的密码。强烈建议使用强的。反正文件加密不需要,以后批量使用不用担心。
如果一切都完成了,你的屏幕上会出现这样的东西:
我们需要生成大量随机字节。执行是个好主意
其他一些操作(在键盘上键入,移动鼠标,使用
磁盘)在素数生成期间;这给出了随机数
生成器有更好的机会获得足够的熵。
我们需要生成大量随机字节。执行是个好主意
其他一些操作(在键盘上键入,移动鼠标,使用
磁盘)在素数生成期间;这给出了随机数
生成器有更好的机会获得足够的熵。
gpg:标记为最终受信任的密钥 FE53C811
创建并签名的公钥和私钥。
gpg:检查信任数据库
gpg:需要 3 个边际(s),需要 1 个完整(s),PGP 信任模型
gpg:深度:0 有效:1 签名:0 信任:0-、0q、0n、0m、0f、1u
酒吧****/******** 2013-03-19
钥匙指纹 = **** **** **** **** **** **** **** **** **** ****
uid 文件加密密钥(File Encryption Key)
子****/******** 2013-03-19
现在您可能需要导出公钥文件以便在其他机器上导入它:
gpg --armor --output file-enc-pubkey.txt --export 'File Encryption Key'
Run Code Online (Sandbox Code Playgroud)
这File Encryption Key是我在密钥生成过程中输入的名称。
现在我在新创建的存档上使用 GnuPG:
gpg --encrypt --recipient 'File Encryption Key' files.tar.gz
Run Code Online (Sandbox Code Playgroud)
您现在有一个files.tar.gz.gpg已加密的文件。
您可以使用以下命令对其进行解密(系统会要求您输入密码):
gpg --output files.tar.gz --decrypt files.tar.gz.gpg
Run Code Online (Sandbox Code Playgroud)
这就是整个魔法。
确保备份您的密钥!永远不要忘记您的密码!如果不备份或忘记,您将拥有数千兆字节的数据垃圾!
使用以下命令备份您的私钥:
gpg --armor --output file-enc-privkey.asc --export-secret-keys 'File Encryption Key'
Run Code Online (Sandbox Code Playgroud)
好处
小智 28
就我而言,我主要使用两种方法:
tar cvf backup.tar /path/to/folder
Run Code Online (Sandbox Code Playgroud)
您可以从 tar 命令中删除 [v] 开关以关闭详细模式。
openssl aes-128-cbc -salt -in backup.tar -out backup.tar.aes -k yourpassword
Run Code Online (Sandbox Code Playgroud)
您可以将 aes-128-cbc 更改为 openssl 支持的任何其他密码方法 (openssl --help)。
openssl aes-128-cbc -d -salt -in backup.tar.aes -out backup.restored.tar
Run Code Online (Sandbox Code Playgroud)
它会要求输入密码。
zip -r -0 -e backup.zip /path/to/folder
Run Code Online (Sandbox Code Playgroud)
它会要求输入密码。
这样做的一个优点:它将更好地与基于 Windows 的系统一起运行。
chi*_*org 22
如果您不想使用公钥/私钥对加密文件,而只想使用带密码的对称加密,请使用以下命令:
gpg --symmetric --cipher-algo aes256 files.tar.gz
Run Code Online (Sandbox Code Playgroud)
系统会要求您输入密码。之后,一个名为的加密文件files.tar.gz.gpg创建。
解密使用命令
gpg --decrypt files.tar.gz.gpg > files.tar.gz
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
78222 次 |
| 最近记录: |