温馨提示×

linux openssl怎么生成密钥

小樊
50
2026-09-01 15:50:28
栏目: 云计算

在 Linux 下使用 OpenSSL 生成密钥,常见场景有 RSA / ECDSA / Ed25519 等。下面按常用情况给你示例。


一、生成 RSA 私钥(最常用)

openssl genrsa -out rsa_private.key 2048

生成 2048 位 RSA 私钥
如需更强安全:

openssl genrsa -out rsa_private.key 4096

从私钥导出公钥

openssl rsa -in rsa_private.key -pubout -out rsa_public.key

二、生成受密码保护的 RSA 私钥(推荐)

openssl genrsa -aes256 -out rsa_private.key 2048

会提示输入密码(使用时需密码)


三、生成 ECDSA 密钥(更小更快)

1. 生成私钥

openssl ecparam -genkey -name prime256v1 -out ec_private.key

2. 导出公钥

openssl ec -in ec_private.key -pubout -out ec_public.key

常用曲线:

  • prime256v1(P-256,推荐)
  • secp384r1
  • secp521r1

四、生成 Ed25519 密钥(现代、轻量)

openssl genpkey -algorithm ed25519 -out ed25519_private.key

导出公钥:

openssl pkey -in ed25519_private.key -pubout -out ed25519_public.key

五、生成自签名证书(含密钥)

如果你是为了 HTTPS / 测试:

openssl req -x509 -newkey rsa:2048 -nodes \
-keyout key.pem -out cert.pem -days 365

六、查看密钥信息

openssl rsa -in rsa_private.key -text -noout
openssl ec -in ec_private.key -text -noout

七、常见用途建议

用途 推荐
SSH Ed25519 / RSA 4096
TLS ECDSA P-256 / RSA 2048+
签名 ECDSA / Ed25519

如果你有具体用途(比如 SSH、HTTPS、JWT、CA),我可以给你更精确的命令。

0