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

Tomcat配置SSL安全协议

 
阅读更多

Tomcat配置SSL安全协议

文档说明:本文件适用于用JSSE设置Tomcat的SSL。 如果使用APR, Tomcat是通过 OpenSSL来实现SSL,设置会不同。

一、SSL简介

在网络上,信息在由源主机到目标主机的传输过程会经过其他计算机,网络上的信息有可能被非法分子监听,从而导致个人隐私泄露。随着电子商务的发展,对信息安全的要求越来越高,于是Netscape公司提出了SSL(Server Socket Layer)协议,旨在达到在开放网络(Internet)上安全、保密地传输信息的目的。

SSL是一种保证网络上的两个节点进行安全通信的协议,建立在SSL协议上的HTTP被称为HTTPS协议。HTTPS使用的默认端口是443。SSL采用加密技术来实现安全通信,保证通信数据的保密性和完整性,并且保证通信双方可以验证对方的身份。

加密技术的基本原理是:数据从一端发送到另一端,发送者先对数据加密,然后再把它发送给接受者。这样,在网络上传输的是经过加密的数据,如果有人非法截获了这批数据,由于没有解密的密钥,就无法获得真正的原始数据。接收者收到加密的数据后,先对数据解密,然后再处理。

SSL通过安全证书来证明客户或服务器的身份。当客户通过安全的连接和服务器通信时,服务器会先向客户出示它的安全证书,而每一个证书在世界范围内都是唯一的。

为了扩大用户群,一些服务器向客户出示证书后,并不要求客户出示安全证书,但在某些情况下,服务器也会要求客户出示安全证书,以便核实该客户的身份。

二、安全证书的获取方式

安全证书的获得有两种方式:

1、从权威机构获得证书

Certificate Authority,CA和VeriSign和Thawte,它们保证了证书的可信性。申请证书时,需要付费,且一个证书只针对一个IP有效。

2、创建自我签名的证书

如果只关心数据在网络上的安全传输,而不需要对方身份验证,可以创建自我签名的证书。与权威机构颁发的证书采用的加密技术是一样的。

三、为Tomcat配置SSL安全协议(这种方式只适合安装版的)

可以根据安全需要,为Tomcat配置SSL,它包含以下两个步骤:

1、准备安全证书

2、配置Tomcat的SSL连接器(Connector)

3.1创建自我签名的证书

SUN公司提供了制作证书的工具keytool。在JDK1.4以上版本中都包含了这一工具。通过这个工具生成证书的命令为:

keytool-genkey -alias tomcat -keyalg RSA

以上命令将生成包含一对非对称密钥和自我签名的证书,这个命令中参数的意思

-genkey:生成一对非对称密钥。

-alias:指定密钥对的别名,该别名是公开的。

-keyalg:指定加密算法,此处采用通用的RSA算法。

以上命令将在操作系统的用户目录下生成名为”.keystore”的文件。

如果希望生成的keystore文件放在其他目录中,可以使用-keystore参数

keytool-genkey -alias tomcat -keyalg RSA -keystore d:\.keystore

使用keytool工具生成证书的界面如图1-1所示:

图1-1 使用keytool工具生成证书

生成的证书文件“[系统用户目录下]\.keystore”如图1-2所示:

 

图1-2使用keytool生成的证书

3.2使用keytool工具注意事项:

1. 默认情况下.keystore文件存放在 [用户目录下] 

2. 在执行keytool命令式可以使用-keystore参数指定.keystore文件的生成目录

3.3 Tomcat配置SSL连接器

1. 在Tomcat的【catalina_path】\conf\server.xml文件中,已经提供了现成的配置SSL连接器的代码,只要把注释去掉即可

 <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
               maxThreads="150" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS" 
	       keystoreFile="D:\Tools\Web\ssl\tomcat.keystore"
	       keystorePass="tomcat"
	       ciphers="tomcat"/>

 

属性 描述
clientAuth 如果设为true,表示Tomcat要求所有的SSL客户出示安全证书,对SSL客户进行身份验证
keystoreFile 指定keystore文件的存放位置,可以指定绝对路径,也可以指定相对于<CATALINA_HOME>(Tomcat安装目录)环境变量 的相对路径。如果此项没有设定,默认情况下,Tomcat将从当前操作系统用户的用户目录下读取名为“.keystore”的文件。
keystorePass 指定keystore的密码,如果此项没有设定,在默认情况下,Tomcat将使用“changeit”作为默认密码。
sslProtocol 指定套接字(Socket)使用的加密/解密协议,默认值为TLS,用户不应该修改这个默认值。
ciphers 指定套接字可用的用于加密的密码清单,多个密码间以逗号(,)分隔。如果此项没有设定,在默认情况下,套接字可以使用任意一个可用的密码。

 

2.Connector其他属性:

keystoreFile:指定keystore文件的存放位置,可以指定绝对路经。如果此项没有设定,在默认情况下,Tomcat将从当前操作系统用户的用户名目录下读取名为”.keystore”的文件

keystorePass:指定keystore的密码,如果此项没有设定,在默认情况下,Tomcat将使用”changeit”密码。

3.使用SSL协议访问Tomcat

使用所示的界面:

 

图1-3不信任的证书

当我们点击仍然继续可见看见所有的连接都是Https开头的

 

图1-4成功页面示意图

 

分享到:
评论

相关推荐

    解决tomcat配置ssl错误的解决办法

    通过遵循这些步骤,可以成功地解决 Tomcat 配置 SSL 错误的问题,确保 Tomcat 服务器的安全和稳定运行。 在本文中,我们讨论了 Tomcat 配置 SSL 错误的问题,并提供了解决这些错误的方法。这些方法包括正确地配置 ...

    关于tomcat 的ssl配置

    Tomcat SSL 配置详解 Tomcat 是一个流行的 Web 服务器软件,它支持 SSL/TLS 加密协议,以确保数据传输的安全性。...通过以上步骤,您可以成功地配置 Tomcat 的 SSL 加密协议,从而确保数据传输的安全性。

    nginx、tomcat安装免费ssl安全证书配置

    SSL(Secure Sockets Layer)安全证书是实现HTTPS的基础,而Nginx和Tomcat是两种常用的Web服务器软件。本篇文章将详细介绍如何在Nginx和Tomcat上安装阿里云提供的免费SSL安全证书,以实现网站的HTTPS访问。 首先,...

    Tomcat 配置SSL完美 https可以正常使用 小程序调用

    Tomcat 配置SSL完美 https可以正常使用 小程序调用Tomcat 配置SSL完美 https可以正常使用 小程序调用Tomcat 配置SSL完美 https可以正常使用 小程序调用

    tomcat配置ssl教程

    以上就是Tomcat配置SSL的基本流程。在实际操作中,你可能还需要考虑其他因素,如证书链的导入、支持HSTS(HTTP Strict Transport Security)以强制浏览器始终使用HTTPS、以及配置Ciphers以确保最佳的安全性和兼容性...

    Tomcat配置SSL指导

    ### Tomcat配置SSL详解 #### 一、引言 随着互联网技术的发展,数据安全成为企业和个人用户关注的重点。为了确保Web应用的数据传输安全,越来越多的应用采用HTTPS协议来替代传统的HTTP协议。而要实现这一目标,就...

    tomcat配置ssl-单点登录(sso).rar

    标题中的“tomcat配置ssl-单点登录(sso)”指的是在Apache Tomcat服务器上配置SSL安全套接层,以及实现单点登录(Single Sign-On, SSO)功能。这是一个涉及网络安全和用户认证的重要主题,主要目标是提高Web应用的...

    tomcat 配置ssl 证书

    配置SSL(Secure Socket Layer)证书是确保网站数据传输安全的重要步骤,因为SSL可以提供加密通信和身份验证。以下将详细讲解如何在Tomcat中配置SSL证书。 首先,了解SSL证书的基本概念。SSL证书包含了一个公钥和...

    Tomcat配置SSL双向认证

    ### Tomcat配置SSL双向认证详解 #### 一、SSL双向认证概述 SSL(Secure Sockets Layer,安全套接层)是一种用于确保Web通信安全的技术,它通过加密数据传输来保护信息不被未授权访问。SSL协议的核心是实现客户端与...

    apache Tomcat配置SSL(https)步骤

    1. **打开Tomcat配置文件** - 打开Tomcat安装目录下的`conf/server.xml`文件。 2. **修改HTTP重定向到HTTPS的端口** - 修改`&lt;Connector&gt;`元素中的`redirectPort`属性值为HTTPS端口,例如443: ```xml ``` 3...

    Tomcat6配置SSL

    本文将详细介绍如何在Apache Tomcat 6服务器上配置SSL,确保Web服务的传输安全性。 **一、理解SSL** SSL是一种网络安全协议,它通过公钥/私钥对数据进行加密,防止在传输过程中被窃取或篡改。SSL证书包含了一个...

    Tomcat5.5配置SSL精简版

    5. **修改Tomcat配置**:打开Tomcat的`conf/server.xml` 文件,找到`&lt;Connector&gt;` 标签,添加SSL配置。例如: ```xml SSLEnabled="true" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" ...

    Tomcat 开启基于https的SSL配置

    Tomcat 开启基于 HTTPS 的 SSL 配置 在互联网时代,安全性问题变得越来越重要,为了保护用户的隐私和数据,越来越多的网站开始使用 HTTPS 协议。Tomcat 作为一个流行的 Java Web 服务器,当然也支持 HTTPS 协议。...

    tomcat+SSL

    【标签】:Tomcat, SSL, 配置SSL, 双向认证 【正文】: 一、SSL基础 1. **Tomcat简介**:Tomcat是一个由Apache Jakarta项目维护的开源Web应用服务器,支持JSP1.2和Servlet2.3规范。由于其免费、稳定和高效的特点...

    Tomcat_SSL.rar_JAVA SSL _ssl_ssl java_tomcat_tomcat ssl

    本教程将深入讲解如何在Tomcat中配置SSL,以便在开发和部署Java Web应用时,能够提供安全的数据交换环境。 首先,了解SSL/TLS的基本原理。SSL/TLS协议用于在客户端浏览器和服务器之间建立安全的连接,它通过使用...

    Tomcat6 SSL配置文档

    本文将深入探讨如何在Tomcat6中配置SSL,以实现安全的Web服务。 首先,了解SSL证书的基本概念至关重要。SSL证书包含了一个公钥和一个私钥,用于在服务器和客户端之间建立加密连接。公钥用于加密数据,而私钥用于...

    Windows +tomcat +SSL

    2. **SSL/TLS**:SSL(Secure Sockets Layer)与TLS(Transport Layer Security)都是用于在Internet上进行安全数据传输的协议。它们通过建立加密通道来保护数据免受窃听、篡改和伪造。 3. **数字证书**:一种用于...

Global site tag (gtag.js) - Google Analytics