tomcat开启https服务
一、创建证书
证书是单点登录认证系统中很重要的一把钥匙,客户端于服务器的交互安全靠的就是证书;本教程由于是演示所以就自己用JDK自带的keytool工具生成证书;如果以后真正在产品环境中使用肯定要去证书提供商去购买,证书认证一般都是由VeriSign认证,中文官方网站:http://www.verisign.com/cn/
用JDK自带的keytool工具生成证书:
打开命令行界面,输入:keytool -v -genkey -alias tomcat -keyalg RSA -keystore d:/tomcat.keystore -validity 36500
d:/tomcat.keystore是将生成的tomcat.keystore放到d盘根目录下。
"-validity 36500”含义是证书有效期,36500表示100年,默认值是90天.
下面为命令的过程,主要需要记住密钥库口令。
输入密钥库口令:
再次输入新口令:
您的名字与姓氏是什么?
[Unknown]: gradven
您的组织单位名称是什么?
[Unknown]: gradven.com
您的组织名称是什么?
[Unknown]: gradven.com
您所在的城市或区域名称是什么?
[Unknown]: hangzhou
您所在的省/市/自治区名称是什么?
[Unknown]: zhejaing
该单位的双字母国家/地区代码是什么?
[Unknown]: CN
CN=gradven, OU=gradven.com, O=gradven.com, L=hangzhou, ST=zhejiang, C=CN是否正确
?
[否]: 是
进入到D盘根目录下可以看到已经生成的tomcat.keystore 。
二、配置tomcat
进入tomcat文件夹
找到conf目录下的sever.xml并进行编辑
编辑
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
clientAuth="false" keystoreFile="D:/ApacheSoftwareFoundation/apache-tomcat-6.0.3/conf/tomcat.keystore"
keystorePass="123456" sslProtocol="TLS" />
注:
参数中的keystorePass的密码,就是刚才我们设置的“123456”.
然后重启tomcat,使用https://127.0.0.1:8443 访问页面,能访问即可。
最后在应用程序中web.xml中<web-app>节点下加入以下配置,就可以根据url匹配限制需要强制走https的页面:
(另外还有一种比较土的方法是,增加一个过滤器拦截所有的请求,可以选择将请求地址强制http更改为https, 还注意下端口的更改)
<!-- Authorization setting for SSL -->
<auth-method>CLIENT-CERT</auth-method>
<realm-name>Client Cert Users-only Area</realm-name>
</login-config>
<security-constraint>
<!-- Authorization setting for SSL -->
<web-resource-collection >
<web-resource-name >SSL</web-resource-name>
<url-pattern>/jsp/snp/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
tomcat开启https服务的更多相关文章
- 用keytool制作证书并在tomcat配置https服务(二 )
用keytool制作证书并在tomcat配置https服务(一) 双向认证: 我们上边生成了服务端证书,并发送给客户端进行了验证. 双向认证是双向的,因此还差客户端证书. 1.为方便导入浏览器,生成p ...
- 用keytool制作证书并在tomcat配置https服务(一)
https分为单项认证和双向认证. 一般https页面上的访问都是单项认证,服务端发送数字证书给客户端,客户单方面验证.而服务端不做验证. 而双向认证,需要双方都有证书,然后发送给对方进行验证.一般用 ...
- 用keytool制作证书并在tomcat配置https服务(四)
用keytool制作证书并在tomcat配置https服务(一) 用keytool制作证书并在tomcat配置https服务(二) 用keytool制作证书并在tomcat配置https服务(三) 上 ...
- 用keytool制作证书并在tomcat配置https服务(三)
用keytool制作证书并在tomcat配置https服务(一) 用keytool制作证书并在tomcat配置https服务(二) 用keytool制作证书并在tomcat配置https服务(四) 模 ...
- tomcat添加https服务
系统环境: centos6.7 jdk-7u79-linux-x64 apache-tomcat-7.0.57 apr-1.5.2 apr-util-1.5.4 一.tomcat安装 自己准备tomc ...
- 本地开启https服务
### ##自签名证书 ##配置Apache服务器SSL ##自己作为CA签发证书 ###这里是OpenSSL和HTTPS的介绍 OpenSSL HTTPS 开启HTTPS配置前提是已在Mac上搭建A ...
- centos httpd开启https服务并申请免费https
安装httpd yum -y install httpd httpd配置文件路径 /etc/httpd/conf/httpd.conf 安装OpenSSL yum install mod_ssl o ...
- tomcat开启https协议
1.在tomcat的conf/server.xml 中配置 <Connector port="443" protocol="org.apache.coyote.ht ...
- tomcat搭建https服务(非自签发)
平时做自己的web demo基本上都是用http协议进行访问. 但是正式情况基本上都是https进行访问,所以掌握https的配置是很关键的. 需要准备的材料: 一台可以可以外网访问的远程服务器 to ...
随机推荐
- EditPlus修改主题方法
在“EditPlus.exe”或"EditPlus64.exe"所在的目录下找到"editplus_u.ini"文件(如果不存在就新建一个),修改这个文件即可更 ...
- 3D特征:关于HFM和HBB
1.HBB 三维绑定框 (1): 要用到HBB,定义还不太清楚,来自于 VALVE Developer Community (https://developer.valvesoftware.co ...
- Chernobyl’ Eagle on a Roof(鹰蛋坚固度)
链接 Chernobyl’ Eagle on a Roof 题意 引用论文题意:有一堆共 M 个鹰蛋,一位教授想研究这些鹰蛋的坚硬度 E.他是通过不断从一幢 N 层的楼上向下扔鹰蛋来确定 E 的.当鹰 ...
- JS 20180416考试
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- Windows Server菜鸟宝典之一:Windows Server 2008 R2 AD服务器搭建
1.对于将要安装成为DC的服务器来讲,其系统配置以及基本的磁盘规划在此就不在累述了,但是关键的网络连接属性是必须要注意的.可以通过打开本地连接的属性来进行配置其IP属性.作为服务器DC的IP地 ...
- POJ 2486 Apple Tree (树形dp 经典题)
#include<cstdio> #include<cstring> #include<algorithm> using namespace std; const ...
- 路飞学城Python-Day59(第五模块记录)
HTML部分 <!DOCTYPE html> <html lang="en"> <head> <!--head标签的主要作用:文档的头部主 ...
- 【airtest】iOS,Android 依托 jenkins 并行跑
Airtest 只支持一台mac 连接一台iPhone, 以下方法是以“一台mac 连接一台iPhone”为基础,依托jenkins 统一管理多台iPhone. [mac] jenkins mast ...
- linux内核内存分配(一、基本概念)
内存分配是Linux比较复杂也是比较重要的部分,这个和ssd驱动很类似:物理地址和虚拟地址的映射关系.下面总结下最近看到的有关内存分配的内容和自己的理解: 1.一致内存访问和非一致内存访问 上图来自& ...
- kernel对NTP的API,系统调用函数
kenrel API for NTP kernel 提供两个API(即系统调用 system call)给应用程序NTP,去校准kernel system clock Kernel Applicati ...