Windows下openssl的下载安装和使用方法
安装openssl有两种方式,第一种直接下载安装包,装上就可运行;第二种可以自己下载源码,自己编译。下面对两种方式均进行详细描述。
一、下载和安装openss
方法一:直接使用openssl安装包
window 的openssl的安装包的下载地址为:
http://slproweb.com/products/win32openssl.html
一般在安装openssl之前还需要vs的一些插件,该地址中也提供了相关插件的下载。如下图即为openssl的安装及其vs插件在下载网页的截图。
方法二:自己编译openssl
此过程比较复杂,需要先安装perl、vs等软件,然后才能编译openssl。
1、下载并安装perl,
1)下载路径:
2)安装与配置:
直接运行安装文件(例如:activeperl-5.16.3.1604-mswin32-x86-298023.msi)即可完成安装;安装过程将自动完成环境变量的配置(安装完成之后,可以在系统环境变量里看到perl的bin目录(例如: c:\program files\perl\site\bin;)已经被加入进来),无需再手工配置;
3)测试安装是否成功:
进入perl安装目录的eg文件夹,执行“perl example.pl”若显示“hello from activeperl!”,则说明perl安装成功。如下图所示:
perl安装成功之后就可以开始使用perl的相关命令来进行openssl的安装了。
2、openssl可以自己下载源码编译也可以直接下载安装包安装完之后即可使用。
2.1使用源码编译openssl
1) 下载openssl源码的路径:
2)配置vs2005的环境变量(因为后面编译openssl时,将会用到vs2005自带的nmake工具)。
执行vs2005的bin目录下(例如:c:\program files\microsoft visual studio 8\vc\bin)的vcvars32.bat文件即可完成配置,如下图所示:
3)配置openssl
(1)将下载后的openssl压缩文件(例如:openssl-1.0.1g.tar.gz)解压缩到某目录下(例如:c:\program files\openssl-1.0.1g);
(2)通过命令窗口,进入openssl的目录c:\program files\openssl-1.0.1g中,执行“perl configure vc-win32”即可完成配置,如下图所示:
(3)执行do_masm
在openssl的目录下执行ms\do_masm,注意不能进入到ms下面直接执行do_masm,否则会提示找不到文件“util\makfiles.pl”之类的错误。
(4)编译openssl
在openssl目录下(c:\program files\openssl-1.0.1g)执行“nmake -f ms\ntdll.mak”,如下图所示:
注意:如果出现“nmake不是内部命令或外部命令,也不是可运行程序”的问题,则说明vs2005安装的有问题,vs2005自带有nmake编辑工具,在安装目录的“vc\bin”文件夹下(例如本机的位置为:c:\program files\microsoft visual studio 8\vc\bin),需将此路径加入到环境变量中即可,如果不加,则执行nmake命令的时候,还需要在,命令nmake前加上它所在的目录。
(5)测试openssl是否编译成功
在openssl目录下执行命令“nmake -f ms\ntdll.mak test”即可完成测试,如下图所示
测试结束的时候会显示“passed all tests”字样,例如:
(6)openssl编译完成之后,会在其目录下生成文件夹out32dll(例如:c:\program files\openssl-1.0.1g\out32dll),所生成的文件(例如openssl.exe还有其他动态库等)就在该文件夹里。
二、使用openssl生成ca及证书
使用刚才编译openssl生成的openssl.exe等可执行文件生成相应证书,命令与linux下生成ca和签名证书的过程是一样的,详细操作可参考文章《mosquito使用ssl/tls进行安全通信时的使用方法》,该文地址为:
或者:
http://houjixin.blog.163.com/blog/static/35628410201432205042955/
下面将使用一个现成的ca文件(ca.key和ca.crt)生成证书文件(client.key和client.crt):
1)创建一个目录用于存放ca文件以及将要生成的证书文件,本例中将该目录创建在out32dll目录下:c:\program files\openssl-1.0.1g\out32dll\test,
2)执行命令生成证书的key文件:..\openssl genrsa -out client.key 2048,如下图所示:
3) 生成证书请求文件:..\openssl req -out server.csr -key server.key -new
4) 生成证书文件:..\ openssl x509 -req -in client.csr -ca ca.crt -cakey ca.key -cacreateserial -out client.crt -days 36500
下面是其他网友的补充:
安装环境:
操作系统:window7(64位)
c++编译器:vs2010
工具下载:
下载activeperl-5.22或5.24(其他版本也可以):
下载地址:http://www.activestate.com/activeperl/downloads/ (安装过程只要按照windows下一般程序的安装步骤进行即可)
下载openssl-1.0.1g(其他版本也可以)并解压
下载地址:http://www.openssl.org/source/(建议解压后的文件路径为c:\openssl,ps:只是为了下文的内容匹配,并且方便寻找,其他路径也无不影响)。
安装perl
(我的安装目录为c:\perl64)
运行”cmd“命令,使用cd命令将运行目录指向perl安装目录的eg文件夹, 执行“perl example.pl”若显示“hello from activeperl!”,则说明perl安装成功,可以开始使用perl的相关命令来进行openssl的安装了。
(ps:如果你想看看原始的install文件,那么请打开openssl的解压缩目录,下面有两个文件install.w32和install.w64,用记事本方式打开,你可以看到详细的关于安装的解释)
安装openssl
(最关键的步骤来了)
1)首先设定好环境变量,这步参照网上的教程后发现后面的编译步骤不成功,找了很就才发现是这部设置的不对才导致的。
设定环境变量:桌面计算机图标右键->属性->高级系统设置->环境变量->在系统变量当中找到变量名称为path的变量(如果没有找到这新建)点击编辑->在变量名称中填入"c:\program files (x86)\microsoft visual studio 10.0\vc\bin;c:\perl64\bin;c:\windows\system32"->点击确定完成设定。(说明:c:\program files (x86)\microsoft visual studio 10.0\vc\bin路径是vs2010的路径。c:\perl64\bin是运行perl的路径,不若不设定那么perl命令将找不到。c:\windows\system32这个路径很少提到但是很重要,如果不设置那么会造成后面vcvars32.bat环境变量执行出错。)到此环境变量路径设置好之后重启下电脑才能生效。
2)使用visual studio命令提示(2010)进入控制台模式
开始菜单->所有程序->microsoft visual studio 2010->visual studio tools->visual studio命令提示(2010),(ps:以管理员身份运行), 使用cd命令将目录指向c:\program files (x86)\microsoft visual studio 10.0\vc\bin(ps:自己的vc安装路径), 命令行键入vcvars32,运行vcvars32.bat..完成后进入openssl源码的目录(c:\openssl)
3)执行configure命令(配置编译参数)(需将目录跳到openssl源码目录下)
在命令行中键入"perl configure vc-win32 --prefix=c:\openssl"(ps:--prefix=c:\openssl命令为指定安装位置)
4)运行ms\do_ms命令(需将目录跳到openssl源码目录下)
在命令行中键入”ms\do_ms“。
5)运行“nmake -f ms\ntdll.mak”命令进行代码编译(需将目录跳到openssl源码目录下)
编译分两种情况,生成静态库和动态库
(1) 如果是编译openssl动态库,则在命令行键入 nmake -f ms\ntdll.mak
编译成功课在文件夹out32dll里面查看输出的文件,包括应用程序的exe文件、lib文件、dll文件。
(2) 如果是编译openssl静态库,则在命令行键入 nmake -f ms\nt.mak
编译成功课在文件夹out32里面查看输出的文件,包括应用程序的exe文件、lib文件。
6)测试使用命令“nmake -f ms\ntdll.mak test”(若安装成功则可以使用此命令来验证)
使用openssl
当vs2010工程需要用到openssl库时,在包含目录中胎添加openssl安装目录的include目录, 来库目录中添加out32dll目录。
或者将openssl下的include文件夹、lib文件、dll文件考出,使用的时候包含进去就行了。
另外还有几个命令可能会用到:
测试openssl动态库:nmake -f ms\ntdll.mak test
测试openssl静态库:nmake -f ms\nt.mak test
安装openssl动态库:nmake -f ms\ntdll.mak install
安装openssl静态库:nmake -f ms\nt.mak install
清除上次openssl动态库的编译,以便重新编译:nmake -f ms\ntdll.mak clean
清除上次openssl静态库的编译,以便重新编译:nmake -f ms\nt.mak clean
推荐阅读
-
Windows下MySQL服务无法停止和删除的解决办法
-
Linux下Nginx安装的方法(pcre和openssl)
-
windows版本下mysql的安装启动和基础配置图文教程详解
-
Windows系统下使用flup搭建Nginx和Python环境的方法
-
Windows下的PHP安装文件线程安全和非线程安全的区别
-
windows下启动和关闭oracle的命令教程
-
windows7下安装php的imagick和imagemagick扩展教程
-
Windows下MySQL服务无法停止和删除的解决办法
-
LNMP下FTP服务器的安装与使用方法(Pureftpd和Proftpd)
-
Windows系统下Nginx服务器的基本安装和配置方法介绍