tomcat--Win7&Eclipse&tomcat下配置https服务

时间:2022-02-27 19:11:42

概念:

  HTTP协议(HyperText Transfer Protocol,超文本传输协议)是因特网上应用最为广泛的一种网络传输协议,所有的WWW文件都必须遵守这个标准。HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。
什么是HTTPS
  在说HTTPS之前先说说什么是HTTP,HTTP就是我们平时浏览网页时候使用的一种协议。HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全。为了保证这些隐私数据能加密传输,于是网景公司设计了SSL(Secure Sockets Layer)协议用于对HTTP协议传输的数据进行加密,从而就诞生了HTTPS。
  SSL(Security Socket Layer)全称是加密套接字协议层,它位于HTTP协议层和TCP协议层之间,用于建立用户与服务器之间的加密通信,确保所传递信息的安全性,同时SSL安全机制是依靠数字证书来实现的。SSL基于公用密钥和私人密钥,用户使用公用密钥来加密数据,但解密数据必须使用相应的私人密钥。使用SSL安全机制的通信过程如下:用户与IIS服务器建立连接后,服务器会把数字证书与公用密钥发送给用户,用户端生成会话密钥,并用公共密钥对会话密钥进行加密,然后传递给服务器,服务器端用私人密钥进行解密,这样,用户端和服务器端就建立了一条安全通道,只有SSL允许的用户才能与IIS服务器进行通信。
  提示:SSL网站不同于一般的Web站点,它使用的是“HTTPS”协议,而不是普通的“HTTP”协议。因此它的URL(统一资源定位器)格式为“https://网站域名”。
  http和https使用的是完全不同的连接方式用的端口也不一样,前者是80,后者是443。http的连接很简单,是无状态的。HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议 要比http协议安全

 

具体操作步骤:

1、生成证书

  keytool 用法总结 - Free Coding - ITeye博客  http://ln-ydc.iteye.com/blog/1335213

  我的操作主要有:

    1、新建目录hankeytool,并在dos命令框中进入此目录D:\hankeytool

    2、一次输入如下指令(需要确认口令的,都是testtest1,其他输入项随便):

      keytool -genkeypair -alias "test1" -keyalg "RSA" -keystore "test.keystore" 【创建证书

      keytool -list -keystore test.keystore 【查看证书库

      keytool -export -alias test1 -file test.crt -keystore test.keystore 【导出到证书文件

      keytool -import -keystore test_cacerts -file test.crt 导入证书的信息

      keytool -printcert -file "test.crt" 查看证书信息

 tomcat--Win7&Eclipse&tomcat下配置https服务

 tomcat--Win7&Eclipse&tomcat下配置https服务

2、配置tomcat

            <Connector SSLEnabled="true" clientAuth="false" keystoreFile="D:/hankeytool/test.keystore" keystorePass="testtest1" maxThreads="150" port="8443" protocol="org.apache.coyote.http11.Http11Protocol" scheme="https" secure="true" sslProtocol="TLS"/>

 

 tomcat--Win7&Eclipse&tomcat下配置https服务

3、配置项目web.xml

<security-constraint>

    <web-resource-collection>

        <web-resource-name>my-secure-app</web-resource-name>

        <url-pattern>/*</url-pattern>

    </web-resource-collection>

    <user-data-constraint>

        <transport-guarantee>CONFIDENTIAL</transport-guarantee>

    </user-data-constraint>

</security-constraint>

 tomcat--Win7&Eclipse&tomcat下配置https服务