温馨提示×

怎样用linux openssl加密

小樊
34
2026-10-01 15:15:20
栏目: 云计算

在 Linux 下使用 OpenSSL 加密,常见有几种场景。下面按最常用、最实用的方式给你讲,并附上命令示例。


一、用 OpenSSL 加密文件(对称加密,最常用)

1️⃣ 使用密码加密(AES-256)

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

示例:

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

执行后会提示输入密码。


2️⃣ 解密文件

openssl enc -d -aes-256-cbc -in 加密文件 -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.txt.enc -pass pass:123456

解密

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

三、使用 Base64 编码(方便传输)

openssl enc -aes-256-cbc -salt -in file.txt -out file.txt.enc -a

解密:

openssl enc -d -aes-256-cbc -in file.txt.enc -out file.txt -a

四、使用公钥 / 私钥加密(非对称加密)

1️⃣ 生成 RSA 密钥

openssl genrsa -out private.pem 2048
openssl rsa -in private.pem -pubout -out public.pem

2️⃣ 用公钥加密

openssl rsautl -encrypt -inkey public.pem -pubin -in file.txt -out file.enc

3️⃣ 用私钥解密

openssl rsautl -decrypt -inkey private.pem -in file.enc -out file.txt

⚠️ 注意:RSA 不能直接加密大文件,通常用来加密「对称密钥」。


五、查看 OpenSSL 支持的加密算法

openssl list -ciphers

六、安全建议 ✅

  • 使用 AES-256-CBC 或 AES-256-GCM
  • 不要使用 des、rc4 等老算法
  • 密码不要写在脚本里(除非环境安全)
  • 重要数据建议配合 GPG 使用

如果你告诉我:

  • 是加密文件 / 字符串 / 通信
  • 是否用于自动化脚本
  • 是否需要可恢复密码

我可以给你更精确的方案。

0 踩