- 浏览: 217000 次
- 性别:
- 来自: 深圳
文章分类
最新评论
-
liminshaoye:
为什么我的一次成功之后就不能发送第二次了呢?
Java 使用SMSLib通过串口通讯收发短信 -
sziitjiang:
面试的题目,慢慢研究,还是能学到很多东西
JAVA 面试题 -
sziitjiang:
老大,我百度了一下SMG引擎,把你的博客给百度出来了!
SMG引擎 1.3.0 功能说明 -
jinkunaier:
,受教了!
深入探索SOAP1.1--使用SAAJ1.2.1 -
genggeng:
THX,对我入门很有帮助......
Java 使用SMSLib通过串口通讯收发短信
终于搞定了Windows下Tomcat Web服务器的SSL配置
作者: 王者之剑(http://www.albertsong.com/) 日期: 2008-05-08 18:05
字体大小: 小 中 大
关键词:Tomcat SSL OpenSSL Windows
本文涉及:
1.windows下的OpenSSL安装
2.自己签发根证书
3.用这个根证书来签发服务器证书
4.服务器端证书导入
5.TOMCAT服务器设置
6.客户端根证书安装
本文不涉及:
1.SSL相关的概念及解释
2.购买CA证书
3.双向SSL认证
1.软件准备
1) jsdk1.5下载 http://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_Developer-Site/en_US/-/USD/VerifyItem-Start/jdk-1_5_0_15-windows-i586-p.exe?BundledLineItemUUID=skhIBe.l94EAAAEZz_YKv8Xt&OrderID=tzdIBe.l6SoAAAEZxfYKv8Xt&ProductID=9K3ACUFBov0AAAEYe.s5AXuQ&FileName=/jdk-1_5_0_15-windows-i586-p.exe
2)tomcat5.5.26下载http://ftp.kddilabs.jp/infosystems/apache/tomcat/tomcat-5/v5.5.26/bin/apache-tomcat-5.5.26.zip
3)openssl0.9.7c下载http://gnuwin32.sourceforge.net/downlinks/openssl-bin.php
2.软件安装
安装(解压)上面下载的软件,假设安装目录如下:
jsdk: C:\jdk1.5.0_15
tomcat: C:\tomcat-5.5.26
openssl: C:\GnuWin32OpenSSL
3.SSL配置
1)添加windows环境变量JAVA_HOME=C:\jdk1.5.0_15
运行C:\tomcat-5.5.26\bin\startup.bat,如果能正常启动,说明环境变量设置成功。
关闭tomcat启动窗口。
2)建目录C:\ca,用来存放生成的临时文件。
3)新建文件C:\GnuWin32OpenSSL\bin\openssl.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 = Beijing
L = Xichengqu
O = www.albertsong.com
OU = ca.albertsong.com
CN = Albert Song
emailAddress = test@test.com
[ req_attributes ]
challengePassword = as1234567
新建openssl.conf可参考:http://www.openssl.org/docs/apps/req.html#EXAMPLES
4)执行cmd.exe,在命令行窗口执行如下操作:
rem 转到OpenSSL目录
cd C:\GnuWin32OpenSSL\bin
rem 生成CA私钥以及自签名根证书
rem 生成CA私钥
openssl genrsa -out c:\ca\ca-key.pem 1024
rem 生成待签名证书
openssl req -new -out c:\ca\ca-req.csr -key c:\ca\ca-key.pem -config openssl.conf
rem 用CA私钥进行自签名
openssl x509 -req -in c:\ca\ca-req.csr -out c:\ca\ca-cert.pem -signkey c:\ca\ca-key.pem -days 365
rem 转到java bin目录
cd C:\jdk1.5.0_15\bin
rem 生成server端证书
rem 生成KeyPair,注意keyPass,storepass 要一样
keytool -genkey -alias blog_albertsong -validity 365 -keyalg RSA -keysize 1024 -keypass as.1234 -storepass as.1234 -dname "cn=www.yourdomain.com,ou=department,o=company,l=Beijing,st=Beijing,c=CN" -keystore c:\ca\albertsong.jks
rem 生成待签名证书
keytool -certreq -alias blog_albertsong -sigalg MD5withRSA -file c:\ca\albertsong.csr -keypass as.1234 -keystore c:\ca\albertsong.jks -storepass as.1234
rem 转到OpenSSL目录
cd C:\GnuWin32OpenSSL\bin
rem 用CA私钥进行签名
openssl x509 -req -in c:\ca\albertsong.csr -out c:\ca\albertsong-cert.pem -CA c:\ca\ca-cert.pem -CAkey c:\ca\ca-key.pem -days 365 -set_serial 1
rem 转到java bin目录
cd C:\jdk1.5.0_15\bin
rem 导入信任的CA根证书到Java的默认位置
keytool -import -v -trustcacerts -storepass changeit -alias root_albertsong -file c:\ca\ca-cert.pem -keystore %JAVA_HOME%\jre\lib\security\cacerts
rem 把CA签名后的server端证书导入keystore
rem 提示时,输入as.1234
keytool -import -v -trustcacerts -storepass as.1234 -alias blog_albertsong -file c:\ca\albertsong-cert.pem -keystore c:\ca\albertsong.jks
rem 查看server端证书
rem 密码分别是changeit, as.1234
keytool -list -keystore %JAVA_HOME%\jre\lib\security\cacerts
keytool -list -keystore c:\ca\albertsong.jks
5)修改server.xml使Tomcat支持SSL
在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-5.5.26\conf\albertsong.jks" keystorePass="as.1234"/>
6)将C:\ca\albertsong.jks复制到C:\tomcat-5.5.26\conf\下。
7)Client端安装信任的根证书
将c:\ca\ca-cert.pem改名为c:\ca\ca-cert.cer,在client端的IE中使用"工具-->Internet选项-->内容-->证书-->导入"把我们生成的CA根证书导入,使其成为用户信任的CA。
用IE浏览器使用SSL协议访问Tomcat
执行C:\tomcat-5.5.26\bin\startup.bat启动Tomcat
在IE浏览器的地址栏中输入https://localhost:8443,如果前面的操作都正确的话,应该可以看到Tomcat的欢迎页面。同时状态栏上的小锁处于闭合状态,表示您已经成功地与服务器建立了要求客户端验证的SSL安全连接。
9)其他
rem 修改keystore的keypass
keytool -alias blog_albertsong -keypasswd -keypass as.1234 -new as.12345 -keystore C:\tomcat-5.5.26\conf\albertsong.jks
如果要将tomcat安装成服务,可参考http://www.albertsong.com/read-64.html
参考链接
http://topic.csdn.net/t/20021205/16/1234396.html
http://www.openssl.org/docs/apps/req.html
http://www.herongyang.com/crypto/OpenSSL_Signing_keytool_CSR_5.html
http://gnuwin32.sourceforge.net/packages/openssl.htm
http://www.techscore.com/tech/J2EE/Servlet/11-3.html
http://www.jajakarta.org/tomcat/tomcat5.0/ja/docs/tomcat-docs/ssl-howto.html
http://www.daily-labo.com/opensslcnf.txt
http://www.310f.com/exocet/hiki/?Apache+SSL+on+Windows
http://www.ibm.com/developerworks/cn/security/se-tcssl/index.html
后记:
虽然是一个简单的问题,也用了我几天的时间,起实质作用的是最后半天。按照这个笔记再来一遍,不过数分钟时间,而且不需要具备任何SSL的相关知识,只要你还能下载到我链接里给出的软件。
作者: 王者之剑(http://www.albertsong.com/) 日期: 2008-05-08 18:05
字体大小: 小 中 大
关键词:Tomcat SSL OpenSSL Windows
本文涉及:
1.windows下的OpenSSL安装
2.自己签发根证书
3.用这个根证书来签发服务器证书
4.服务器端证书导入
5.TOMCAT服务器设置
6.客户端根证书安装
本文不涉及:
1.SSL相关的概念及解释
2.购买CA证书
3.双向SSL认证
1.软件准备
1) jsdk1.5下载 http://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_Developer-Site/en_US/-/USD/VerifyItem-Start/jdk-1_5_0_15-windows-i586-p.exe?BundledLineItemUUID=skhIBe.l94EAAAEZz_YKv8Xt&OrderID=tzdIBe.l6SoAAAEZxfYKv8Xt&ProductID=9K3ACUFBov0AAAEYe.s5AXuQ&FileName=/jdk-1_5_0_15-windows-i586-p.exe
2)tomcat5.5.26下载http://ftp.kddilabs.jp/infosystems/apache/tomcat/tomcat-5/v5.5.26/bin/apache-tomcat-5.5.26.zip
3)openssl0.9.7c下载http://gnuwin32.sourceforge.net/downlinks/openssl-bin.php
2.软件安装
安装(解压)上面下载的软件,假设安装目录如下:
jsdk: C:\jdk1.5.0_15
tomcat: C:\tomcat-5.5.26
openssl: C:\GnuWin32OpenSSL
3.SSL配置
1)添加windows环境变量JAVA_HOME=C:\jdk1.5.0_15
运行C:\tomcat-5.5.26\bin\startup.bat,如果能正常启动,说明环境变量设置成功。
关闭tomcat启动窗口。
2)建目录C:\ca,用来存放生成的临时文件。
3)新建文件C:\GnuWin32OpenSSL\bin\openssl.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 = Beijing
L = Xichengqu
O = www.albertsong.com
OU = ca.albertsong.com
CN = Albert Song
emailAddress = test@test.com
[ req_attributes ]
challengePassword = as1234567
新建openssl.conf可参考:http://www.openssl.org/docs/apps/req.html#EXAMPLES
4)执行cmd.exe,在命令行窗口执行如下操作:
rem 转到OpenSSL目录
cd C:\GnuWin32OpenSSL\bin
rem 生成CA私钥以及自签名根证书
rem 生成CA私钥
openssl genrsa -out c:\ca\ca-key.pem 1024
rem 生成待签名证书
openssl req -new -out c:\ca\ca-req.csr -key c:\ca\ca-key.pem -config openssl.conf
rem 用CA私钥进行自签名
openssl x509 -req -in c:\ca\ca-req.csr -out c:\ca\ca-cert.pem -signkey c:\ca\ca-key.pem -days 365
rem 转到java bin目录
cd C:\jdk1.5.0_15\bin
rem 生成server端证书
rem 生成KeyPair,注意keyPass,storepass 要一样
keytool -genkey -alias blog_albertsong -validity 365 -keyalg RSA -keysize 1024 -keypass as.1234 -storepass as.1234 -dname "cn=www.yourdomain.com,ou=department,o=company,l=Beijing,st=Beijing,c=CN" -keystore c:\ca\albertsong.jks
rem 生成待签名证书
keytool -certreq -alias blog_albertsong -sigalg MD5withRSA -file c:\ca\albertsong.csr -keypass as.1234 -keystore c:\ca\albertsong.jks -storepass as.1234
rem 转到OpenSSL目录
cd C:\GnuWin32OpenSSL\bin
rem 用CA私钥进行签名
openssl x509 -req -in c:\ca\albertsong.csr -out c:\ca\albertsong-cert.pem -CA c:\ca\ca-cert.pem -CAkey c:\ca\ca-key.pem -days 365 -set_serial 1
rem 转到java bin目录
cd C:\jdk1.5.0_15\bin
rem 导入信任的CA根证书到Java的默认位置
keytool -import -v -trustcacerts -storepass changeit -alias root_albertsong -file c:\ca\ca-cert.pem -keystore %JAVA_HOME%\jre\lib\security\cacerts
rem 把CA签名后的server端证书导入keystore
rem 提示时,输入as.1234
keytool -import -v -trustcacerts -storepass as.1234 -alias blog_albertsong -file c:\ca\albertsong-cert.pem -keystore c:\ca\albertsong.jks
rem 查看server端证书
rem 密码分别是changeit, as.1234
keytool -list -keystore %JAVA_HOME%\jre\lib\security\cacerts
keytool -list -keystore c:\ca\albertsong.jks
5)修改server.xml使Tomcat支持SSL
在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-5.5.26\conf\albertsong.jks" keystorePass="as.1234"/>
6)将C:\ca\albertsong.jks复制到C:\tomcat-5.5.26\conf\下。
7)Client端安装信任的根证书
将c:\ca\ca-cert.pem改名为c:\ca\ca-cert.cer,在client端的IE中使用"工具-->Internet选项-->内容-->证书-->导入"把我们生成的CA根证书导入,使其成为用户信任的CA。
用IE浏览器使用SSL协议访问Tomcat
执行C:\tomcat-5.5.26\bin\startup.bat启动Tomcat
在IE浏览器的地址栏中输入https://localhost:8443,如果前面的操作都正确的话,应该可以看到Tomcat的欢迎页面。同时状态栏上的小锁处于闭合状态,表示您已经成功地与服务器建立了要求客户端验证的SSL安全连接。
9)其他
rem 修改keystore的keypass
keytool -alias blog_albertsong -keypasswd -keypass as.1234 -new as.12345 -keystore C:\tomcat-5.5.26\conf\albertsong.jks
如果要将tomcat安装成服务,可参考http://www.albertsong.com/read-64.html
参考链接
http://topic.csdn.net/t/20021205/16/1234396.html
http://www.openssl.org/docs/apps/req.html
http://www.herongyang.com/crypto/OpenSSL_Signing_keytool_CSR_5.html
http://gnuwin32.sourceforge.net/packages/openssl.htm
http://www.techscore.com/tech/J2EE/Servlet/11-3.html
http://www.jajakarta.org/tomcat/tomcat5.0/ja/docs/tomcat-docs/ssl-howto.html
http://www.daily-labo.com/opensslcnf.txt
http://www.310f.com/exocet/hiki/?Apache+SSL+on+Windows
http://www.ibm.com/developerworks/cn/security/se-tcssl/index.html
后记:
虽然是一个简单的问题,也用了我几天的时间,起实质作用的是最后半天。按照这个笔记再来一遍,不过数分钟时间,而且不需要具备任何SSL的相关知识,只要你还能下载到我链接里给出的软件。
发表评论
-
java对象的强引用,软引用,弱引用和虚引用
2017-03-09 23:36 330标签: javaoutofmemoryerror ... -
JAVA 中BIO,NIO,AIO的理解
2017-03-09 23:30 300JAVA 中BIO,NIO,AIO的理解 博客分类: 网络编 ... -
JAVA 中BIO,NIO,AIO的理解
2017-03-09 23:29 0博客分类: 网络编程 【转自】http://qindon ... -
诸葛亮为什么难以入围千古名相之列
2011-06-16 16:31 717诸葛亮为什么难以入围 ... -
windows 2003 密码的破解
2011-05-18 01:14 1020windows 2003 密码的破解 ... -
解决Linux操作系统下Java的中文乱码问题
2011-03-04 10:57 882解决Linux操作系统下Java的中文乱码问题 关注Linu ... -
利用sethc.exe粘滞键文件破解密码进系统小健
2011-01-20 22:42 1399利用sethc.exe粘滞键文件破解密码进系统小健 发表于 系 ... -
windows 2003服务器创建隐藏账号以及清除隐藏账号的完美教程
2011-01-20 14:18 3651一.建立一个别人永远删不掉的管理员用户 操作步骤: ... -
使用gzip优化web应用(filter实现)
2010-12-25 12:18 7822009-05-18 使用gzip优化web应用(filter ... -
ulimit 设置
2010-11-29 22:58 1622ulimit 设置(2009-08-21 15:17:16) ... -
浅析tomcat nio 配置
2010-11-29 20:49 984浅析tomcat nio 配置 Tomcat 6.X实现了J ... -
tomcat too open files ,solution
2010-11-28 19:28 6911) # ulimit -a core file size ( ... -
Tomcat [java.net.SocketException: Too many open files]解决方法
2010-11-28 14:26 1107主题: Tomcat [java.net.SocketExce ... -
Android开发者如何玩转应用开发
2010-11-26 12:27 747Android开发者如何玩转应 ... -
令人担忧的国内java开发现状
2010-11-25 22:20 92223 令人担忧的国内java开发现状 文章分类:Java编程 ... -
paypal在线支付的通信接口
2010-11-25 22:15 866paypal在线支付的通信接口 ★★★ 本篇为原创,需要引用转 ... -
QQ能上网页打不开的终极解决办法:用WinSock XP Fix修复2009-4-25
2010-06-01 09:31 4717现在某些垃圾网站 ... -
使用org.apache.commons.net.ftp包开发FTP客户端,实现进度汇报,实现断点续传,中文支持
2010-02-23 18:04 2412使用org.apache.commons.net.ftp包开发 ... -
axis2创建web service(一)
2009-09-22 17:22 653axis2创建w ...
相关推荐
在IT领域,Web服务器和Tomcat服务器是两个关键的概念,它们在构建和部署...总的来说,理解和配置Web服务器和Tomcat服务器是开发和运维Web应用的关键技能。通过深入学习,开发者可以创建更高效、更安全的Web服务环境。
本文档将详细介绍如何在Windows 2008服务器上搭建CA服务器,并配置Tomcat 5的SSL加密传输。本文档分为两章,第一章讲述如何在Windows 2008服务器上搭建CA服务器,第二章讲述如何在Tomcat 5上申请CA证书并配置SSL加密...
本文将详细介绍如何在Apache Tomcat 6服务器上配置SSL,确保Web服务的传输安全性。 **一、理解SSL** SSL是一种网络安全协议,它通过公钥/私钥对数据进行加密,防止在传输过程中被窃取或篡改。SSL证书包含了一个...
在 Tomcat 服务器中配置 SSL 加密连接是非常重要的,然而在 Tomcat 6.0.33 版本中,默认启用了 APR(APR 是通过 JNI 访问的可移植库,可以提高 Tomcat 的性能和伸缩性),这使得传统的 SSL 配置方式无法使用。...
本文将深入探讨如何在Windows下的Tomcat服务器上配置SSL,以提升Web应用程序的安全性。 首先,理解SSL(Secure Sockets Layer)是网络安全协议,它的主要功能是为网络通信提供加密处理,保证数据的私密性和完整性。...
Tomcat 是一个流行的 Web 服务器软件,它支持 SSL/TLS 加密协议,以确保数据传输的安全性。在本文中,我们将详细介绍 Tomcat 的 SSL 配置步骤和过程。 一、生成密钥对 在 Tomcat 中,需要生成密钥对以用于 SSL ...
【标题】: "Tomcat Web服务器的正式环境双向SSL认证配置指南" 【描述】: "本文将详述如何为正式的Tomcat环境设置双向SSL认证,以提高Web服务的安全性。我们将参照IBM developerWorks中国网站2002年5月的一篇文章,...
标题中的“Tomcat的双向SSL配置”涉及到的是网络通信安全领域的一个重要概念,即Transport Layer Security(传输层安全)协议的双向身份验证。在传统的SSL/TLS连接中,服务器通常被验证,但客户端的身份可能不被确认...
在Jboss和Tomcat服务器上配置SSL的过程主要包括以下几个步骤: 1. **生成证书**: - 对于测试或内部环境,可以使用Java自带的`keytool`命令来生成自签名证书。例如,要为名为“tomcat”的服务创建一个RSA算法的...
SSL(Secure Sockets Layer)安全证书是实现HTTPS的基础,而Nginx和Tomcat是两种常用的Web服务器软件。本篇文章将详细介绍如何在Nginx和Tomcat上安装阿里云提供的免费SSL安全证书,以实现网站的HTTPS访问。 首先,...
详细说明了windows服务器nginx+tomcat+mysql部署及配置(配置阿里云后台安全组,配置域名)很适合新手学习 附件中包含: 1.操作说明文档 2.操作录屏 3.安装所用到的软件安装包 1)Windows Server 2019 数据中心版 ...
1. 把 keystore 证书上传到你的 Tomcat 服务器上(如果你的 Tomcat 在本地,那么不移动也可以),并记下证书所在路径。 2. cd 到 Tomcat 的 conf 目录下,打开 server.xml 文件,搜索 HTTPS 找到下面这项: ``` ...
配置 Tomcat 服务器支持 SSL 配置 Tomcat 服务器支持 SSL 是为了开启 Tomcat 的安全认证通道,从而确保数据的安全传输。在某些项目中,可能需要使用 SSL 加密来保护数据的安全。 首先,需要准备好生成的证书...
本文档旨在详细介绍如何在Windows环境下,利用Tomcat服务器和Eclipse集成开发环境(IDE)搭建支持SSL的HTTPS服务,并实现基于数字证书的安全通信。 #### 一、基础知识简介 在深入了解具体的配置步骤之前,我们首先...
TomcatWeb服务器安全配置基线[归类].pdf
第四步:配置Tomcat服务器 打开Tomcat根目录下的/conf/server.xml,找到如下配置段,修改如下: maxThreads="150" scheme="https" secure="true" clientAuth="true" sslProtocol="TLS" keystoreFile="C:/tmp...
4. **修改Tomcat配置**:打开Tomcat的服务器配置文件`server.xml`,在这个文件中,我们需要添加一个名为`<Connector>`的元素来配置SSL连接器。以下是基本配置示例: ```xml SSLEnabled="true" maxThreads="150...
本文将详细解析如何配置Tomcat作为Web服务器环境,以便开发者能够顺利地部署和运行自己的Web应用。 首先,我们需要了解Tomcat的基本结构。Tomcat包含了几个关键的目录,如`bin`(存放可执行文件)、`conf`(存储...