服务器开启https协议
开启Tomcat https服务
发布企业级应用的时候遇到一个问题,就是IOS7.1之后app的下载地址URL必须是https开头的协议,所以服务器必须支持https协议。
实验环境:Mac OSX 或者 win7,Tomcat 7.0,JDK 1.7
一.环境搭建
1. 安装tomcat
a.下载地址:http://tomcat.apache.org/download-70.cgi
b.下载你机器的Tomcat版本
2. 安装JDK
tomcat需要安装与其配套的JDK否则无法运行。
- 配置tomcatJDK路径
4运行测试tomcat
浏览器中输入:http://localhost:8080
如果出现了tomcat的欢迎页面说明配置正确了,如果浏览器为空白说明你配置错误,你应该检查控制台输出的错误或警告信息,然后进行改正。
5、安装vcredist_x86
这个的东西是安装openssl的环境,安装oenssl前需安装此环境。
6、安装openssL
a网上搜索Win32OpenSSL-1_0_1g.exe,下载一个。
一路下一步,选择安装路径进行安装 (我选择的是D:\OpenSSL-Win32\)
二、制作自签名
CA 证书(根证书)
CA
证书的制作有两个步骤:
1、创建一个私钥文件:
openssl
genrsa -out myCA.key 2048
私钥文件名为
myCA.key。
2、然后创建根证书:
openssl req -x509 -new -key myCA.key -out myCA.cer -days 730 -subj
/CN="My CustomCA"
根证书文件名为
myCA.cer,机构名称为 My Custom CA。
三、制作自签名
SSL 证书(叶证书)
1、首先创建一个私钥:
openssl
genrsa -out server.key 2048
私钥文件名为
server.key。
2、然后创建
CSR:
openssl
req -new -out server.req -key server.key -subj /CN=127.0.0.1/CN=192.168.31.128/CN=localhost
这里假设服务器的IP
为192.168.2.1。输出文件为 server.req。
3、然后用CSR
去创建 SSL 证书:
openssl
x509 -req -in server.req -out server.cer -CAkey myCA.key -CA myCA.cer -days
36500 -CAcreateserial -CAserial server.serial
这里我们假设有效期为100年,输出文件为
server.cer,序号文件为 server.serial(撤销证书时使用)。
4、将
.key 和 .cer 文件导出为
.p12 证书:
openssl
pkcs12 -export -in server.cer -inkey server.key -out server.p12 -name
"server"
根据命令提示,需要输入两次证书密码。这里我们假设密码为 keypass。输出文件名为 server.p12。
5、将
.p12 文件导入到 java keystore 中:
keytool
-importkeystore -v -srckeystore server.p12 -srcstoretype pkcs12
-srcstorepass keypass -destkeystore server.keystore -deststoretype jks
-deststorepass keypass
这里我们假设
keystore 文件名为 server.keystore,keystore
密码为 keypass。
四、使用
SSL 证书
将最后得到的
keystore 文件 (server.keystore) 放在
web 服务器上。例如 Tomcat 目录的
conf 目录下。
然后修改
server.xml:
<Connectorport="8443" protocol="org.apache.coyote.http11.Http11Protocol"SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
keystoreFile="D:/CA/server.keystore" keystorePass=" keypass
"
clientAuth="false" sslProtocol="TLS" />
重启
Tomcat,通过以下地址访问 https 服务:
https://localhost:8443/ 或者
https://192.168.2.1:8443/。
服务器开启https协议的更多相关文章
- 分享一个免费SSL证书申请网站,给网站开启https协议 | 张戈博客
这些天,由于公司的业务需求,接触到了ssl证书和https协议.博客前几篇文章也分享了在WEB服务器上安装SSL证书,为网站开启https协议的教程,感兴趣的童鞋可以前往查看相关文章: <Lin ...
- 【技术博客】nginx服务器的https协议实现
在本学期软件工程的Alpha和Beta阶段,我们的服务器部署都是使用基础的http协议,http在网络路由间的信息转发都为明文,这对我们网站的账户密码登录来说很不安全,因此在Gamma阶段我们实现了h ...
- jboss eap开启https协议
1.使用 keytool -genkey -keystore chap8.keystore -storepass rmi+ssl -keypass rmi+ssl -keyalg RSA -alias ...
- tomcat开启https协议
1.在tomcat的conf/server.xml 中配置 <Connector port="443" protocol="org.apache.coyote.ht ...
- 【转】Linux下nginx配置https协议访问的方法
一.配置nginx支持https协议访问,需要在编译安装nginx的时候添加相应的模块--with-http_ssl_module 查看nginx编译参数:/usr/local/nginx/sbin/ ...
- Linux下nginx配置https协议访问
一.配置nginx支持https协议访问,需要在编译安装nginx的时候添加相应的模块--with-http_ssl_module 查看nginx编译参数:/usr/local/nginx/sbin/ ...
- Linux下nginx配置https协议访问的方法
一.配置nginx支持https协议访问,需要在编译安装nginx的时候添加相应的模块--with-http_ssl_module 查看nginx编译参数:/usr/local/nginx/sbin/ ...
- Linux服务之nginx服务篇四(配置https协议访问)
一.配置nginx支持https协议访问 编译安装nginx的时候需要添加相应的模块--with-http_ssl_module和--with-http_gzip_static_module(可通过/ ...
- Tomcat服务器配置https协议(Tomcat HTTPS/SSL 配置)
通常商用服务器使用https协议需要申请SSL证书,证书都是收费的,价格有贵的有便宜的.它们的区别是发行证书的机构不同,贵的证书机构更权威,证书被浏览器否决的几率更小. 非商业版本可以通过keytoo ...
随机推荐
- hexo+github搭建个人博客
最近用hexo+github搭建了自己的个人博客-https://liuyfl.github.io,其中碰到了一些问题,记录下来,以便查阅. hexo+github在win7环境下搭建个人博客:hex ...
- shell之sort命令
1 sort的工作原理 sort将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按升序输出. [rocrocket@rocrocket progr ...
- 浅谈浏览器http的缓存机制
针对浏览器的http缓存的分析也算是老生常谈了,每隔一段时间就会冒出一篇不错的文章,其原理也是各大公司面试时几乎必考的问题. 之所以还写一篇这样的文章,是因为近期都在搞新技术,想“回归”下基础,也希望 ...
- 免费的精品: Productivity Power Tools 动画演示
Productivity Power Tools 是微软官方推出的 Visual Studio 扩展,被用以提高开发人员生产率.它的出现一定程度上弥补和完善了 Visual Studio 自身的不足, ...
- ABP(现代ASP.NET样板开发框架)系列之18、ABP应用层——权限验证
点这里进入ABP系列文章总目录 ABP(现代ASP.NET样板开发框架)系列之18.ABP应用层——权限验证 ABP是“ASP.NET Boilerplate Project (ASP.NET样板项目 ...
- JVM系列-常用参数
1.堆内存 堆内存用于存储new对象,垃圾回收器负责堆内存的管理.但Java程序实际占用的空间则由堆内存.栈内存(程序运行栈).程序计数器.常量区.代码区.本地内存等. 堆内存分为Young和Old, ...
- Android开发学习之路-自定义控件(天气趋势折线图)
之前写了个天气APP,带4天预报和5天历史信息.所以想着要不要加一个折线图来显示一下天气变化趋势,难得有空,就写了一下,这里做些记录,脑袋不好使容易忘事. 先放一下效果: 控件内容比较简单,就是一个普 ...
- 你所不知道的setInterval
在你所不知道的setTimeout记载了下setTimeout相关,此篇则整理了下setInterval:作为拥有广泛应用场景(定时器,轮播图,动画效果,自动滚动等等),而又充满各种不确定性的这set ...
- salesforce 零基础学习(五十九)apex:param使用以及相关的疑惑
做web项目难免要从一个页面传参数,解析参数中的值进行相关处理以后跳转到其他页面,VF中也不例外.使用传参的标签为apex:param. apex:param标签不可以单独使用,需要作为子标签嵌套在相 ...
- 1、Python基础知识
输出print “houkai”,3.0版本后print修改为函数,print(‘houkai’) 数学运算:默认整数整除1/2=0而1.0/2=0.5,可以使用from __future__ imp ...