tomcat https

基本步骤:

  1. 使用 java 创建一个 keystore 文件
  2. 配置 Tomcat 以使用该 keystore 文件
  3. 测试
  4. 配置应用以便使用 SSL ,例如 https://localhost:8443/yourApp

1. 创建 keystore 文件

执行 keytool -genkey -alias tomcat -keyalg RSA 结果如下

?


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

loiane:bin loiane$ keytool -genkey -alias tomcat -keyalg RSA

Enter keystore password:  password

Re-enter new password: password

What is your first and last name?

  [Unknown]:  Loiane Groner

What is the name of your organizational unit?

  [Unknown]:  home

What is the name of your organization?

  [Unknown]:  home

What is the name of your City or Locality?

  [Unknown]:  Sao Paulo

What is the name of your State or Province?

  [Unknown]:  SP

What is the two-letter country code for this unit?

  [Unknown]:  BR

Is CN=Loiane Groner, OU=home, O=home, L=Sao Paulo, ST=SP, C=BR correct?

  [no]:  yes

 

Enter key password for

    (RETURN if same as keystore password):  password

Re-enter new password: password

这样就在用户的主目录下创建了一个 .keystore 文件

2. 配置 Tomcat 以使用 keystore 文件

打开 server.xml 找到下面被注释的这段

?


1

2

3

4

5

<!--

<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"

    maxThreads="150" scheme="https" secure="true"

    clientAuth="false" sslProtocol="TLS" />

-->

干掉注释,并将内容改为

?


1

2

3

4

5

Connector SSLEnabled="true" acceptCount="100" clientAuth="false"

    disableUploadTimeout="true" enableLookups="false" maxThreads="25"

    port="8443" keystoreFile="/Users/loiane/.keystore" keystorePass="password"

    protocol="org.apache.coyote.http11.Http11NioProtocol" scheme="https"

    secure="true" sslProtocol="TLS" />

3. 测试

启动 Tomcat 并访问 https://localhost:8443. 你将看到 Tomcat 默认的首页。

需要注意的是,如果你访问默认的 8080 端口,还是有效的。

4. 配置应用使用 SSL

打开应用的 web.xml 文件,增加配置如下:

?


1

2

3

4

5

6

7

8

9

<security-constraint>

    <web-resource-collection>

        <web-resource-name>securedapp</web-resource-name>

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

    </web-resource-collection>

    <user-data-constraint>

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

    </user-data-constraint>

</security-constraint>

将 URL 映射设为 /* ,这样你的整个应用都要求是 HTTPS 访问,而 transport-guarantee 标签设置为 CONFIDENTIAL 以便使应用支持 SSL。

如果你希望关闭 SSL ,只需要将 CONFIDENTIAL 改为 NONE 即可。

时间: 2024-08-03 07:38:23

tomcat https的相关文章

开启 Tomcat https 服务

实验环境:Mac OSX 10.9.2,Tomcat 7.0.14,JDK 1.6 一.制作自签名 CA 证书(根证书) 首先我们需要明确自己作为 CA(证书发行机构)的好处.自签名证书并不稀奇,许多企业都在使用自签名证书,但一般意义上的自签名证书和自己作为 CA 发行的自签名证书不一样.自己做CA,可以允许我们用自己的根证书(CA 证书)发行叶证书,这样在安装了根证书的客户端上,这个 CA 的所有叶证书都是"可信任"的. CA 证书的制作有两个步骤: 1.创建一个私钥文件: open

OpenSSL/Tomcat HTTPS 搭建

总结一下 OpenSSL和Tomcat  https的搭建 第一部分:首先是看看 OpenSSL的搞法: 创建证书的步骤: (1)生成私钥 (2)生成待签名证书 (3)生成x509证书, 用CA私钥进行签名 (4)导成浏览器支持的p12格式证书 一:生成CA证书CA 1. 创建私钥 :openssl genrsa -out ca/ca-key.pem 1024 2.创建证书请求 :openssl req -new -out ca/ca-req.csr -key ca/ca-key.pem 3.自

apache tomcat https应用

一.总结前一天的学习 在前一天的学习中我们知道.了解并掌握了Web Server结合App Server是怎么样的一种架构,并且亲手通过Apache的Http Server与Tomcat6进行了整合的实验. 这样的架构的好处在于: ü   减轻App Server端的压力,用Web Server来分压,即Web Server只负责处理静态HTML内容,而App Server专职负责处理Java请求,这对系统的performance是一个极大的提升. ü   安全,Web Server端没有任何J

Tomcat服务器配置https协议(Tomcat HTTPS/SSL 配置)

通常商用服务器使用https协议需要申请SSL证书,证书都是收费的,价格有贵的有便宜的.它们的区别是发行证书的机构不同,贵的证书机构更权威,证书被浏览器否决的几率更小. 非商业版本可以通过keytool来生成. 用keytool工具生成证书与配置 1.相关工具说明 此处使用1.7.0_79版本,如图所示: 切换到jdk bin目录下面,如图: 证书密钥生成 1.创建证书 keytool -genkey -alias [your_alias_name] -keyalg RSA -keystore

tomcat https双向认证

没啥可写的,直接看这些博文吧... 注:server.xml 双向认证 注意得配:truststoreFile,单向不用 浏览器客户端p12证书,需要添加到服务器的jks文件中. http://www.blogjava.net/stevenjohn/archive/2012/08/22/385989.html http://www.360doc.com/content/10/0401/23/633992_21237818.shtml http://www.blogjava.net/stevenj

CentOS 7配置tomcat https并改端口为443

CentOS 7配置tomcat https并改端口为443: 安装tomcat: yum install tomcat (默认为tomcat 7) 配置tomcat证书(有公司https key.crt文件情况): openssl pkcs12 -export -in ming.crt -inkey ming.key -out ming.p12 -certfile gd_bundle-g2-g1.crt 设置密码 keytool -importkeystore -alias 1 -destke

Centos下搭建 tomcat https服务器详解

一 .安装java jdk配置环境变量 1. 卸载原有openjdk yum -y remove java-1.7.0-openjdk* yum -y remove tzdata-java.noarch 2. 下载新的jdk 并解压 [[email protected] java]# curl -O http://download.oracle.com/otn-pub/java/jdk/7u79-b15/jdk-7u79-linux-x64.tar.gz [[email protected] j

nginx 反向代理 tomcat (https、虚拟主机)

背景: 有一个JSP开发的网站,需要放在tomcat里面运行,考虑到tomcat处理http请求不是那么强,计划前端添加一个nginx作为反向代理,并且提供https服务,并且通过虚拟主机开代理到指定域名的服务. 我们的域名是www.wzlinux.com. 1.首先是安装nginx和tomcat 2.nginx配置文件如下 包含301调整,以及https证书的设定,我的证书是在阿里云申请的,免费的哦 # # HTTPS server configuration # server {     l

Tomcat Https配置

一.生成KeyStore 打开命令行,输入:keytool -genkey -alias tomcat_server -keyalg RSA -storepass jimmypwd -validity 365 -keystore server.keystore     注:参数 -validity 指证书的有效期(天),缺省有效期很短,只有90天.    姓名:jimmy,单位名:sgm,组织名:com,城市:shanghai,省:shanghai,国家:CN    输入<tomcat>的主密