一、生成 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
这一步比较简单,就不多说了。启动完成后,在浏览器中输入:https://localhost:8443,即可看到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
===============================================================
====================================
JDK中keytool常用命令
-genkey 在用户主目录中创建一个默认文件".keystore",还会产生一个mykey的别名,mykey中包含用户的公钥、私钥和证书
-alias 产生别名
-keystore 指定密钥库的名称(产生的各类信息将不在.keystore文件中
-keyalg 指定密钥的算法
-validity 指定创建的证书有效期多少天
-keysize 指定密钥长度
-storepass 指定密钥库的密码
-keypass 指定别名条目的密码
-dname 指定证书拥有者信息 例如: "CN=sagely,OU=atr,O=szu,L=sz,ST=gd,C=cn"
-list 显示密钥库中的证书信息 keytool -list -v -keystore sage -storepass ....
-v 显示密钥库中的证书详细信息
-export 将别名指定的证书导出到文件 keytool -export -alias caroot -file caroot.crt
-file 参数指定导出到文件的文件名
-delete 删除密钥库中某条目 keytool -delete -alias sage -keystore sage
-keypasswd 修改密钥库中指定条目口令 keytool -keypasswd -alias sage -keypass .... -new .... -storepass ... -keystore sage
-import 将已签名数字证书导入密钥库 keytool -import -alias sage -keystore sagely -file sagely.crt
导入已签名数字证书用keytool -list -v 以后可以明显发现多了认证链长度,并且把整个CA链全部打印出来。
1.证书的显示
-list
[-v | -rfc] [-alias <alias>]
[-keystore <keystore>] [-storepass <storepass>]
[-storetype <storetype>] [-provider <provider_class_name>]
例如:keytool -list -v -alias RapaServer -keystore cacerts -storepass 12345678
keytool -list -v -keystore d2aapplet.keystore -storepass 12345678 -storetype IAIKKeystore
2.将证书导出到证书文件
例如:keytool -export -keystore monitor.keystore -alias monitor -file monitor.cer
将把证书库 monitor.keystore 中的别名为 monitor 的证书导出到 monitor.cer 证书文件中,它包含证书主体的信息及证书的公钥,不包括私钥,可以公开。
keytool -export -keystore d2aApplet.keystore -alias RapaServer -file Rapa.cert -storetype IAIKKeystore
3.将keystore导入证书中
这里向Java默认的证书 cacerts导入Rapa.cert
keytool -import -alias RapaServer -keystore cacerts -file Rapa.cert -keystore cacerts
4.证书条目的删除
keytool的命令行参数 -delete 可以删除密钥库中的条目,如: keytool -delete -alias RapaServer -keystore d2aApplet.keystore ,这条命令将 d2aApplet.keystore 中的 RapaServer 这一条证书删除了。
5.证书条目口令的修改
使用 -keypasswd 参数,如:keytool -keypasswd -alias RapaServer -keystore d2aApplet.keystore,可以以交互的方式修改 d2aApplet.keystore证书库中的条目为 RapaServer 的证书。
Keytool -keypasswd -alias RapaServer -keypass 654321 -new 123456 -storepass 888888 -keystore d2aApplet.keystore这一行命令以非交互式的方式修改库中别名为 RapaServer 的证书的密码为新密码 654321,行中的 123456 是指该条证书的原密码, 888888 是指证书库的密码。
相关推荐
tomcat开发环境配置启用https 使用jdk自带的keytool工具制作证书
在tomcat中实现https安全连接的方法
tomcat配置https,需要的拿走,里面有详细的截图说明!
toamcat如何启用8443端口,配置程https访问
MSCode微服务平台框架 mscodecloud.com 基于Spring Cloud、Spring Boot和Activiti7工作流,提供所有源码和详尽文档,帮助企业快速开发分布式业务系统。...https://my.oschina.net/u/3307906/blog/3274016
1,tomcat8的配置: 1.1修改tomcat8.x/conf/context.xml的配置如下: <!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file ...
当设置为true时,表示创建的 Cookie 会被以安全的形式向服务器传输,也就是只能在 HTTPS 连接中被浏览器传递到服务器端进行会话验证,如果是 HTTP 连接则不会传递该信息,所以不会被窃取到Cookie 的具体内容。...
要启用https,请执行以下步骤: 本示例假设您使用的是Tomcat服务器。 打开一个终端,转到TOMCAT_HOME / bin并执行: keytool -genkey -alias tomcat -keyalg RSA -keystore C:\ Temp \ tomcat 询问时,输入密码...
JUserManagement 为 JEngine 提供用户管理支持以启用 PCM 中的角色功能 设置 更新 APT sudo apt-get update 安装Tomcat、MySQL服务器、Maven(>3,2)、Java(>1,7)、git sudo apt-get install tomcat7 mysql-...
最简单的方法,直接用java里的keytool工具生成一个keystore文件,然后直接用这个文件启用https就可以了。 方法如下: 命令行执行%JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA 执行过程中会询问你一些...
如果你的项目前端启动端口是8080,那么后端的过滤器里面配置前端的端口是8081,你要改成8080,或者你前端进行设置指定前端运行开启8081端口 common.properties里的web_url和web_dir,这两个一个是前端访问路径,另外...
用Java编写的Alexa自定义技能,用于在使用tomcat作为Web服务运行该技能的本地计算机上打开文件和网页。 您可以在我的YouTube频道上操作技巧。 此技能的流程是最短的流程: 已启用Alexa的设备-> Alexa服务器->您的...
启用Tomcat的多连接器(Multiple Connectors) viii. 64.8. 在前端代理服务器后使用Tomcat ix. 64.9. 使用Jetty替代Tomcat x. 64.10. 配置Jetty xi. 64.11. 使用Undertow替代Tomcat xii. 64.12. 配置Undertow xiii....
启用 HTTPS 进行中的功能 ... 内置 - Java - 依赖管理 - Spring Boot 框架 - Spring安全 - MySQL - Apache Tomcat - 百里香 - Hibernate - jQuery - ECMA 脚本 6 - 物化 作者 查看参与该项目的人员名单。 致谢 ...
这是SpringSource的启用了百里香叶的Spring PetClinic官方示例应用程序。 原始应用程序位于在本地运行诊所首先,您必须下载它。 如果您在本地安装了git,则只需克隆此存储库即可:git clone ...
这是SpringSource的启用了百里香叶的Spring PetClinic官方示例应用程序。 原始应用程序位于 在本地运行rambird 首先,您必须下载它。 如果您在本地安装了git,则只需克隆此存储库即可: git clone ...
ArcGIS WebAdaptor 安装和配置ArcGIS GeoEvent Server 安装和配置ArcGIS ...设置到本地存储库在SQL Server或PostgreSQL DBMS中创建企业级地理数据库并将其注册到ArcGIS Server 安装和配置Apache Tomcat以与ArcGIS Web ...
03、优化全局配置默认只启用PHP,MySQL,FTP,Memcached,Redis等常用功能。 04、优化数据库配置增强数据库稳定性与兼容性。 05、优化删除虚拟主机状态按钮,由“完成”改成“确定”便于理解。 ...
33.3在Tomcat中设置SSL 254 34.运行认证替换 255 34.1概述 255 34.2配置 255 35. Spring Security加密模块 257 35.1简介 257 35.2加密器 257 35.2.1 BytesEncryptor 257 35.2.2 TextEncryptor 258 35.3关键发电机 ...
WebSocket是html5新增加的一种通信协议,目前流行的浏览器都支持这个协议,例如Chrome,Safari,Firefox,Opera,IE等等,下面这篇文章主要给大家介绍了关于WebSocket部署服务器但外网无法连接的解决方法,需要的朋友可以...