win64使用openssl生成ca证书
一、准备工作:
1、 下载win64的Openssl,可到http://slproweb.com/products/Win32OpenSSL.html下载,这里下载1.0.1j版本。同时在该地址下载Visual C++ 2008Redistributables (x64)。如下图:
先安装Visual C++ 2008Redistributables (x64),然后安装Win64 OpenSSL v1.0.1j。这里我安装到D:\OpenSSL-Win64\目录下。
2、 下载Openssl源码,去官网http://www.openssl.org/下载即可。如下图:
解压openssl-1.0.1j.tar.gz,找到\openssl-1.0.1j\apps目录,拷贝demoCA目录和openssl.cnf文件到Openssl的安装目录下的bin目录下(即D:\OpenSSL-Win64\bin\)。
3、在D:\OpenSSL-Win64\bin目录下,创建ca、jks、server、client四个目录。
二、开始生成证书:
打开命令提示行(cmd.exe),----如果是win7环境需要以管理员身份运行cmd.exe(一般在C:\Windows\System32下查找到cmd.exe右建以管理员身份运行),
并切换到Openssl安装目录的bin目录下。如下图:
依次执行下述命令。
(一)生成CA证书
1.创建私钥:
D:\OpenSSL-Win64\bin>opensslgenrsa -out ca/ca-key.pem 1024
2.创建证书请求:
D:\OpenSSL-Win64\bin>opensslreq -new -out ca/ca-req.csr -key ca/ca-key.pem -config openssl.cnf
-----
Country Name (2 letter code) [AU]:CN
State or Province Name (full name) [Some-State]:BJ
Locality Name (eg, city) []:BJ
Organization Name (eg, company) [Internet Widgits PtyLtd]:ple
Organizational Unit Name (eg, section) []:live
Common Name (eg, YOUR name) []:root
Email Address []:
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
3.自签署证书:
D:\OpenSSL-Win64\bin>opensslx509 -req -in ca/ca-req.csr -out ca/ca-cert.pem -signkey ca/ca-key.pem -days3650
4.将证书导出成浏览器支持的.p12格式:
D:\OpenSSL-Win64\bin>opensslpkcs12 -export -clcerts -in ca/ca-cert.pem -inkey ca/ca-key.pem -out ca/ca.p12
密码:passca
(二)生成server证书
1.创建私钥:
D:\OpenSSL-Win64\bin>opensslgenrsa -out server/server-key.pem 1024
2.创建证书请求:
D:\OpenSSL-Win64\bin>opensslreq -new -out server/server-req.csr -key server/server-key.pem -config openssl.cnf
-----
Country Name (2 letter code) [AU]:CN
State or Province Name (full name) [Some-State]:BJ
Locality Name (eg, city) []:BJ
Organization Name (eg, company) [Internet Widgits PtyLtd]:ple
Organizational Unit Name (eg, section) []:live
Common Name (eg, YOUR name) []:localhost 注释:一定要写服务器所在的ip地址//红色这里是本机测试,所以我写localhost
Email Address []:
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
3.自签署证书:
D:\OpenSSL-Win64\bin>opensslx509 -req -in server/server-req.csr -out server/server-cert.pem -signkeyserver/server-key.pem -CA ca/ca-cert.pem -CAkey ca/ca-key.pem -CAcreateserial-days 3650
4.将证书导出成浏览器支持的.p12格式:
D:\OpenSSL-Win64\bin>opensslpkcs12 -export -clcerts -in server/server-cert.pem -inkey server/server-key.pem-out server/server.p12
密码:passca
(三)生成client证书
1.创建私钥:
D:\OpenSSL-Win64\bin>opensslgenrsa -out client/client-key.pem 1024
2.创建证书请求:
D:\OpenSSL-Win64\bin>opensslreq -new -out client/client-req.csr -key client/client-key.pem -config openssl.cnf
-----
Country Name (2 letter code) [AU]:CN
State or Province Name (full name) [Some-State]:BJ
Locality Name (eg, city) []:BJ
Organization Name (eg, company) [Internet Widgits PtyLtd]:ple
Organizational Unit Name (eg, section) []:live
Common Name (eg, YOUR name) []:client
Email Address []:
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
3.自签署证书:
D:\OpenSSL-Win64\bin>opensslx509 -req -in client/client-req.csr -out client/client-cert.pem -signkeyclient/client-key.pem -CA ca/ca-cert.pem -CAkey ca/ca-key.pem -CAcreateserial-days 3650
4.将证书导出成浏览器支持的.p12格式:
D:\OpenSSL-Win64\bin>opensslpkcs12 -export -clcerts-in client/client-cert.pem -inkey client/client-key.pem -out client/client_err.p12
密码:passca
5. 生成客户端证书导出成浏览器支持的.p12格式(用于导入浏览器):
D:\OpenSSL-Win64\bin>opensslpkcs12 -export -clcerts -in ca/ca-cert.pem -inkey ca/ca-key.pem -outclient/client.p12
密码:passca
(四)根据ca证书生成jks文件
D:\OpenSSL-Win64\bin>keytool -keystore D:/OpenSSL-Win64/bin/jks/truststore.jks -keypass 222222-storepass 222222 -alias ca -import -trustcacerts -file D:/OpenSSL-Win64/bin/ca/ca-cert.pem
(五)配置tomcat ssl
修改conf/server.xml。配置如下。xml 代码
<Connectorport="8443" protocol="org.apache.coyote.http11.Http11Protocol"SSLEnabled="true" maxThreads="150" scheme="https"secure="true" connectionTimeout="20000" clientAuth="true"sslProtocol="TLS" useBodyEncodingForURI="true"enableLookups="false" acceptorThreadCount="2"socketBuffer="18000" maxHttpHeaderSize="262144" keystoreFile="server.p12"keystorePass="passca" keystoreType="PKCS12" truststoreFile="truststore.jks"truststorePass="222222" truststoreType="JKS" SSLCertificateFile="../bin/server-cert.pem" SSLCertificateKeyFile="../bin/server-key.pem" />
这里使用到了四个文件,各个文件都是在前面的步骤中生成的。
蓝色标识的server.p12和truststore.jks这两个文件需要放在tomcat的根目录下(如C:\Venustech\TSOC\webserver)。
红色的server-cert.pem和server-key.pem默认是放在tomcat的bin文件夹下的(如C:\Venustech\TSOC\webserver\bin)。
☆绿色部分为必须的,否则证书不生效。
(六)验证ssl配置是否正确
访问系统http://localhost :8443/usm。如图:
(七)导入证书
将ca/ca.p12,client/client.p12分别导入到IE中去(打开IE->;Internet选项->内容->证书)。
ca.p12导入至受信任的根证书颁发机构,client.p12导入至个人。
重新访问系统。
注:1、细心的不难发现生成client.p12跟ca.p12是一样的,我测试时发现导入正常方式的client_err.p12不能正常访问系统,导入ca.p12能正常访问,有了解的大神帮助解决下。
win64使用openssl生成ca证书相关推荐
- Apache OpenSSL生成CA证书使用
最近在学习SSL协议,这次是基于Apache服务器自带的openssl来实现的 TLS:传输层安全协议 SSL:安全套接字层 KEY:私钥 CSR:证书签名请求,即公钥,生成证书时需要将此提交给证书机 ...
- 24、OpenSSL生成CA证书及终端用户证书
1.准备ca.conf配置文件 内容如下 [ req ] default_bits = 4096 distinguished_name = req_distinguished_name[ ...
- nginx反向代理cas-server之2:生成证书,centOS下使用openssl生成CA证书(根证书、server证书、client证书)...
前些天搭好了cas系统,这几天一致再搞nginx和cas的反向代理,一直不成功,但是走http还是测试通过的,最终确定是ssl认证证书这一块的问题,原本我在cas服务端里的tomcat已经配置了证书, ...
- OpenSSL生成CA自签名根证书和颁发证书和证书提取
CA根证书 生成流程 第一步 生成CA证书私钥 1.#生成ca私钥 (.key 和 pem 只是格式不一样) openssl genrsa -aes128 -passout pass:Test@202 ...
- openssl给内网IP生成ca证书(ssl证书)
一.要使用 OpenSSL 为内网 IP 生成 CA 证书,您需要遵循以下步骤: 1.创建一个存放证书的文件夹 mkdir /opt/zhengshu 注意:大家自己按照自己的目录创建就行,我的直接放 ...
- 使用openssl生成CA、server、client私钥和证书(证书包括公钥)
参考:SSL证书制作并使用NodeJs进行HTTPS认证配置 - 苍青浪 - 博客园 1. 生成CA证书及私钥: 1)生成一个私钥为ca-key.pem openssl genrsa -out ca- ...
- OpenSSL创建生成CA证书、服务器、客户端证书及密钥
使用OpenSSL创建生成CA证书.服务器.客户端证书及密钥 目录 使用OpenSSL创建生成CA证书.服务器.客户端证书及密钥 (一)生成CA证书 (二)生成服务器证书 (三)生成客户端证书 (四) ...
- Windows使用Openssl生成免费证书
一.安装 下载 Win32/Win64 OpenSSL Installer for Windows - Shining Light Productionshttp://slproweb.com/pro ...
- fiddler证书生成ca证书命令及抓包配置
fiddler证书生成ca证书命令 下载OpenSSL fiddler配置https fiddler导出证书 将文件直接放到openssl的bin目录下 执行cmd命令生成ca证书 将证书放到andr ...
最新文章
- IDEA 13 tomcat 进行远程调试
- 第四课:算法效率的度量和存储空间需求
- linux下如何使用USB转串口设备
- C++ 传指针还是引用?
- 学习笔记(24):Python网络编程并发编程-进程与线程的区别
- 线程,代码和数据–多线程Java程序实际运行的方式
- Android中获取应用程序(包)的信息-----PackageManager的使用(一)
- 6种快速统计代码执行时间的方法,真香!(史上最全)
- D5000工作站服务器型号,【戴尔Precision T5820参数】戴尔Precision T5820系列工作站参数-ZOL中关村在线...
- 美团买菜:采购量提升至平时3-4倍 提供无接触配送服务
- “支付功能”怎么测试?
- Mysql binlog 的写入机制
- Hadoop和Spark三大核心组件介绍与对比
- caffe的protocol buffer使用例子
- 【TSP】基于matlab GUI蚁群算法求解旅行商问题【含Matlab源码 929期】
- FME转换器 正则字符查找(StringSearcher)
- 微博数据各字段的含义
- 如何使用工时表软件跟踪时间和成本?
- lecture9-提高模型泛化能力的方法
- 关于人工智能的一些幻想