l1l  

一、部署说明

1. 主要描述如何通过openssl产生密钥对和如何将SSL服务器证书部署到Apache服务器

2. 适用于linux系统下Apache 2.2版本;

3. Apache服务器部署EV SSL和SSL证书的操作步骤一致,区别在于:前者在IE7以上浏览器访问时,浏览器会显示安全锁标志,地址栏会变成绿色;而后者在浏览器访问时,浏览器显示安全锁标志,但地址栏不会变成绿色。

4. 本部署指南使用testweb.95105813.cn作为样例进行安装配置,实际部署过程请用户根据正式的域名进行配置。

5. 您可以使用其它方式并不要求按照本部署指南在windows下使用OpenSSL工具方式生成证书请求文件;

6. 本部署指南提供参考的apache 2.2服务器部署方式。如果您的服务器已部署好apache服务您可以继续使用原来的服务在其基础上完成服务器证书的安装配置,无需重新进行安装;

二、生成证书请求

1.安装OpenSSL工具

需要使用Openssl工具来创建证书请求。下载OpenSSL:http://slproweb.com/products/Win32OpenSSL.html安装OpenSSL到C:\OpenSSL

安装完后将C:\OpenSSL\bin目录下的openssl.cfg重命名为openssl.cnf

2.生成服务器证书私钥
命令行进入C:\OpenSSL\bin,生成证书私钥。如产生的私钥文件可以是server.key这样简单的命名或者使用我们推荐的使用主机域名方式进行命名。

cd c:\OpenSSL\bin 先设置环境变量 set OPENSSL_CONF=openssl.cnf

参考: openssl genrsa -out server.key 2048

例: openssl genrsa -out D:\testweb.95105813.cn.key 2048

3.生成服务器证书请求(CSR)文件
参考: openssl req -new -key server.key -out certreq.csr

例: openssl req -new -key D:\testweb.95105813.cn.key -out D:\certreq.csr

如出现以下报错请先设置环境变量 set OPENSSL_CONF=openssl.cnf

执行成功后提示要输入您的相关信息。

填写说明: 1.Country Name: 填您所在国家的ISO标准代号,如中国为CN,美国为US

2.State or Province Name: 填您单位所在地省/自治区/直辖市,如广东省或 Guangdong

3.Locality Name: 填您单位所在地的市/县/区,如佛山市或Foshan

4.Organization Name: 填您单位/机构/企业合法的名称,如广东数字证书认证中心有限公司或Guangdong Certification Authority Co.,Ltd.

5.Organizational Unit Name: 填:部门名称,如技术支持部或Technical support

6.Common Name: 填:域名,如:testweb.95105813.cn。在多个域名时,填主域名

7.Email Address: 填您的邮件地址,不必输入,按回车跳过

8.‘extra’attributes 从信息开始的都不需要填写,按回车跳过直至命令执行完毕

除第1、6、7、8项外,2-5的信息填写请统一使用中文或者英文填写。并确保您填写的所有内容和您提交到GDCA的内容一致,以保证SSL证书的签发。

4.提交证书请求
请您保存证书私钥文件,最好复制一份以上副本到不同的物理环境上(如不同的主机),防止丢失。并将证书请求文件certreq.csr提交给证书颁发单位。

三、服务器证书转码与CA证书链生成

1.服务器证书需要安装根证书和CA证书,以确保证书在浏览器中的兼容性,由于不同的证书公司颁发给用户的证书链不一样,有的里面是一张,有的里面是两张,所以用GDCA公司的证书为例,颁发给用户的除了所申请的企业证书外还有一张根证书GDCA_TrustAUTH_R5_ROOT.cer和相应的CA证书,如果您申请的是睿信(OV) SSL证书(Organization Validation SSL Certificate),CA证书文件就是GDCA_TrustAUTH_R4_SSL_CA.cer;如果您申请的是恒信企业EV SSL证书(Extended Validation SSL Certificate),CA证书就是文件就是GDCA_TrustAUTH_R4_Extended_Validation_SSL_CA.cer

 

2.请注意:根证书和业务证书下载时需要观察证书是不是base64编码的证书,如果不是,则需要先转换为Base64编码格式,以根证书为例

 

3.转换成Base64编码后,用编辑器打开,可以看到文件内容是以-----BEGIN CERTIFICATE-----开头,-----END CERTIFICATE-----结尾。以同样方式将CA证书也转换成Base64编码

4.crt格式的服务器证书和CA证书链

将证书颁发单位返回给您的服务器证书也转换成Base64编码.并保存为crt格式文件

5.新建一个文本文档,将CA证书和根证书加入到文件里,将文件保存crt文件。如gdca-cert-chain.crt。文件里证书的保存顺序是 CA证书-根证书:

四、安装服务器证书

打开apache安装目录下conf目录中的httpd.conf文件

例:vi /usr/local/apache/conf/httpd.conf

找到以下两项去掉注释:

# LoadModule ssl_module modules/mod_ssl.so

#Include conf/extra/httpd-ssl.conf

保存退出。

打开apache安装目录下conf/extra目录中的httpd_ssl.conf文件

编辑Apache2.2/conf/extra/ 目录下的httpd-ssl.conf文件

将”ServerName www.example.com:443”改成您的主机域名:如

找到SSLCertificateFile和 SSLCertificateKeyFile这两个配置项,服务器证书私钥和服务器证书文件及证书链文件上传到该目录(这里是/usr/local/apache/conf)下:

保存退出,并重启Apache

通过https方式访问您的站点,测试站点证书的安装配置。

五、备份和恢复

  1. 在您完成服务器证书的安装与配置后,请务必要备份好您的服务器证书,避免证书遗失给您造成不便:

  2. 备份服务器证书私钥文,服务器证书文件,以及服务器证书链文件。即可完成服务器证书的备份操作。
  3. 恢复服务器证书 参照步骤四即可完成恢复操作
posted on 2016-01-19 17:18  l1l  阅读(1625)  评论(1)    收藏  举报