Apache安装SSL证书

一.  准备所需文件

安装SSL证书到apache服务器上, 我们需要3个文件,

(1) . 服务器证书;
(2) . 中级证书;
(3) . 密钥(Key);

1. 服务器证书​

首先,找到服务器证书代码: 打开CA发送过来的证书邮件,找到服务器证书代码,证书代码的格式如下,请复制邮件中的这段代码保存文件名为 server.crt

-----BEGIN CERTIFICATE----- 
MIIGAjCCBOqgAwIBAgIRAJGtx1tmyly5AnOuCGEKRnkwDQYJKoZIhvcNAQELBQAw 
gZYxCzAJBgNVBAYTAkdCMRswGQYDVQQIExJHcmVhdGVyIE1hbmNoZXN0ZXIxEDAO 
BgNVBAcTB1NhbGZvcmQxGjAYBgNVBAoTEUNPTU9ETyBDQSBMaW1pdGVkMTwwOgYD 
..... 
.....
-----END CERTIFICATE-----


 
2. 获取中级证书,通常您在订单页面下载的证书文件,解压后, 里面有一个apache 文件夹,包含两个文件,其中ca.crt 就是中级证书,如果您是通过其他方式获取的证书,可以使用镭铭在线证书补全工具,找到服务器证书对应的中级证书,打开

在线证书补全工具  https://www.sslaaa.com/tools/get_chain

把服务器证书代码粘贴在文本框内,提交后可以获得安装证书所需要的 证书链,其中包括服务器证书和中级证书,保存为 server_bundle.crt 
 
3. 私钥 :此文件是生成CSR时候同时生成的,保存为文件名 server.key ,密钥代码格式如下:

-----BEGIN PRIVATE KEY-----
MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQDFJrXFwlY1ZcaX
M0Rq3gp9kIQqMVqHS0gGzofPh+zEIvPMjXMRajZ4AbknrGtoXa1+KdZ9gIHrQqK5
UIjWKV4qavQoUf+RhNCMLc6CQ1CMknbQEnRXtg4Y4mp67tbiDm8MCUhQQYU6zyyl
.......
.....

-----END PRIVATE KEY-----

 
二. 配置apache


参考下面的代码,在apache目录下的httpd.conf 文件增加两个虚拟主机

<VirtualHost *:80>
    RewriteEngine On
    RewriteRule ^(.*)$ https://%{HTTP_HOST}$1 [R=301,L]
</VirtualHost>

<VirtualHost *:443>
    SSLEngine on

    SSLCertificateFile      /path/to/ server_bundle.crt   # server_bundle.crt 是 服务器证书和中级证书的合并文件
    SSLCertificateKeyFile   /path/to/server.key

    # enable HTTP/2, if available
    Protocols h2 http/1.1

    # HTTP Strict Transport Security (mod_headers is required) (63072000 seconds)
    Header always set Strict-Transport-Security "max-age=63072000"
</VirtualHost>

# intermediate configuration
SSLProtocol             all -SSLv3 -TLSv1 -TLSv1.1
SSLCipherSuite          ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384
SSLHonorCipherOrder     off
SSLSessionTickets       off

SSLUseStapling On
SSLStaplingCache "shmcb:logs/ssl_stapling(32768)"


然后保存。重启apache

 

/etc/init.d/httpd restart 

apache