根证书
1.建立CA工作目录
mkdir ca
cd ca
2.生成CA私钥
openssl genrsa -out ca-key.pem 1024
3.生成待签名证书
openssl req -new -out ca-req.csr -key ca-key.pem
//ca-cert.pem即为CA根证书,可将其下发到客户端,导入作为根证书。私钥changeit
4.用CA私钥自签名
openssl x509 -req -in ca-req.csr -out ca-cert.pem -signkey ca-key.pem -days 365
5.导出pk12
openssl pkcs12 -export -clcerts -in ca-cert.pem -inkey ca-key.pem -out ca-cert.p12
查看证书
openssl x509 -in ca-cert.pem -noout -text -modulus
如果按请求生成CA证书,由证书申请者生成请求文件certreq.txt。CA端执行签名,生成证书文件1.cer
openssl x509 -req -in c:\certreq.txt -out c:\1.cer -CA ca\ca-cert.pem -CAkey ca\ca-key.pem -days 365 -CAcreateserial
生成server证书
1.创建私钥
openssl genrsa -out server-key.pem 1024
2.创建证书请求
openssl req -new -out server-req.csr -key server-key.pem
3.自签署证书
openssl x509 -req -in server-req.csr -out server-cert.pem -signkey server-key.pem -CA ../ca/ca-cert.pem -CAkey ../ca/ca-key.pem -CAcreateserial -days 365
4.将证书导出成浏览器支持的.p12格式,密码changeit
openssl pkcs12 -export -clcerts -in server-cert.pem -inkey server-key.pem -out server.p12
keytool -keystore serverstore.jks -keypass 123456 -storepass 123456 -alias ca -import -trustcacerts -file ~/ca/ca-cert.pem
keytool -keystore serverstore.jks -keypass 123456 -storepass 123456 -alias server -import -trustcacerts -file ~/server/server-cert.pem
生成client证书
1.创建私钥 :
openssl genrsa -out client-key.pem 1024
2.创建证书请求 :
openssl req -new -out client-req.csr -key client-key.pem
3.自签署证书 :
openssl x509 -req -in client-req.csr -out client-cert.pem -signkey client-key.pem -CA ../ca/ca-cert.pem -CAkey ../ca/ca-key.pem -CAcreateserial -days 36
openssl x509 -in client-cert.pem -noout -text -modulus
4.将证书导出成浏览器支持的.p12格式 :
openssl pkcs12 -export -clcerts -in client-cert.pem -inkey client-key.pem -out client.p12
密码:changeit
根据ca证书生成jks文件
keytool -keystore truststore.jks -keypass 123456 -storepass 123456 -alias ca -import -trustcacerts -file ~/ca/ca-cert.pem
导入证书
在客户端浏览器导入ca-cert.p12作为受信任的根证书,client.p12作为个人证书
Tomcat配置
server.xml
jsse模式
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
clientAuth="true" sslProtocol="TLS"
keystoreFile="../conf/ssl/server.p12" keystorePass="changeit" keystoreType="PKCS12"
truststoreFile="../conf/ssl/truststore.jks" truststorePass="123456" truststoreType="JKS"/>
apr模式
<Connector port="8443" protocol="org.apache.coyote.http11.Http11AprProtocol"
maxThreads="150"
enableLookups="false" disableUploadTimeout="true"
acceptCount="100" scheme="https" secure="true"
clientAuth="true"
SSLEnabled="true"
SSLProtocol="all"
SSLCipherSuite="ALL"
SSLCertificateFile="../conf/ssl/server-cert.pem"
SSLCertificateKeyFile="../conf/ssl/server-key.pem"
SSLCACertificateFile="../conf/ssl/ca-cert.pem"
SSLCACertificatePath="../conf/ssl"
SSLVerifyDepth="15"
SSLVerifyClient="require" />
注意事项
IE8支持SSLv3,TLS, 不支持SSLv2
参考
apache tomcat doc
http://tomcat.apache.org/tomcat-7.0-doc/ssl-howto.html
http://tomcat.apache.org/tomcat-7.0-doc/config/http.html#SSL Support
双向ssl-apr
http://618119.com/archives/2007/10/23/13.html
双向ssl-jsse
http://www.51testing.com/?uid-257506-action-viewspace-itemid-155641
http://wenku.baidu.com/view/7f3c491f650e52ea5518987b.html
openssl
http://blog.csdn.net/gloomuu/archive/2009/08/17/4456501.aspx
http://dddspace.com/2009/03/using-openssl-to-generate-certificates.html
http://hi.baidu.com/kobetec/blog/item/706fc0440ff3b44a510ffe0b.html
分享到:
相关推荐
tomcat7单双向SSL配置,本人亲测,并附有截图代码
Tomcat6配置使用SSL双向认证
Tomcat配置SSL双向认证简单实例
tomcat配置双向SSL认证[整理].pdf
本资源是一个 CentOS 下对 Nginx + Tomcat 配置 SSL 实现服务器 / 客户端双向认证配置示例。详细如何配置请参考博客《图文:CentOS 下对 Nginx + Tomcat 配置 SSL 实现服务器 / 客户端双向认证》,地址是:...
使用openssl与jdk的keytool生成根证书,server端证书,浏览器端证书,并配置使工程跑在https上。(带dos脚本)
呕心沥血,实践出真知,tomcat的ssl配置,实现双向通信。
tomcat下配置ssl双向认证介绍,有具体的步骤截图。
配置适用于正式使用环境下的 Tomcat认证关于如何使用 Tomcat 服务器实现双向 SSL 认证的文章很早就有了,比较实用的文章可以看看 IBM中国网站月
本文档基于JDK+apache-tomcat运行环境进行客户端和服务器端https配置,即SSL双向认证配置
Word文档,图文介绍如何配置Tomcat6,实现SSL双向认证通讯
SSL在tomcat中的配置,网上有很多资料,但是都配置不成功,这个是我在一个项目配置总结的文档,很好,,绝对有用
要实现SSL双向认证, 你必须同时配置Web服务器证书和客户端证书, 并且需要在服务器和客户端之间正确安装根证书。如此方可实现如文所示双向认证。
由于是双向SSL认证,服务器必须要信任客户端证书,因此,必须把客户端证书添加为服务器的信任认证。由于不能直接将PKCS12格式的证书库导入,我们必须先把客户端证书导出为一个单独的CER文件,使用如下命令: keytool...
tomcat6下配置ssl双向验证,通过jdk工具生成证书文件。
一:生成CA证书 二.生成server证书。 三.生成client证书。 四.根据ca证书生成jks文件 五.配置tomcat ssl 六.导入证书 七.验证ssl配置是否正确
SSL配置手册-双向ssl认证-证书生成-证书生成示例-tomcat配置
tomcat实现SSL双向认证配置帮助文档
用keytool生成证书,双向SSL认证配置的方法,以Tomcat举例。包含步骤:一、为服务器生成证书;二、为客户端生成证书;三、让服务器信任客户端证书;四、让客户端信任服务器证书。