安裝openssl有兩種方式,第一種直接下載安裝包,裝上就可運行;第二種可以自己下載源碼,自己編譯。下面對兩種方式均進行詳細描述。
一、下載和安裝openss
方法一:直接使用openssl安裝包
Window 的openssl的安裝包的下載地址為:
http://slproweb.com/products/Win32OpenSSL.html
一般在安裝openssl之前還需要vs的一些插件,該地址中也提供了相關插件的下載。如下圖即為openssl的安裝及其vs插件在下載網頁的截圖。
方法二:自己編譯openssl
此過程比較復雜,需要先安裝perl、vs等軟件,然后才能編譯openssl。
1、下載並安裝perl
-
安裝與配置:
直接運行安裝文件(例如:ActivePerl-5.16.3.1604-MSWin32-x86-298023.msi)即可完成安裝;安裝過程將自動完成環境變量的配置(安裝完成之后,可以在系統環境變量里看到perl的bin目錄(例如: C:\Program Files\perl\site\bin;)已經被加入進來),無需再手工配置; -
測試安裝是否成功:
進入perl安裝目錄的eg文件夾,執行“perl example.pl”若顯示“Hello from ActivePerl!”,則說明Perl安裝成功。如下圖所示:
perl安裝成功之后就可以開始使用Perl的相關命令來進行OpenSSL的安裝了。
2、openssl可以自己下載源碼編譯也可以直接下載安裝包安裝完之后即可使用。
2.1使用源碼編譯openssl
-
下載openssl源碼的路徑:
http://www.openssl.org/source/ -
配置VS2005的環境變量(因為后面編譯openssl時,將會用到vs2005自帶的nmake工具)。
執行VS2005的bin目錄下(例如:C:\Program Files\Microsoft Visual Studio 8\VC\bin)的vcvars32.bat文件即可完成配置,如下圖所示: -
配置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://blog.csdn.net/houjixin/article/details/24305613
或者:
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