温馨提示×

linux openssl如何导入证书

小樊
45
2026-09-04 16:42:38
栏目: 云计算

在 Linux 下使用 OpenSSL “导入证书”,通常分为几种场景。下面按常见用途给你说明。


一、将证书导入系统信任库(让系统信任该证书)

1. Debian / Ubuntu 系

sudo cp your_cert.crt /usr/local/share/ca-certificates/
sudo update-ca-certificates
  • 文件名必须以 .crt 结尾
  • 导入成功后会有提示:1 added

2. RHEL / CentOS / Rocky / Alma

sudo cp your_cert.crt /etc/pki/ca-trust/source/anchors/
sudo update-ca-trust

二、将证书导入 Nginx / Apache(服务端使用)

Nginx 示例

ssl_certificate     /path/to/cert.crt;
ssl_certificate_key /path/to/private.key;

如果有中间证书:

ssl_trusted_certificate /path/to/ca_bundle.crt;

三、将证书导入 Java 信任库(keystore)

sudo keytool -import \
  -trustcacerts \
  -alias mycert \
  -file your_cert.crt \
  -keystore $JAVA_HOME/lib/security/cacerts \
  -storepass changeit

查看是否已导入:

keytool -list -keystore cacerts -storepass changeit | grep mycert

四、将 PFX / P12 证书导入 OpenSSL 可用格式

从 pfx 导出证书和私钥

openssl pkcs12 -in cert.pfx -nocerts -out key.pem -nodes
openssl pkcs12 -in cert.pfx -nokeys -out cert.pem

合并证书链

cat cert.pem chain.pem > fullchain.pem

五、将证书导入客户端(如 curl 测试)

curl --cacert your_cert.crt https://example.com

六、查看证书内容(确认导入是否正确)

openssl x509 -in your_cert.crt -text -noout

如果你能说明 具体场景(例如:浏览器、Java、Nginx、Kubernetes、Docker、自签名证书),我可以给你更精确的命令。

0