0 0

Windows环境 tomcat的OpenSSL双向认证 问题5

先下载
tomcat5.5.26 下载http://ftp.kddilabs.jp/infosystems/apache/tomcat/tomcat-5/v5.5.26/bin/apache-tomcat-5.5.26.zip 
openssl0.9.7c下载http://gnuwin32.sourceforge.net/downlinks/openssl-bin.php 
tomcat:  C:\tomcat
openssl: C:\GnuWin32
把环境配置好使tomcat 能够跑起来

建目录
C:\root,用来存放生成的临时文件。
新建文件openss.txt,然后改名openss.conf 路径:C:\GnuWin32\bin\openss.conf,内容如下:
[ req ]
default_bits           = 1024
default_keyfile        = ca-key.pem
distinguished_name     = req_distinguished_name
attributes             = req_attributes
prompt                 = no
output_password        = as12345

[ req_distinguished_name ]
C                      = CN
ST                     = Guangdong 测试省份
L                      = Shenzhen 测试地点
O                      = Gardent 机构名称
OU                     = Java  组织单位名称
CN                     = Aisce    通用名称
emailAddress           = email@gmail.com

[ req_attributes ]
challengePassword  = 12345678

执行cmd.exe,在命令行窗口执行如下操作:
cd C:\GnuWin32\bin      进入GnuWin32安装目录的bin 文件夹
输入:
生成 CA 证书的 RSA 密钥对
openssl genrsa -out c:\root\ca-key.pem 1024   
genrsa  用于生成 RSA 密钥对的 OpenSSL 命令
-out 令生成的密钥对保存到文件 c:\root\ca-key.pem
1024 RSA 模数位数,在一定程度上表征了密钥强度

生成待签名证书
openssl req -new -out c:\root\ca-req.csr -key c:\root\ca-key.pem -config openssl.conf
req 用于生成证书请求的 OpenSSL 命令
-new 生成一个新的证书请求
-key 指定 c:\root\ca-key.pem 为证书所使用的密钥对文件。

用CA私钥进行自签名
openssl x509 -req -in c:\root\ca-req.csr -out c:\root\ca-cert.pem -signkey c:\root\ca-key.pem -days 365
x509 生成一份 X.509 证书
-in 指定用户证书请求文件为 ca-req.csr 
-signkey 把输入的文件变成字签名的证书

生成server端证书

生成KeyPair,注意keyPass,storepass 要一样
keytool -genkey -alias aisce -validity 365 -keyalg RSA -keysize 1024 -keypass abcdef -storepass   abcdef -dname "cn=localhost,ou=department,o=company,l=Beijing,st=Beijing,c=CN" -keystore c:\root\aisce.jks

生成待签名证书
keytool -certreq -alias aisce -sigalg MD5withRSA -file c:\root\aisce.csr -keypass abcdef -keystore c:\root\aisce.jks -storepass abcdef

用CA私钥进行签名
openssl x509 -req -in c:\root\aisce.csr -out c:\root\aisce-cert.pem -CA c:\root\ca-cert.pem -CAkey  c:\root\ca-key.pem -days 365 -set_serial 1

导入信任的CA根证书到Java的默认位置
keytool -import -v -trustcacerts -storepass changeit -alias root_aisce -file c:\root\ca-cert.pem -keystore %JAVA_HOME%\jre\lib\security\cacerts

把CA签名后的server端证书导入keystore
提示时,输入abcdef
keytool -import -v -trustcacerts -storepass abcdef -alias aisce -file c:\root\aisce-cert.pem -keystore c:\root\aisce.jks

查看server端证书
密码分别是changeit, abcde
keytool -list -keystore %JAVA_HOME%\jre\lib\security\cacerts
keytool -list -keystore c:\root\aisce.jks


在C:\tomcat-5.5.26\conf\server.xml找到
     <!-- Define a SSL HTTP/1.1 Connector on port 8443 -->
    <!--
    <Connector port="8443" maxHttpHeaderSize="8192"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" disableUploadTimeout="true"
               acceptCount="100" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS" />
    -->
   改为:
   <!-- Define a SSL HTTP/1.1 Connector on port 8443 -->
    <Connector port="8443" maxHttpHeaderSize="8192"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" disableUploadTimeout="true"
               acceptCount="100" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS" 
               keystoreFile="C:\tomcat\conf\aisce.jks" keystorePass="abcdef"/>

将C:\root\aisce.jks复制到C:\tomcat\conf\下

Client端安装信任的根证书
将c:\root\ca-cert.pem改名为c:\root\ca-cert.cer,在client端的IE中使用"工具-->Internet选项-->内容-->证书-->导入"把我们生成的CA根证书导入,使其成为用户信任的CA。
在IE浏览器的地址栏中输入https://localhost:8443
测试成功,状态栏上的小锁处于闭合状态,表示您已经成功地与服务器建立了要求客户端验证的SSL安全连接



按理上面得因该可以实现了,但是我到红色部分就不能执行了. 请各位大侠们指教.
2008年9月12日 12:16
目前还没有答案

相关推荐

    tomcat 实现https 双向认证通信

    本文主要介绍如何在Linux平台上,使用Apache Tomcat、OpenSSL以及Java Keytool来实现HTTPS通信,并进一步完成双向认证的功能。文章假设读者具备基本的Linux操作技能以及对Tomcat有一定的了解。 #### 环境配置 - **...

    tomcat的双向ssl配置

    标题中的“Tomcat的双向SSL配置”涉及到的是网络通信安全领域的一个重要概念,即Transport Layer Security(传输层安全)协议的双向身份验证。在传统的SSL/TLS连接中,服务器通常被验证,但客户端的身份可能不被确认...

    https双向认证证书配置详解

    3. **启用双向认证**:在 Tomcat 的 SSL Valve 中启用双向认证。 #### 六、总结 通过上述步骤,我们可以实现 HTTPS 的双向认证,这在许多安全性要求高的场景中非常实用。理解这些基础知识对于正确配置 SSL/TLS ...

    openssl生成认证文件

    总结起来,这个压缩包提供了在OpenSSL环境中生成认证文件的工具和指南,特别针对在Tomcat Web服务器上实现双向SSL认证的场景。用户需要理解SSL/TLS的工作原理,以及如何在OpenSSL和Tomcat中配置和管理证书,以确保...

    openssl安装配置(win64版,附ActivePerl安装包和openssl安装包)

    本文将详细讲解如何在Windows 64位系统上安装配置OpenSSL,同时还会涉及到ActivePerl的安装,以及如何使用OpenSSL配置Tomcat SSL双向认证。 首先,我们来看OpenSSL的安装。下载的压缩包中应该包含了适用于Windows ...

    AndroidHttpClient访问Tomcat双向SSL验证服务器.pdf

    ### AndroidHttpClient访问Tomcat双向SSL验证服务器 #### 环境与背景介绍 ...通过对这些步骤的详细解析,不仅解决了实际项目中的问题,也为读者提供了一个全面了解SSL双向认证原理和技术实现的机会。

    安装OpenSSL_for_Win32

    通过以上步骤,我们不仅在 Windows 32 位系统上成功安装了 OpenSSL,还学会了如何使用 OpenSSL 生成自签名证书以及如何为 Tomcat 服务器配置 SSL 双向认证。这些技能对于保障网络通信的安全性至关重要。如果您在实际...

    搭建二级CA安全认证框架

    ### 搭建二级CA安全认证框架 #### Windows 2008 Server 主CA与子CA的安装...此外,还介绍了如何在Tomcat服务器上配置双向认证,以及在必要时使用`OpenSSL`进行证书管理的方法。这对于企业级网络环境的安全性至关重要。

    opesnssl证书配置和使用1

    4. **SSL双向/单向认证**:双向认证要求客户端和服务器都需验证对方的身份,而单向认证只需服务器验证客户端。openssl可以通过不同的命令行选项来实现这两种认证模式。 5. **导入证书**:生成的证书需要导入到...

Global site tag (gtag.js) - Google Analytics