温馨提示×

linux openssl怎样加密文件

小樊
43
2026-09-10 13:09:20
栏目: 云计算

在 Linux 下使用 OpenSSL 加密文件常见有几种方式,下面按最常用、最实用的方式给你说明。


一、使用 OpenSSL 对称加密(推荐)

1️⃣ 加密文件(AES-256-CBC)

openssl enc -aes-256-cbc -salt -in 原文件 -out 加密文件.enc

示例:

openssl enc -aes-256-cbc -salt -in test.txt -out test.txt.enc

执行后会提示输入密码。


2️⃣ 解密文件

openssl enc -d -aes-256-cbc -in 加密文件.enc -out 解密文件

示例:

openssl enc -d -aes-256-cbc -in test.txt.enc -out test.txt

二、不交互输入密码(脚本可用)

加密(密码在命令中)

openssl enc -aes-256-cbc -salt -in file.txt -out file.enc -pass pass:123456

解密

openssl enc -d -aes-256-cbc -in file.enc -out file.txt -pass pass:123456

⚠️ 注意:密码写在命令行有安全风险(会被历史记录看到)


三、使用密钥文件(更安全)

生成密钥

openssl rand -base64 32 > key.bin

加密

openssl enc -aes-256-cbc -salt -in file.txt -out file.enc -pass file:./key.bin

解密

openssl enc -d -aes-256-cbc -in file.enc -out file.txt -pass file:./key.bin

四、查看加密算法支持

openssl enc -list

常用算法:

  • aes-256-cbc(推荐)
  • aes-128-cbc
  • des3(老,不推荐)

五、常见错误 & 注意点

✅ 加密后原文件还在,需手动删除

rm 原文件

✅ 解密失败常见原因:

  • 密码错误
  • 算法不一致
  • 文件被截断

六、如果只是“简单加密”

也可以考虑:

  • gpg -c file(比 openssl 更友好)
  • zip -e file.zip file

如果你有具体需求(如:
✅ 自动化脚本
✅ 公钥/私钥加密
✅ 大文件
✅ 和 Windows 互通)
可以告诉我,我给你更合适的方案。

0