`
iloveoracle
  • 浏览: 118847 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

tomcat6.0配ssl

    博客分类:
  • java
阅读更多
    ssl协议使用不对称加密技术实现双方之间信息的安全传递。可以实现信息传递的保密性、完整性,并且会话双方能鉴别对方身份。 <br>与网站建立https连接时,浏览器与web server之间要经过一个握手的过程来完成身份鉴定与密钥交换,建立安全连接。过程是: <br>1、用户浏览器将其ssl版本号、加密设置参数、与session有关的数据以及其它一些必要信息发送到服务器 <br>2、服务器将其ssl版本号、加密设置参数、与session有关的数据以及其它必要信息发送给浏览器,同时发给浏览器的还有服务器的证书。如果配置服务器的ssl需要验证用户身份,还要发出请求浏览器提供用户证书。 <br>3、客户端检查服务器证书,如果检查失败,提示不能建立ssl连接,如果成功,则继续 <br>4、客户端浏览器为本次会话生成pre-master secret,并将其用服务器公钥加密后发送给服务器。 <br>5、如果服务器要求鉴别客户身份,客户端还要再对另外一些数据签名后并将其与客户端证书一起发送给服务器。 <br>6、如果服务器要求鉴别客户身份,则检查签署客户证书的ca是否可信。如果不在信任列表中,结束本次会话。如果检查通过,服务器用自己的私钥解密收到的 pre-master secret,并用它通过某些算法生成本次会话的master secret。 <br>7、客户端与服务器均使用此master secret生成本次会话的会话密钥(对称密钥)。在双方ssl握手结束后传递任何消息均使用此会话密钥。这样做的主要原因是对称加密比非对称加密的运算量低一个数量级以上,能够显著提高双方会话时的运算速度。 <br>8、客户端通知服务器此后发送的消息都使用这个会话密钥进行加密。并通知服务器客户端已经完成本次ssl握手。 <br>9、服务器通知客户端此后发送的消息都使用这个会话密钥进行加密。并通知客户端服务器已经完成本次ssl握手。 <br>10、本次握手过程结束,会话已经建立。双方使用同一个会话密钥分别对发送以及接受的信息进行加、解密。 <br><br>1、生成服务器端证书文件 <br>可以使用windows系统或者linux系统 <br>(1)    windows环境 <br>条件:已经安装jdk <br>步骤: <br>l        进入%java_home%/bin目录 <br>l        执行命令 <br>keytool -genkey -alias tomcat -keyalg rsa -keystore f:\tomcat.keystore -validity 36500 <br><br>参数简要说明:“f:\tomcat.keystore”含义是将证书文件保存在f盘,证书文件名称是tomcat.keystore ;“-validity 36500”含义是证书有效期,36500表示100年,默认值是90天 <br>l        在命令行填写必要的参数: <br><br>截图如下: <br><br><br><br>截图部分说明: <br><br>a、输入keystore密码:此处需要输入大于6个字符的字符串 <br><br>b、“您的名字与姓氏是什么?”这是必填项,并且必须是tomcat部署主机的域名或者ip[如:gbcom.com 或者 10.1.25.251],就是你将来要在浏览器中输入的访问地址 <br><br>c、“你的组织单位名称是什么?”、“您的组织名称是什么?”、“您所在城市或区域名称是什么?”、“您所在的州或者省份名称是什么?”、“该单位的两字母国家代码是什么?”可以按照需要填写也可以不填写直接回车,在系统询问“正确吗?”时,对照输入信息,如果符合要求则使用键盘输入字母“y”,否则输入“n”重新填写上面的信息 <br><br>d、输入<tomcat>的主密码,这项较为重要,会在tomcat配置文件中使用,建议输入与keystore的密码一致,设置其它密码也可以 <br><br>l        完成上述输入后,直接回车则在你在第二步中定义的位置找到生成的文件 <br><br>(2)    linux环境 <br><br>条件:安装了jdk <br><br>步骤: <br><br>l        进入$java_home/bin目录 <br><br>l        执行命令 <br><br>./keytool -genkey -alias tomcat -keyalg rsa -keystore /usr/local/ac/web/tomcat.keystore -validity 36500 <br><br>参数简要说明:“/etc/tomcat.keystore”含义是将证书文件保存在路径/usr/local/ac/web/下,证书文件名称是tomcat.keystore ;“-validity 36500”含义是证书有效期,36500表示100年,默认值是90天 <br><br>l        在命令行填写必要的参数: <br><br>截图如下: <br><br><br><br>截图部分说明: <br><br>a、enter keystore password:此处需要输入大于6个字符的字符串 <br><br>b、“what is your first and last name?”这是必填项,并且必须是tomcat部署主机的域名或者ip[如:gbcom.com 或者 10.1.25.251],就是你将来要在浏览器中输入的访问地址 <br><br>c、“what is the name of your organizational unit?”、“what is the name of your organization?”、“what is the name of your city or locality?”、“what is the name of your state or province?”、“what is the two-letter country code for this unit?”可以按照需要填写也可以不填写直接回车,在系统询问“correct?”时,对照输入信息,如果符合要求则使用键盘输入字母“y”,否则输入“n”重新填写上面的信息 <br><br>d、enter key password for <tomcat>,这项较为重要,会在tomcat配置文件中使用,建议输入与keystore的密码一致,设置其它密码也可以 <br><br>l        完成上述输入后,直接回车则在你在第二步中定义的位置找到生成的文件 <br><br>2、配置tomcat服务器 <br><br>(1)    如果你是在windows环境中生成证书文件,则需要将生成的证书tomcat.keystore拷贝到tomcat将要引用的位置,假设tomcat的应用证书的路径是“/etc/tomcat.keystore”,则需要将证书文件拷贝到“etc/”下;如果是在linux环境按照上述介绍的步骤生成证书文件的话,此时证书文件已经在“etc/”下。 <br><br>(2)    配置tomcat,打开$catalina_home/conf/server.xml,修改如下, <br><br><connector port="8080" protocol="http/1.1" <br><br>               connectiontimeout="20000" <br><br>               redirectport="8443" /> <br><br>修改参数=> <br><br><connector port="80" protocol="http/1.1" <br><br>               connectiontimeout="20000" <br><br>               redirectport="443" /> <br><br><br><br><!-- <br><br><connector port="8443" protocol="http/1.1" sslenabled="true" <br><br>              maxthreads="150" scheme="https" secure="true" <br><br>              clientauth="false" sslprotocol="tls"/> <br><br>--> <br><br>去掉注释且修改参数=> <br><br><connector port="443" protocol="http/1.1" sslenabled="true" <br><br>               maxthreads="150" scheme="https" secure="true" <br><br>               clientauth="false" sslprotocol="tls" keystorefile="/etc/tomcat.keystore" keystorepass="www.gbcom.com.cn"/> <br><br>注释:标识为淡蓝色的两个参数,分别是证书文件的位置和<tomcat>的主密码,在证书文件生成过程中做了设置 <br><br><br><br><!-- <br><br>   <connector port="8009" enablelookups="false" protocol="ajp/1.3" redirectport="8443" /> <br><br>--> <br><br>修改参数=> <br><br><connector port="8009" enablelookups="false" protocol="ajp/1.3" redirectport="443" /> <br><br>(3) 打开$catalina_home/conf/web.xml,在该文件末尾增加: <br><br><security-constraint>  <br><br>       <web-resource-collection >  <br><br>              <web-resource-name >ssl</web-resource-name>  <br><br>              <url-pattern>/*</url-pattern>  <br><br>       </web-resource-collection> <br><br>                              <br><br>       <user-data-constraint>  <br><br>              <transport-guarantee>confidential</transport-guarantee>  <br><br>       </user-data-constraint>  <br><br></security-constraint> <br><br>3、上述配置完成后,重启tomcat后即可以使用ssl。ie地址栏中可以直接输入地址不必输入“http://” 或者 “https://” ;也可以输入 “http:// ” 会跳转成为 “https://” 来登录 <br><br>4、注意事项: <br><br>(1)    生成证书的时间,如果ie客户端所在机器的时间早于证书生效时间,或者晚于有效时间,ie会提示“该安全证书已到期或还未生效” <br><br>(2)    如果ie提示“安全证书上的名称无效或者与站点名称不匹配”,则是由生成证书时填写的服务器所在主机的域名“您的名字与姓氏是什么?”/“what is your first and last name?”不正确引起的 <br><br>5、遗留问题: <br><br>(1)如果ac主机不能通过域名查找,必须使用ip,但是这个ip只有在配置后才能确定,这样证书就必须在ac确定ip地址后才能生成 <br><br>(2)证书文件只能绑定一个ip地址,假设有10.1.25.250 和 192.168.1.250 两个ip地址,在证书生成文件时,如使用了10.1.25.250,通过ie就只能使用10.1.25.250 来访问ac-web,192.168.1.250是无法访问ac-web的。 <br><br>参考资料: <br><span style="color: #108ac6;">http://tianli.blog.51cto.com/190322/90101</span>
 
0
1
分享到:
评论

相关推荐

    Tomcat6.0与SSL

    ### Tomcat 6.0与SSL配置详解:实现双向安全通信 #### 一、SSL技术概览 SSL(Secure Socket Layer),即安全套接层协议,是一项关键的网络安全技术,旨在确保Web浏览器与Web服务器之间的数据传输安全。通过在数据...

    tomcat6.0是一款免费开源的jsp服务器

    《深入理解Tomcat6.0:免费开源的JSP服务器》 Tomcat6.0,作为Apache软件基金会的旗下面向Java的Web应用服务器,以其免费开源的特性,深受开发者们的喜爱。它不仅是一个小巧而高效的JSP服务器,还包含了完整的HTTP...

    web服务器tomcat6.0

    【标题】:Tomcat 6.0:JSP Web开发的核心服务器 【正文】: Tomcat 6.0是一款广泛使用的开源Web服务器和Servlet容器,它由Apache软件基金会的Jakarta项目开发。作为Java平台企业版(Java EE)的一部分,Tomcat...

    Tomcat6.0——压缩包下载

    安全方面,Tomcat6.0支持SSL/TLS协议,可以通过配置`server.xml`中的`&lt;Connector&gt;`元素来启用HTTPS服务,提供加密的通信。此外,还应注意限制对`conf`目录的访问,以防止配置文件被篡改。 总的来说,Tomcat6.0是一...

    tomcat6.0通用版本

    在解压后的"tomcat6.0"文件中,通常会包含以下几个关键部分: - `bin`目录:包含了启动和停止Tomcat的脚本,以及一些管理工具。 - `conf`目录:存放配置文件,如`server.xml`定义了服务器的配置,`context.xml`管理...

    Tomcat 6.0 安装版

    5. **安全性**:Tomcat支持多种安全机制,包括SSL/TLS协议以实现加密通信,角色基础的访问控制(RBAC)来限制不同用户的访问权限,以及可以通过`context.xml`和`server.xml`配置文件进行的其他安全设置。 6. **性能...

    解压版tomcat6.0

    标题中的“解压版Tomcat6.0”指的是Apache Tomcat服务器的6.0版本的非安装版,这种版本不需要经过传统的安装过程,用户只需将其下载并解压缩到指定目录即可开始使用。Tomcat是一个开源的Java Servlet容器,主要用于...

    apache-tomcat6.0 服务器

    安全方面,Tomcat 6.0 提供了多种安全特性,如SSL/TLS加密支持,可以保护传输中的敏感数据。它还支持JAAS(Java Authentication and Authorization Service),可以根据需要配置不同级别的用户权限和访问控制。 ...

    tomcat 6.0安装包下载

    Tomcat的安全性和性能可以通过调整配置文件进行优化,例如限制并发连接数、启用SSL加密、设置连接器超时等。同时,定期更新到最新版本可以防止已知的安全漏洞。 总结,Tomcat 6.0是一个强大且灵活的Java Web服务器...

    Tomcat6.0

    6. **安全性**:Tomcat6.0支持HTTPS协议,可以通过修改`server.xml`文件配置SSL证书,以提供加密的数据传输。 7. **热部署**:Tomcat6.0支持热部署,即在不重启服务器的情况下更新应用程序。 8. **社区支持**:...

    tomcat6.0tomcat6.0.rartomcat6.0.rartomcat6.0

    标题中的“tomcat6.0”指的是Apache Tomcat 6.0版本,这是一个开源的Java Servlet容器,主要用于部署和运行Java EE(Enterprise Edition)应用程序,特别是JSP(JavaServer Pages)和Servlet。Tomcat作为轻量级应用...

    web服务器 tomcat6.0

    6. **安全管理**:Tomcat 6.0支持多种安全机制,如基本认证、digest认证、SSL/TLS加密通信等,通过`conf/server.xml`中的`&lt;Realm&gt;`元素进行配置,以保护Web应用免受未经授权的访问。 7. **性能优化**:Tomcat 6.0...

    apache tomcat 6.0 安装版

    Tomcat 6.0支持多种安全特性,如SSL/TLS加密通信、Basic或Digest认证、Form认证等。在`server.xml`和`context.xml`中配置 Realm 和 Role 可以实现用户权限控制。 **9. 更新与升级** 随着新版本的发布,Tomcat 6.0...

    tomcat6.0的源代码

    4. **安全配置**:如何通过源代码理解Tomcat的安全机制,如角色认证、访问控制和SSL/TLS支持。 5. **部署与热部署**:理解部署描述符(web.xml)的解析过程,以及如何实现在不重启服务器的情况下更新应用程序。 6....

    Tomcat6.0(apachetomcat.exe)

    Apache Tomcat 6.0是Java Servlet和JavaServer Pages(JSP)技术的开源Web应用服务器,由Apache软件基金会开发并维护。它是基于Java的轻量级应用服务器,主要用于运行Java Web应用程序,包括Servlets、JSPs以及Java ...

    tomcat6.0 适用与java web 程序的开发服务器

    《深入理解Tomcat 6.0:打造高效Java Web服务器》 Tomcat 6.0是一款广泛应用的开源Java Web服务器,由Apache软件基金会维护,它实现了Java Servlet和JavaServer Pages(JSP)规范,为Java Web应用程序提供了一个轻...

    Tomcat6.0和7.0

    【标题】:“Tomcat6.0和7.0”涵盖了两个重要的Apache Tomcat版本,分别是6.0和7.0。这两个版本都是流行的开源Java Servlet容器,用于部署和运行Java Web应用程序。Apache Tomcat是Java EE(现在称为Jakarta EE)的...

    tomcat6.0 & jdk1.6 集成

    6. **安全管理**:Tomcat6.0的安全管理包括配置用户角色、限制访问权限和设置SSL证书。这些可以通过修改conf/tomcat-users.xml和server.xml中的相关部分来实现。 7. **性能调整**:为了优化Tomcat的性能,可能需要...

    tomcat 6.0 和 7.0

    【标题】:“Tomcat 6.0 和 7.0”的差异与升级解析 【描述】:Apache Tomcat 是一个广泛使用的开源Java Servlet容器,它实现了Java EE Web应用程序的Servlet和JSP规范。Tomcat 6.0 和 7.0 是两个不同版本的Tomcat,...

    tomcat 6.0

    【标题】"Tomcat 6.0" 是一个历史悠久且广泛应用的开源Java Servlet容器,它由Apache软件基金会维护。这个版本的Tomcat是基于Java EE 5规范的,支持Servlet 2.5和JSP 2.1标准,为开发者提供了在Web服务器上部署Java ...

Global site tag (gtag.js) - Google Analytics