日期:2014-05-16  浏览次数:20682 次

linux下安装Apache(https) 服务器证书安装配置指南

一、??安装准备

1.????安装Openssl
要使Apache支持SSL,需要首先安装Openssl支持。推荐下载安装openssl-0.9.8k.tar.gz??
下载Openssl:http://www.openssl.org/source/
???????tar?-zxf?openssl-0.9.8k.tar.gz????//解压安装包??
???????cd?openssl-0.9.8k?????????????????//进入已经解压的安装包??
???????./config??????????????????????????//配置安装。推荐使用默认配置??
???????make?&&?make?install??????????????//编译及安装??
openssl默认将被安装到/usr/local/ssl

2.????安装Apache?
./configure?--prefix=/usr/local/apache?--enable-so?--enable-ssl?--with-ssl=/usr/local/ssl?--enable-mods-shared=all???????????????????????????????//配置安装。推荐动态编译模块??
make?&&?make?install?
动态编译Apache模块,便于模块的加载管理。Apache?将被安装到/usr/local/apache??

二、??生成证书请求文件

1.????创建私钥?
在创建证书请求之前,您需要首先生成服务器证书私钥文件。?
cd?/usr/local/ssl/bin????????????????????//进入openssl安装目录?
openssl?genrsa?-out?server.key?2048??????//运行openssl命令,生成2048位长的私钥server.key文件。如果您需要对?server.key?添加保护密码,请使用?-des3?扩展命令。Windows环境下不支持加密格式私钥,Linux环境下使用加密格式私钥时,每次重启Apache都需要您输入该私钥密码(例:openssl?genrsa?-des3?-out?server.key?2048)。
?
2.????生成证书请求(CSR)文件??
openssl?req?-new?-key?server.key?-out?certreq.csr??
Country?Name:???????????????????????????//您所在国家的ISO标准代号,中国为CN??
State?or?Province?Name:?????????????????//您单位所在地省/自治区/直辖市??
Locality?Name:??????????????????????????//您单位所在地的市/县/区??
Organization?Name:??????????????????????//您单位/机构/企业合法的名称??
Organizational?Unit?Name:???????????????//部门名称??
Common?Name:????????????????????????????//通用名,例如:www.itrus.com.cn。此项必须与您访问提供SSL服务的服务器时所应用的域名完全匹配。??
Email?Address:??????????????????????????//您的邮件地址,不必输入,直接回车跳过??
"extra"attributes????????????????????????//以下信息不必输入,回车跳过直到命令执行完毕。
??
3.????备份私钥并提交证书请求??
请将证书请求文件certreq.csr提交给天威诚信,并备份保存证书私钥文件server.key,等待证书的签发。服务器证书密钥对必须配对使用,私钥文件丢失将导致证书不可用。
??
三、??安装服务器证书

1.????获取服务器证书中级CA证书
从邮件中获取中级CA证书:
将证书签发邮件中的从BEGIN到?END结束的中级CA证书内容(包括“-----BEGIN?CERTIFICATE-----”和“-----END?CERTIFICATE-----”)粘贴到记事本文本文件中。修改文件扩展名,保存为intermediate.crt文件。??
下载中级CA证书:http://www.itrus.com.cn/verisignchina/Service/download/

2.????获取服务器证书??
将证书签发邮件中的从BEGIN到?END结束的服务器证书内容(包括“-----BEGIN?CERTIFICATE-----”和“-----END?CERTIFICATE-----”)?粘贴到记事本等文本编辑器中,保存为server.crt文件?

3.????Apache?2.0.63的配置??
打开apache安装目录下conf目录中的httpd.conf文件,找到??
#LoadModule?ssl_module?modules/mod_ssl.so??
删除行首的配置语句注释符号“#”??
保存退出。??
打开apache安装目录下conf目录中的ssl.conf文件,找到??
在配置文件中查找以下配置语句??
SSLCertificateFile?conf/ssl.crt/server.crt?????????????将服务器证书配置到该路径下??
SSLCertificateKeyFile?conf/ssl.key/server.key????????将服务器证书私钥配置到该路径下??
#SSLCertificateChainFile?conf/ssl.crt/ca.crt??????????删除行首的“#”号注释符,并将中级CA证书intermediate.crt配置到该路径下??
保存退出,并重启Apache。重启方式:??
进入Apache安装目录下的bin目录,运行如下命令??
./apachectl?-k?-stop??
./apachectl?startssl

4.????Apache?2.2.*?的配置??
打开apache安装目录下conf目录中的httpd.conf文件,找到??
#LoadModule?ssl_module?modules/mod_ssl.so??
#Include?conf/extra/httpd_ssl.conf??
删除行首的配置语句注释符号“#”??
保存退出。??
打开apache安装目录下conf/extra目录中的httpd-ssl.conf文件??
在配置文件中查找以下配置语句??
SSLCertificateFile?conf/ssl.crt/server.crt?????????将服务器证书配置到该路径下??
SSLCertificateKeyFile?conf/ssl.key/server.key????将服务器证书私钥配置到该路径下??
#SSLCertificateChainFile?conf/ssl.crt/ca.crt??????删除行首的“#”号注释符,并将中级CA证书intermediate.crt配置到该路径下??
保存退出,并重启Apache。重启方式:??
进入Apache安装目录下的bin目录,运行如下命令??
./apachectl?-k?-stop??
./apachectl?startssl
通过https方式访问您的站点,测试站点证书的安装配置。
?
四、??服务器证书的备份及恢复?

在您成功的安装和配置了服务器证书之后,请务必依据下面的操作流程,备份好您的服务器证书,以防证书丢失给您带来不便。

1.????服务器证书的备份??
备份服务器证书私钥文件server.key,服务器证书文件server.crt,以及服务器证书中级CA证书文件intermediate.crt即可完成服务器证书的备份操作。
??
2.????服务器证书的恢