由于网站需要HTTPS访问,所有申请了一个SSL证书,需要在Linux服务器上配置,拿到证书后,证书是一个.PFX文件,不可以用!下面是解决这个问题的过程,总结了一下:

  1. 介绍一下,文件形式的证书一般有三种格式:
  2. 第一种:带有私钥的证书,由Public Key Cryptography Standards #12,PKCS#12标准定义,包含了公钥和私钥的二进制格式的证书形式,以.pfx作为证书文件后缀名。
  3. 第二种:DER Encoded Binary (.cer) 二进制编码的证书,证书中没有私钥,DER 编码二进制格式的证书文件,以.cer作为证书文件后缀名。
  4. 第三种:Base64 Encoded(.cer),Base64编码的证书,证书中没有私钥,BASE64 编码格式的证书文件,也是以.cer作为证书文件后缀名。
  5. HTTPS能够为一个网站提供以下能力。
    1、确保所有经过服务器传输的数据包都是经过加密的。
    2、建立了一个官方数字证书证书,使得假冒服务器无法冒充真正的服务器。

下面是我的操作:
第一步:证书的格式需转换

openssl pkcs12 -in ./sslservice.pfx -clcerts -nokeys -out ./sslservice.crt

第二步:证书的密钥转换

openssl pkcs12 -in ./sslservice.pfx -nocerts -nodes -out ./sslservice.key

第三步:修改配置

SSLCertificateFile "/path/to/file.crt"
SSLCertificateKeyFile "/path/to/file.key"
SSLCACertificateFile "/path/to/bundle.crt"

第四步:把证书以及密钥拷贝到配置文件中路径相对应的目录

//进入证书目录
cd /etc/httpd/ca/

//拷贝证书到默认指定目录
cp sslservice.crt /etc/pki/tls/certs/
cp sslservice.key /etc/pki/tls/private/

第五步:重启Apache服务

systemctl restart httpd
Logo

更多推荐