环境

阿里云centos7.4

域名也是阿里申请的

jdk1.8

tomcat8.5

1.申请证书

登录到阿里云的域名管理,可以看到已经申请过得域名,我这里第一个已经配置了ssl,第二个未配置,点击更多,进入ssl证书的申请

我们这里申请免费的证书(家里没矿QAQ,只能用免费的)

填写绑定的域名

鼠标点点就可以提交申请,审核通过后就可以到这里查看

2.下载证书

在已签发的证书处,找到下载,因为我们是要配置tomcat的,所以就下对应的版本

3.导入证书

下载证书到本地后,解压得到两个文件,一个是.pfx文件,一个是密码文件

将文件上传到centos,我是将文件保存到服务器对应tomcat下的cert文件夹中

4.server.xml配置

原来端口是8080,改为80,可以免去输入时不用带端口就能直接访问,同理,重定向端口原来时8443,改为443

<Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="443"/>
<Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol" maxThreads="150" SSLEnabled="true" defaultSSLHostConfigName="www.xxx1.cn">
<SSLHostConfig hostName="www.xxx1.cn">
<Certificate certificateKeystoreFile="{你下载的pfx文件的绝对路径,例如:/usr/local/tomcat/cert/xxx1.pfx}" certificateKeystorePassword="{你下载的pfx文件的密码}" certificateKeystoreType="PKCS12" certificateKeyAlias="alias"/>
</SSLHostConfig>
</Connector>

如果一个tomcat要被两个域名映射,可以这样添加

    <Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="443"/>
<Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol" maxThreads="150" SSLEnabled="true" defaultSSLHostConfigName="www.xxx1.cn">
<SSLHostConfig hostName="www.xxx1.cn">
<Certificate certificateKeystoreFile="{你下载的pfx文件的绝对路径,例如:/usr/local/tomcat/cert/xxx1.pfx}" certificateKeystorePassword="{你下载的pfx文件的密码}" certificateKeystoreType="PKCS12" certificateKeyAlias="alias"/>
</SSLHostConfig>
<SSLHostConfig hostName="www.xxx2.cn">
<Certificate certificateKeystoreFile="{你下载的pfx文件的绝对路径,例如:/usr/local/tomcat/cert/xxx2.pfx}" certificateKeystorePassword="{你下载的pfx文件的密码}" certificateKeystoreType="PKCS12" certificateKeyAlias="alias"/>
</SSLHostConfig>
</Connector>

往下还要配置,将所有的跳转都由443处理

<Connector port="8009" protocol="AJP/1.3" redirectPort="443" />

5.web.xml配置

打开server.xml同个目录下的web.xml

</welcome-file-list>

下添加

      <login-config>
<!-- 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>/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>

6.添加端口

阿里云开放443端口,登录后阿里云esc服务器管理,根据自己需求添加规则

回到centos防火墙设置

查看防火墙开启的所有端口
  firewall-cmd --zone=public --list-ports
添加开放的端口(添加443端口)
  firewall-cmd --zone=public --add-port=443/tcp --permanent
刷新配置
  firewall-cmd --reload

7.重启tomcat

在tomcat目录bin下执行

./shutdown.sh

./startup.sh

8.测试访问

如果地址前加https能访问成功,说明tomcat配置ssl证书成功了。

ps:

1.tomcat8是个分水岭,8以上和8以下配置时不一样的,可以参考官网的手册

  tomcat7以及以下的配置:https://help.aliyun.com/knowledge_detail/95496.html

  tomcat8的以及以上的配置:https://help.aliyun.com/document_detail/102939.html

阿里云centos7.4下tomcat8.5配置ssl证书的更多相关文章

  1. 阿里云Ubuntu下tomcat8.5配置SSL证书

    环境 阿里云ubuntu(18.04)服务器 阿里云申请的域名 Tomcat8.5.7 jdk1.8 免费型SSL证书 SSL证书申请 登录阿里云的官网,登录后在菜单中选择SSL证书(应用安全) 进入 ...

  2. windows下基于IIS配置ssl证书遇到的坑

    前几天配置windows下基于IIS配置ssl证书 完全按照步骤执行 绑定https网址后,一直显示:无法访问此网站 检查了443端口,还有防火墙限制,没发现什么 足足困扰了我好几天 后来突然想到前不 ...

  3. 阿里云Center OS 6.2 Nginx 配置 SSL/TLS HTTPS配置

    1.通过https://www.startssl.com/ 免费SSL证书 STARTSSL 跟VeriSign一样,StartSSL(网址:http://www.startssl.com,公司名:S ...

  4. windows下基于IIS配置ssl证书

    我这边用的是阿里云的免费证书,下面展示一下操作步骤. 首先登陆阿里云,搜索ssl证书进入ssl证书控制台.点击购买 然后选择免费版,配置如下: 选择立即购买,购买成功后回到ssl控制台即可查看证书.然 ...

  5. window下为apache配置ssl证书

    转载自 子非鱼 的博客稍作修改 第一步:依赖 配置Apache服务器支持https协议和SSL证书,最基本的要求是Apache包含openssl模块.还好apache/bin目录下有libeay32. ...

  6. linux 阿里云 centos7 环境下安装easymock(一)

    一.说一说Easy-mock的使用场景和优点:1.Easy Mock 是一个可视化,并且能快速生成 模拟数据 的持久化服务,2.基于 Swagger 创建项目,以节省手动创建接口的时间,这点也是我搭建 ...

  7. 阿里云万网虚拟主机安装配置Https(SSL)教程

    太多太多的用户咨询阿里云虚拟主机是否可以安装SSL数字证书?万网空间是否可以支持HTTPS协议访问网站?答案只有一个:目前阿里云虚拟主机都不支持安装SSL证书!但是,但是,可以曲线实现目标! 1.为了 ...

  8. <亲测>阿里云centos7 挂载数据盘配置

    阿里云centos7 挂载数据盘配置 2018年07月17日 15:13:53 阅读数:235更多 个人分类: linux阿里云ECS数据盘挂载   查看磁盘情况 fdisk -l  其中/dev/v ...

  9. 阿里云服务器centos下安装配置svn服务器

      阿里云服务器centos下安装配置svn服务器 1.安装svn服务器端yum install subversion      从镜像下载安装svn服务器端中间会提示是否ok,输入y,确认安装成功提 ...

随机推荐

  1. 百战程序员——JDBC

    JDBC全称是什么? JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Jav ...

  2. $(window).scroll()无法触发问题

    在微信端开发中遇到一个这种问题:明明用的公共文件(代码如下图),其他页面每次都能触发这个滚动条$(window).scroll事件,以显示右下角“回到顶部”这个按钮图标 但是,问题来了,最该需要使用“ ...

  3. 运用Turtle实现汉诺塔的可视化运行(递归算法)

    运用Turtle实现汉诺塔的可视化运行(递归算法) 汉诺塔问题又名河内塔问题,是源于印度一个古老传说的益智玩具.大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆 ...

  4. LeetCode - Min Remaining Chess Pieces

    假设有一个棋盘(二维坐标系), 棋盘上摆放了一些石子(每个石子的坐标都为整数). 你可以remove一个石子, 当且仅当这个石子的同行或者同列还有其它石子. 输入是一个list of points. ...

  5. LeetCode - Robot Room Cleaner

    Given a robot cleaner in a room modeled as a grid. Each cell in the grid can be empty or blocked. Th ...

  6. jQuery事件合成

    <!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"><head><meta ...

  7. EBS WEBADI导入日记账 客户化账户组合规则校验

    近期项目需求对EBS中WEBADI导入日记账时,在加载数据时需要对账户组合额外进行客户化的校验,需要能够做到将校验结果体现在WEBADI模板的数据上,并且对每条错误数据都单独报错. 项目上的方案是调整 ...

  8. 转载一篇阿里云Terraform 开发指南

    连接:https://www.jianshu.com/p/0aebea117cae 是一个比较详细的开发指南          

  9. C# 控件消失等问题

    控件消失原因: 1.新控件的触发导致页面重载,该重载有没有达到原有控件的触发状态进而消失. 2.(目前只发现这一点,后续又发现再更...) 1.示例: ASPX: <div> <!- ...

  10. mongdb 报错“Cannot connect to the MongoDB at 192.179.1.6:27017. Error: Network is unreachable.”

    1.命令行输入talnet 192.179.1.6 27017 看能拼通不 2.防火墙添加入站规则  27017 3.修改mongdb配置文件 mongodb.config dbpath=c:\Mon ...