参考:http://www.51testing.com/?uid-257506-action-viewspace-itemid-155641
一: 生成CA 证书
不使用第三方权威机构的CA 来认证,自己充当 CA 的角色。
1. 创建私钥 :
C:\OpenSSL\bin>openssl genrsa -out ca/ca-key.pem 2048
2.创建证书请求 :
C:\OpenSSL\bin>openssl req -new -out ca/ca-req.csr -key ca/ca-key.pem
-----
Country Name (2 letter code) [AU]:区域代码
State or Province Name (full name) [Some-State]:省
Locality Name (eg, city) []:市
Organization Name (eg, company) [Internet Widgits Pty Ltd]:组织
Organizational Unit Name (eg, section) []:部门
Common Name (eg, YOUR name) []: 自己的名字
Email Address []:
3.自签署证书 :
C:\OpenSSL\bin>openssl x509 -req -in ca/ca-req.csr -out ca/ca-cert.pem -signkey ca/ca-key.pem -days 3650
4.将证书导出成浏览器支持的 .p12 格式 :
C:\OpenSSL\bin>openssl pkcs12 -export -clcerts -in ca/ca-cert.pem -inkey ca/ca-key.pem -out ca/ca.p12
密码:changeit,这步可以不做,浏览器直接导入ca-cert.pem
二 .生成 server 证书
1. 创建私钥 :
C:\OpenSSL\bin>openssl genrsa -out server/server-key.pem 2048
2.创建证书请求 :
C:\OpenSSL\bin>openssl req -new -out server/server-req.csr -key server/server-key.pem
-----
Country Name (2 letter code) [AU]:cn
State or Province Name (full name) [Some-State]:zhejiang
Locality Name (eg, city) []:hangzhou
Organization Name (eg, company) [Internet Widgits Pty Ltd]:skyvision
Organizational Unit Name (eg, section) []:test
Common Name (eg, YOUR name) []: 192.168.1.246 注释:一定要写服务器所在的ip 地址
Email Address []:
3.自签署证书:
C:\OpenSSL\bin>openssl x509 -req -in server/server-req.csr -out server/server-cert.pem -signkey server/server-key.pem -CA ca/ca-cert.pem -CAkey ca/ca-key.pem -CAcreateserial -days 3650
4.将证书导出成浏览器支持的 .p12 格式:
C:\OpenSSL\bin>openssl pkcs12 -export -clcerts -in server/server-cert.pem -inkey server/server-key.pem -out server/server.p12
密码:changeit ,server.xml文件中写这个密码
三 .配置 tomcat ssl
修改conf/server.xml
tomcat 5.5的配置:
<Connector port="8443" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" disableUploadTimeout="true"
acceptCount="100" scheme="https" secure="true"
clientAuth="true" sslProtocol="TLS"
keystoreFile="server.p12" keystorePass="changeit" keystoreType="PKCS12" />
四 . 导入证书
客户端导入 将ca.p12 证书
IE中去(打开 IE->;Internet 选项 -> 内容 -> 证书)
ca.p12导入至受信任的根证书颁发机构
五 . 验证ssl 配置是否正确
访问你的应用 http://ip:8443/ ,如果配置正确的话会出现请求你数字证书的对话框。