电子认证业务规则  联系我们  网站导航
首页 数字证书 解决方案 服务支持 政策法规 关于我们  
 
 
 
SZCA
大客户专区
   深圳市金建工程  
   深圳市住房公积金  
   贵阳建设工程交易中心  
 
 
 
 
SZCA
服务支持
 
   证书申请
   证书下载
   证书查询
   操作指南  
   下载中心  
   常见问题  
   知识中心  
   证书试用  
   在线咨询  
 
 
 
服务支持  操作指南  Apache 服务器证书安装指南
 
Apache 服务器证书安装指南
1.安装Apache
2.取得OpenSSL 和 mod_ssl
3. 建立测试证书
3.1建立一个证书签名请求和一个私钥
3.2从私钥移除 passphrase
3.3建立自签名的证书
4.配置Apache 和mod_ssl
     
1.安装Apache

从 www.apache.org 下载apache 安装包并安装。建议安装1.3.31版本,对下文的配置比较方便。不要混淆1.3和2.0版本的apache,不同的版本对应不同的mod_ssl。  

修改httpd.conf的下列字段:

Port 80 改成 # Port 80

Listen 80 (标准web端口)

Listen 443 (监听SSL 端口)

ServerName www.szca.gov.cn

重启apache服务。

打开 http://www.szca.gov.cn:443/. 此时连接并没有加密但代表你的apache可以正常使用443端口。

注意:如果你是在自己的pc上进行测试的话,可以随意在hosts文件中添加一行域名和本地ip的纪录,然后用这个域名进行测试。关于hosts文件知识,请自行了解。

 
2.取得OpenSSL 和 mod_ssl
        从 http://hunter.campbus.com/ 下载并解压缩下列文件:
  • Apache_2.0.49-Openssl_0.9.7d-Win32.zip
  • Apache_1.3.31-Mod_SSL_2.8.20-Openssl_0.9.7d-Win32.zip
  • Openssl-0.9.7d-Win32.zip

注意:

1.从openssl压缩包里拷贝ssleay32.dll和libeay32.dll 到WINNT\System32。大约有70%的人因为没有这样做导致安装失败。

2.从 http://www.cygwin.com 下载并安装Cygwin。注意安装的时候要选择openssl包。

3.你需要一个 openssl.exe 的配置文件。如果使用 Cygwin,那么已经自动包含。否则你需要下载一个openssl.conf(http://www.securityfocus.com/data/tools/openssl.conf

  
3. 建立测试证书

注意:下列命令可以在cygwin里面运行,也可以在解压后的Openssl-0.9.7d-Win32.zip 运行(需要拷贝openssl.conf,如果运行不正确,在命令行后面加上-conf openssl.conf)

3.1.建立一个证书签名请求和一个私钥

openssl req -new -out server.csr

这个语句建立一个证书签名请求和一个私钥。当系统提示 "Common Name (eg, your websites domain name)", 给出精确的web服务器名称 (例如 www.szca.gov.cn)。如果和实际的名称不符合,浏览器会报错

3.2.从私钥移除 passphrase

openssl rsa -in privkey.pem -out server.key

这个语句从私钥移除 passphrase。 server.key 只能被 apache 和 administrator管理。删除 .rnd 文件,它可能被利用来攻击私钥。

3.3.建立自签名的证书

openssl x509 -in server.csr -out server.crt -req -signkey server.key -days 365

这个语句建立自签名的证书,你可以使用这个直到你从权威机构得到了一个 真实证书。你可以扩大 -days 365 的参数,以避免一年以后过期。

如果你的用户使用 MS Internet Explorer 4.0+ 并且希望安装证书到证书存储里(下载和打开), 你需要建立一个 a DER-encoded 版本的证书。

openssl x509 -in server.crt -out server.der.crt -outform DER

建立一个目录 Apache/conf/ssl 并拷贝 server.key 和 server.crt. 对于Linux 建立两个目录 ssl.key 和 ssl.crt. 拷贝 server.crt 到 ssl.crt ;拷贝server.key 到 ssl.key。

 
4.配置Apache 和mod_ssl

从下载的apache-mod_ssl 包里面拷贝所有的 (*.exe, *.dll, *.so) 文件到原始apache目录。注意不要覆盖原始的配置文件httpd.conf。

注意:查找所有子目录里的这些后缀文件,拷贝到相应目录并覆盖。

1.定位LoadModule指令在 httpd.conf 文件的位置。增加下列指令:

LoadModule ssl_module modules/mod_ssl.so

2.在AddModule 指令部分的最后面加上 AddModule mod_ssl.c

3.从OpenSSL源文件里拷贝 ssl.conf 到 Apache/conf/。也可以下载http://www.raibledesigns.com/tomcat/ssl.conf

4.在 httpd.conf的最后增加以下指令:

SSLMutex sem

SSLRandomSeed startup builtin

SSLSessionCache none

ErrorLog logs/ssl.log

LogLevel info

# You can later change "info" to "warn" if everything is OK

SSLEngine On

SSLCertificateFile conf/ssl/server.crt

SSLCertificateKeyFile conf/ssl/server.key

5.如果配置文件里IfDefine指令有效,则运行apache的时候要加上 -D SSL 参数。

注意: 使用多个虚拟主机的时候,必须用基于ip的配置,因为SSL需要配置一个指定端口443,如果使用了基于名字的指令(对于所有端口)则apache服务器会报错

[error] VirtualHost _default_:443 -- mixing * ports and non-* ports with a NameVirtualHost address is not supported, proceeding with undefined results

6.启动apache服务器,如果顺利的话你会看到

D:\Apache>apache -D SSL

[Tue Oct 19 22:18:32 2004] [warn] Loaded DSO d:/apache/php/sapi/php4apache.dll uses plain Apache 1.3 API, this module might crash under EAPI! (please recompile it with -DEAPI)

Apache/1.3.31 (Win32) mod_ssl/2.8.19 OpenSSL/0.9.7d PHP/4.3.6 running...

如果不能正确启动,仔细看屏幕提示,你会从中得到解决的办法。

 
Copyright © 2009 深圳市电子商务安全证书管理有限公司 All rights reserved
地址:广东省深圳市南山区科技园中区,高新中二道和科技中三路交汇处,深圳软件园8栋301室
电话:0755-26588399 传真:0755-86156366 客服电话:800-999-3838