Windows2000_下_APACHE+OpenSSL+MOD_SSL_的安装
2015-01-07 11:04
260 查看
一、OpenSSL的安装 2
1.1、下载OpenSSL 2
1.2、下载perl: 2
1.3、编译 2
1.4、安装: 2
二、Apache与mod_ssl的安装 3
2.1、所需资源 3
2.1.1、下载awk.exe 3
2.1.2、APACHE下载 3
2.1.3、mod_ssl的下载 3
2.2、配置MOD_SSL 3
2.3、编译apache 3
2.4、安装apache 3
三、配置证书 4
3.1、生成自签名的证书 4
3.2、配置httpd.conf 4
3.3、测试 6
四、配置客户端认证 6
4.1 生成客户证书请求 6
4.2 客户证书的生成 6
4.3 生成PKCS#12格式的证书 6
4.4、将生成的zrh.p12导入IE 6
4.5、配置httpd.conf要求客户端认证 7
4.6、测试--一次真实的演示过程 7
参考文献 11
----------------------------------------------------------------------------------------------------------------------
一、OpenSSL的安装
1.1、下载OpenSSL
到OpenSSL的官方主页(http://www.openssl.org)去下载。
1.2、下载perl:
http://aspn.activestate.com/ASPN/Downloads/ActivePerl/Download?OS=Windows&version=5.6.1&build=629\&download=/ActivePerl/Windows/5.6/ActivePerl-5.6.1.629-MSWin32-x86-multi-thread.msi
1.3、编译
设置好环境变量
c:\> cd d:\program files\Microsoft visual studio\vc98\bin
c:\> d:
c:\> VCVARS32.BAT
设置好perl所在路径如D:\Perl\bin\;
cd openssl-0.9.6g
perl Configure VC-WIN32
ms\do_ms
nmake /f ms\ntdll.mak
1.4、安装:
二、Apache与mod_ssl的安装
2.1、所需资源
2.1.1、下载awk.exe
到http://cm.bell-labs.com/cm/cs/awkbook/index.html下载awk95.exe,另存为awk.exe,
设置好路径(拷到你的编译目录或者System32下,或其它能找到的地方),以便VC++可以找到。
2.1.2、APACHE下载
http://www.apache.org下载,并解压到F:\apache\1_3_28
2.1.3、mod_ssl的下载
http://www.modssl.org下载,并解压到F:\apache\mod_ssl-2.8.15-1.3.28
2.2、配置MOD_SSL
cd F:\apache\mod_ssl-2.8.15-1.3.28
configure.bat --with-apache=f:\apache\1_3_28 --with-ssl=f:\opensslpro\openssl_0.9.6eh
注意 这一步不要将mod_ssl的源代码和apache的源代码放在一个目录下,目录也尽量不要带空格。
2.3、编译apache
cd F:\apache\1_3_28\src
nmake /f Makefile.win _apacher
2.4、安装apache
nmake /f Makefile.win installr INSTDIR=f:\apache\1328
f:\apache\1328是Apache的安装目录,可以根据自己的需要进行修改。
三、配置证书
3.1、生成自签名的证书
3.2、配置httpd.conf
在194行加入模块加载指令
<IfDefine SSL>
LoadModule ssl_module modules/mod_ssl.so
</IfDefine>
在246行加入AddModule指令与LoadModule对应
<IfDefine SSL>
AddModule mod_ssl.c
</IfDefine>
278行加入要侦听的端口
<IfDefine SSL>
Listen 80
Listen 443
</IfDefine>
最后1035左右加入:虚拟主机及公钥和私钥的路径。
3.3、测试
启动命令提示符窗口
cd f:\apache\1328
apache –D SSL
四、配置客户端认证
所有的密码都默认为12345678
4.1 生成客户证书请求
证书请求的名字为zrh.csr,私钥文件名为zrhkey.pem。
CD f:\apache\1328\conf\ssl
F:\apache\1328\conf\ssl>openssl req -config openssl.cnf -new -out zrh.csr -keyout zrhkey.pem
然后输入个人信息
4.2 客户证书的生成
输入证书请求的名字为zrh.csr,生成的证书的名字为zrh.pem。
CA证书的证书名字为ces-s.cert,私钥文件名为ces-s.key
F:\apache\1328\conf\ssl>openssl x509 -req -in zrh.csr -out zrh.pem -CA ces-s.cert -CAkey ces-s.key -CAcreateserial -days 365 -outform PEM
到现在为止你就已经有了一个经CA签过名的证书zrh.pem和一个私钥zrhkey.pem
4.3 生成PKCS#12格式的证书
为了在IE中更好的使用。
F:\apache\1328\conf\ssl>openssl pkcs12 -export -in zrh.pem -out zrh.p12 -inkey zrhkey.pem -name "Zhang RongHua Cert"
这一步将生公钥证书和私打包在一起的zrh.p12用户证书。
4.4、将生成的zrh.p12导入IE
双击zrh.p12按提示进行,即可。如果没有必要不要选择强私钥保护,因为每一次使用私钥的时候都是让你确认一次。
导入受信任的根证书ces-s.cert。
4.5、配置httpd.conf要求客户端认证
<VirtualHost _default_:443>……</VirtualHost>中间加入以下配置
# enable client certificate requirement
SSLVerifyClient require
SSLVerifyDepth 1
SSLCACertificatePath conf\ssl
SSLCACertificateFile conf\ssl\ces-s.cert(为服务器证书/CA证书所在的目录)
4.6、测试--一次真实的演示过程
一次真实的演示过程。
打https://127.0.0.1
点确定按钮
点确定按钮
选择一张证书,然后点确定按钮
点详细信息
点确定按钮
点查看证书按钮,可以看证书的详细信息
点确定按钮
一次访问就成功了。
1.1、下载OpenSSL 2
1.2、下载perl: 2
1.3、编译 2
1.4、安装: 2
二、Apache与mod_ssl的安装 3
2.1、所需资源 3
2.1.1、下载awk.exe 3
2.1.2、APACHE下载 3
2.1.3、mod_ssl的下载 3
2.2、配置MOD_SSL 3
2.3、编译apache 3
2.4、安装apache 3
三、配置证书 4
3.1、生成自签名的证书 4
3.2、配置httpd.conf 4
3.3、测试 6
四、配置客户端认证 6
4.1 生成客户证书请求 6
4.2 客户证书的生成 6
4.3 生成PKCS#12格式的证书 6
4.4、将生成的zrh.p12导入IE 6
4.5、配置httpd.conf要求客户端认证 7
4.6、测试--一次真实的演示过程 7
参考文献 11
----------------------------------------------------------------------------------------------------------------------
一、OpenSSL的安装
1.1、下载OpenSSL
到OpenSSL的官方主页(http://www.openssl.org)去下载。
1.2、下载perl:
http://aspn.activestate.com/ASPN/Downloads/ActivePerl/Download?OS=Windows&version=5.6.1&build=629\&download=/ActivePerl/Windows/5.6/ActivePerl-5.6.1.629-MSWin32-x86-multi-thread.msi
1.3、编译
设置好环境变量
c:\> cd d:\program files\Microsoft visual studio\vc98\bin
c:\> d:
c:\> VCVARS32.BAT
设置好perl所在路径如D:\Perl\bin\;
cd openssl-0.9.6g
perl Configure VC-WIN32
ms\do_ms
nmake /f ms\ntdll.mak
1.4、安装:
copy out32dll\libeay32.dll c:\windows\system copy out32dll\ssleay32.dll c:\windows\system md c:\openssl md c:\openssl\bin md c:\openssl\lib md c:\openssl\include md c:\openssl\include\openssl copy /b inc32\openssl\* c:\openssl\include\openssl copy /b out32dll\ssleay32.lib c:\openssl\lib copy /b out32dll\libeay32.lib c:\openssl\lib copy /b out32dll\ssleay32.dll c:\openssl\bin copy /b out32dll\libeay32.dll c:\openssl\bin copy /b out32dll\openssl.exe c:\openssl\bin |
2.1、所需资源
2.1.1、下载awk.exe
到http://cm.bell-labs.com/cm/cs/awkbook/index.html下载awk95.exe,另存为awk.exe,
设置好路径(拷到你的编译目录或者System32下,或其它能找到的地方),以便VC++可以找到。
2.1.2、APACHE下载
http://www.apache.org下载,并解压到F:\apache\1_3_28
2.1.3、mod_ssl的下载
http://www.modssl.org下载,并解压到F:\apache\mod_ssl-2.8.15-1.3.28
2.2、配置MOD_SSL
cd F:\apache\mod_ssl-2.8.15-1.3.28
configure.bat --with-apache=f:\apache\1_3_28 --with-ssl=f:\opensslpro\openssl_0.9.6eh
注意 这一步不要将mod_ssl的源代码和apache的源代码放在一个目录下,目录也尽量不要带空格。
2.3、编译apache
cd F:\apache\1_3_28\src
nmake /f Makefile.win _apacher
2.4、安装apache
nmake /f Makefile.win installr INSTDIR=f:\apache\1328
f:\apache\1328是Apache的安装目录,可以根据自己的需要进行修改。
三、配置证书
3.1、生成自签名的证书
cd F:\apache\1328\conf mkdir ssl cd ssl copy F:\OpenSSLPro\openssl-engine-0.9.6h\apps\openssl.cnf . cd %APACHE_HOME%\conf\ssl openssl req -config openssl.cnf -new -out ces-s.csr openssl rsa -in privkey.pem -out ces-s.key openssl x509 -in ces-s.csr -out ces-s.cert -req -signkey ces-s.key -days 365 del *.rnd(这一步没有) |
在194行加入模块加载指令
<IfDefine SSL>
LoadModule ssl_module modules/mod_ssl.so
</IfDefine>
在246行加入AddModule指令与LoadModule对应
<IfDefine SSL>
AddModule mod_ssl.c
</IfDefine>
278行加入要侦听的端口
<IfDefine SSL>
Listen 80
Listen 443
</IfDefine>
最后1035左右加入:虚拟主机及公钥和私钥的路径。
<IfDefine SSL> AddType application/x-x509-ca-cert .crt AddType application/x-pkcs7-crl .crl </IfDefine> <IfModule mod_ssl.c> SSLPassPhraseDialog builtin SSLSessionCache dbm:logs/ssl_scache SSLSessionCacheTimeout 300 SSLMutex sem SSLRandomSeed startup builtin SSLRandomSeed connect builtin SSLLog logs/ssl_engine_log SSLLogLevel info </IfModule> <IfDefine SSL> <VirtualHost _default_:443> DocumentRoot "F:\apache\1328\htdocs" ServerName 127.0.0.1 ServerAdmin you@your.address ErrorLog logs/error_log TransferLog logs/access_log SSLEngine on SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL SSLCertificateFile F:\apache\1328\conf\ssl\ces-s.cert SSLCertificateKeyFile F:\apache\1328\conf\ssl\ces-s.key <Files ~ "\.(cgi|shtml|phtml|php3?)$"> SSLOptions +StdEnvVars </Files> <Directory "F:\apache\1328\cgi-bin"> SSLOptions +StdEnvVars </Directory> SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown downgrade-1.0 force-response-1.0 CustomLog logs/ssl_request_log "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b" </VirtualHost> </IfDefine> |
启动命令提示符窗口
cd f:\apache\1328
apache –D SSL
四、配置客户端认证
所有的密码都默认为12345678
4.1 生成客户证书请求
证书请求的名字为zrh.csr,私钥文件名为zrhkey.pem。
CD f:\apache\1328\conf\ssl
F:\apache\1328\conf\ssl>openssl req -config openssl.cnf -new -out zrh.csr -keyout zrhkey.pem
然后输入个人信息
4.2 客户证书的生成
输入证书请求的名字为zrh.csr,生成的证书的名字为zrh.pem。
CA证书的证书名字为ces-s.cert,私钥文件名为ces-s.key
F:\apache\1328\conf\ssl>openssl x509 -req -in zrh.csr -out zrh.pem -CA ces-s.cert -CAkey ces-s.key -CAcreateserial -days 365 -outform PEM
到现在为止你就已经有了一个经CA签过名的证书zrh.pem和一个私钥zrhkey.pem
4.3 生成PKCS#12格式的证书
为了在IE中更好的使用。
F:\apache\1328\conf\ssl>openssl pkcs12 -export -in zrh.pem -out zrh.p12 -inkey zrhkey.pem -name "Zhang RongHua Cert"
这一步将生公钥证书和私打包在一起的zrh.p12用户证书。
4.4、将生成的zrh.p12导入IE
双击zrh.p12按提示进行,即可。如果没有必要不要选择强私钥保护,因为每一次使用私钥的时候都是让你确认一次。
导入受信任的根证书ces-s.cert。
4.5、配置httpd.conf要求客户端认证
<VirtualHost _default_:443>……</VirtualHost>中间加入以下配置
# enable client certificate requirement
SSLVerifyClient require
SSLVerifyDepth 1
SSLCACertificatePath conf\ssl
SSLCACertificateFile conf\ssl\ces-s.cert(为服务器证书/CA证书所在的目录)
4.6、测试--一次真实的演示过程
一次真实的演示过程。
打https://127.0.0.1
点确定按钮
点确定按钮
选择一张证书,然后点确定按钮
点详细信息
点确定按钮
点查看证书按钮,可以看证书的详细信息
点确定按钮
一次访问就成功了。
相关文章推荐
- openssl + apache + mod_ssl安装配置调试过程
- openssl + apache + mod_ssl安装配置调试过程
- Linux下apache、openssl、mod_ssl安装、配置
- openssl + apache + mod_ssl安装配置调试过程-
- CentOS安装Apache2带SSL支持(mod_ssl, openssl)
- 怎样在Apache上安装MOD_SSL
- 怎样在Apache上安装MOD_SSL
- 在CentOS5.2+apache2.2下安装配置mod_ssl
- CentOS 4.4 编译安装 apache 2.2.4(mod_ssl)+php 5.2.1 wi
- 在CentOS5.2+apache2.2下安装配置mod_ssl
- vs2008环境nmake编译 apache 2.2.29 openssl 1.0.1g mod_ssl 不知道如何生成“"..\..\srclib\openssl\inc32\openssl\store.h"”
- 在CentOS5.2+apache2.2下安装配置mod_ssl
- SSL证书安装指南 - Apache-SSL / Apache ModSSL
- apache安装包中的“no ssl”和“openssl”是什么意思
- apache安装mod_ssl.so 出现 undefined symbol: ssl_cmd_SSLPassPhraseDialog错误解决
- CentOS 安装CDH报缺少cyrus-sasl-gssapi、MySQL-python、mod_ssl、openssl-devel等包的错误
- 在Apache上安装MOD_SSL
- Apache+Mod_perl+Mod_SSL+PHP+Frontpage extension+Apache::ASP 安装配置手册
- apache+tomcat+proxy+openssl+postgresql+modsecurity整套生产环境安装过程
- CentOS安装Apache2带SSL支持(mod_ssl, openssl)