`

备忘:启用 Tomcat 下的 HTTPS

阅读更多

首先说明,本文内容在 GOOGLE 上能搜到,所以是原创但不是首创。在此记录,仅供备忘。

今天做了个实验,在 Tomcat 5.5 中启用 HTTPS 的连接。以前都是通过 APACHE 来做的,这回图省事,直接用 TOMCAT 了,没想到还挺麻烦。

重要提示:两种容易出错的情况
1、keystore的密码与tomcat的主密码不一致;在接下来的步骤中,请把这两个密码输入成相同的;
2、用来生成keystore的java版本与运行tomcat的java版本不一致;运行下面的命令之前,先检查一下。
wakan@wakan:~/tomcat2/bin>which java
/home/jdk150/bin/java
在启动tomcat时,看看所用的JAVA_HOME是不是上面的
/home/jdk150,如果不是,请修改用户的profile文件,或者修改tomcat的启动文件。
最简单的做法是在/etc/profile文件中加入下面几行,然后重新登录,再进行后续操作:
JAVA_HOME=
/home/jdk150
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME PATH

一、生成 KeyStore

这一步比较简单,利用 JDK 自带的 keytool 即可完成。命令如下:

wakan@wakan:~/tomcat2/bin> keytool -genkey -alias tomcat -keyalg RSA
输入keystore密码:  ************
您的名字与姓氏是什么?
  [Unknown]:  Wakan.Jiang
您的组织单位名称是什么?
  [Unknown]:  ZZNode
您的组织名称是什么?
  [Unknown]:  ZZNode
您所在的城市或区域名称是什么?
  [Unknown]:  BeiJing
您所在的州或省份名称是什么?
  [Unknown]:  BeiJing
该单位的两字母国家代码是什么
  [Unknown]:  CN
CN=Wakan.Jiang, OU=ZZNode, O=ZZNode, L=BeiJing, ST=BeiJing, C=CN 正确吗?
  [否]:  是

输入<tomcat>的主密码
        (如果和 keystore 密码相同,按回车):

特别说明:上边输入的“<tomcat>的主密码”,与keystore密码一定要相同,否则TOMCAT起不来。至少我试了几次都不行。报错如下:
2007-3-26 17:07:01 org.apache.coyote.http11.Http11BaseProtocol init
严重: Error initializing endpoint
java.io.IOException: Cannot recover key
        at org.apache.tomcat.util.net.jsse.JSSE14SocketFactory.init(JSSE14Socket Factory.java:125)

二、修改 server.xml

在 TOMCAT/conf/server.xml 中,修改与 SSL 相关的那一段,我改成下面这样:
    <!-- 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" keystorePass="******"
               clientAuth="false" sslProtocol="TLS" />

这里要指定keystorePass,如果写错了,会出现下边的错误:
严重: Error initializing endpoint
java.io.IOException: Keystore was tampered with, or password was incorrect
        at sun.security.provider.JavaKeyStore.engineLoad(JavaKeyStore.java:768)

三、启动 Tomcat

这一步比较简单,就不多说了。启动完成后,在浏览器中输入:[url]https://localhost:8443[/url],即可看到TOMCAT的主页面。

wakan@wakan:~/tomcat2/bin> ./startup.sh
Using CATALINA_BASE:   /home/wakan/tomcat2
Using CATALINA_HOME:   /home/wakan/tomcat2
Using CATALINA_TMPDIR: /home/wakan/tomcat2/temp
Using JRE_HOME:       /home/jdk150/jre
2007-3-26 17:09:39 org.apache.catalina.core.AprLifecycleListener lifecycleEvent

分享到:
评论

相关推荐

    微信小程序推荐demo:备忘录:适用1028版本(源代码+截图)

    微信小程序推荐demo:备忘录:适用1028版本(源代码+截图)微信小程序推荐demo:备忘录:适用1028版本(源代码+截图)微信小程序推荐demo:备忘录:适用1028版本(源代码+截图)微信小程序推荐demo:备忘录:适用1028版本...

    tomcat下配置https方式

    tomcat下配置https方式 Tomcat配置HTTPS方式 Posted on 2012-06-08 14:22 Delei 阅读(4398) 评论(4) 编辑 收藏 简要记录主要步骤备忘

    Windows下Apache2.2 + Tomcat5.5 + Apr配置备忘录

    本配置备忘录主要关注如何在Windows上配置Apache2.2与Tomcat5.5,同时利用APR(Apache Portable Runtime)提升性能。APR是一个C语言库,提供了操作系统接口的抽象层,使得Apache可以在多种平台上运行得更加高效。 ...

    android备忘录

    1. 添加备忘:用户可以输入文本并保存为新的备忘。 2. 查看备忘:展示所有已保存的备忘,可以按时间顺序排列。 3. 编辑备忘:用户能够修改已存在的备忘内容。 4. 删除备忘:允许用户删除不再需要的备忘。 5. 搜索...

    tomcat6 单独启动做测试服务器备忘

    这个备忘可能包含了一系列步骤,用于帮助用户在不干扰其他服务的情况下,单独启动Tomcat6实例进行测试。 描述中的“NULL”表明没有具体的细节提供,但我们可以根据常规流程来阐述相关知识点。 首先,你需要下载...

    labview实现一个备忘录

    2. 启用/禁用备忘:用户可以在展示列表中勾选,以启用或禁用当前的备忘。 3. 备忘管理:用户可以新建备忘、修改选中备忘的信息、删除选中备忘,或者清空所有备忘。主界面列表会根据这些操作实时更新。 4. 数据持久化...

    备忘:兼容ff和ie的鼠标样式+javascript字符串hash+浮动提示

    博文链接:https://zsp.iteye.com/blog/160258

    android 备忘录源码(超精细)

    - 插入备忘:使用SQL的INSERT语句,通过ContentResolver的insert()方法。 - 查询备忘:使用SELECT语句,通过ContentResolver的query()方法。 - 更新备忘:使用UPDATE语句,通过ContentResolver的update()方法。 ...

    备忘录模块使用

    将程序发布到Tomcat下 (1)将01文件夹拷贝到Tomcat安装路径下的webapps文件夹中。 (2)实例01用到了jsf-api.jar、jsf-impl.jar、jstl-1.2.jar、msbase.jar、mssqlserver.jar、msutil.jar包,需要将其拷贝到Tomcat...

    备忘录:备忘:为Git存储库构建工件缓存

    【标题】:“备忘录:为Git存储库构建工件缓存” 【描述】:这个备忘录聚焦于如何在Git仓库中建立一个工件缓存系统,以优化开发流程和持续集成(CI)过程。工件缓存是DevOps实践中的一个重要组成部分,特别是对于...

    微信小程序Demo:备忘录

    "微信小程序Demo:备忘录" 是一个基于微信小程序开发的示例项目,旨在帮助开发者理解如何利用微信小程序框架创建一个功能完备的备忘录应用。 该"todolist-master"压缩包很可能是这个备忘录小程序的源代码仓库,包含...

    VB工作备忘录设计与实现(源代码+系统)_计算机毕业设计源代码.rar

    1. 新建备忘:通过输入框获取用户输入,保存至数据结构,并更新显示列表。 2. 查看备忘:选择备忘后,展示具体内容。 3. 修改备忘:选定备忘,弹出编辑窗口,用户修改后更新数据。 4. 删除备忘:用户确认后,从数据...

    桌面备忘录(可放在桌面的备忘录)

    【描述】:“可以放在桌面的备忘录,很实用,大家下了试用才知道……”这句描述强调了该备忘录软件的实用性。通常,传统的备忘录应用需要用户打开应用才能查看或添加笔记,而桌面备忘录的独特之处在于它可以直接作为...

    备忘:备忘-您的个人笔记

    备忘录 Meemo是个人数据经理。 它使您可以简单地输入任何类型的信息,例如注释,想法,想法,以及用作书签管理器和待办事项列表。 用户界面类似于由标签组织的新闻提要。 全文搜索还可以让您快速地在堆积的数据中...

    微信小程序推荐demo:备忘录:适用1028版本.rar

    这个“微信小程序推荐demo:备忘录:适用1028版本.rar”压缩包文件是一个关于如何开发微信小程序的示例,特别是一个备忘录应用的实现。通过学习和分析这个示例,开发者可以了解微信小程序的基本结构、组件使用以及...

    微信小程序 备忘录 (源码)

    微信小程序 备忘录 (源码)微信小程序 备忘录 (源码)微信小程序 备忘录 (源码)微信小程序 备忘录 (源码)微信小程序 备忘录 (源码)微信小程序 备忘录 (源码)微信小程序 备忘录 (源码)微信小程序 备忘录 (源码)微信小...

    VB工作备忘录设计与实现(源代码+系统).rar

    1. 新增备忘:用户可以输入备忘内容,设置提醒时间,选择优先级,以及添加其他相关信息。 2. 查找备忘:系统提供搜索功能,用户可以根据关键词、日期等条件查找所需备忘。 3. 编辑与删除:用户可修改已有的备忘内容...

Global site tag (gtag.js) - Google Analytics