配置HTTPS证书时,会要求配置证书和私钥。

比如Nginx

    server {
        listen       443 ssl http2 default_server;
        listen       [::]:443 ssl http2 default_server;
        server_name  192.168.3.91;
        root         /usr/share/nginx/html;

        ssl_certificate "/etc/ssl/certs/signed.crt"; # 证书
        ssl_certificate_key "/etc/ssl/private/signed.key"; # 私钥

.crt.key分别代表证书和私钥文件,扩展名是按照文件用途来分的。而.pem是一种文件格式, pem文件是文本格式的,其他证书格式还有DER。

所以证书.crt.key文件可以是PEM格式文件, 也可以是其他证书格式比如DER(二进制格式)

所以nginx证书文件可以重命名,如果你喜欢用文件格式命名

mv signed.crt cert.pem
mv signed.key key.pem

然后修改nginx配置文件:

    server {
        listen       443 ssl http2 default_server;
        listen       [::]:443 ssl http2 default_server;
        server_name  192.168.3.91;
        root         /usr/share/nginx/html;

        ssl_certificate "/etc/ssl/certs/cert.pem"; # 证书
        ssl_certificate_key "/etc/ssl/private/key.pem"; # 私钥

如何鉴别文件是PEM格式?

PEM文件是文本文件,所以通常都是以-----BEGIN xxx------开头。

  • pem格式的私钥文件

signed.key

-----BEGIN PRIVATE KEY-----
MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQDBaEW7bbrb5+Ah
...
  • pem格式的证书文件
-----BEGIN CERTIFICATE-----
MIIDgzCCAmugAwIBAgIJAMDJXuLyXC2HMA0GCSqGSIb3DQEBCwUAMFgxCzAJBgNV
...
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐