我是靠谱客的博主 害羞玫瑰,最近开发中收集的这篇文章主要介绍阿里云通配符SSL证书在内网tomcat服务器上的部署安装在部署证书的时候踩了无数的坑,在此做一下记录,在这个证书上耗了两天时间,也是醉了。。。我在部署过程中遇到的问题:配置完后访问不通最后附上官网教程链接,本篇中有所不到之处敬请指正,也欢迎评论区交流,共同进步。,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

阿里云通配符SSL证书在tomcat服务器上的部署安装

  • 在部署证书的时候踩了无数的坑,在此做一下记录,在这个证书上耗了两天时间,也是醉了。。。
    • 第一步 购买证书并绑定通配域名
    • 第二步 tomcat服务器配置
      • NO.1 调通网络
      • NO.2服务器上放置证书文件
      • NO.3修改tomcat配置文件
      • NO.4 重启tomcat
  • 我在部署过程中遇到的问题:配置完后访问不通
  • 最后附上官网教程链接,本篇中有所不到之处敬请指正,也欢迎评论区交流,共同进步。

在部署证书的时候踩了无数的坑,在此做一下记录,在这个证书上耗了两天时间,也是醉了。。。

第一步 购买证书并绑定通配域名

这一步,不用多说
首先在阿里云网站上购买证书;购买过程就不赘述了,找他们客服,都非常热情,毕竟是要买他们东西~
获得证书时将证书绑定到某通配域名下,如:*.abc.com,根据各自的情况绑喽
此处需要提到的是:该通配符域名可以用于保护abc.com的所有下级域名,如flower.abc.com、hello.abc.com等,数量不限,价格相较于单域名证书也要贵一丢丢
在这里插入图片描述

第二步 tomcat服务器配置

买好域名证书后就可以配服务器了~

NO.1 调通网络

由于我们企业的服务器一般都位于 内网 ,与外部SSl服务器是网络不通的,因此先要在防火墙上做好服务器IP及端口到外网ip和端口的映射。也就是将服务器某个端口发布到外网。
如果您的服务器步在外网,则忽略本小节,直接到NO.2
内网网络映射至外网

举例:
服务器IP为:11.22.33.44(举例)
tomcat端口:8033(此处为自定义,视大家具体部署情况而定,8011、9231等等)
ssl服务端口:默认443,当然也可以自定义,比如8000,只不过设在非443的端口上时,部署证书后需要带端口访问**

服务器在内网的情况下,需要将ssl端口443(或自定义的特定端口,通俗点讲,以后ssl就是通过这个端口与外网互通的),在防火墙上进行配置,映射到外网某个IP下的443(或自定)端口

其他的就不需要做什么了

NO.2服务器上放置证书文件

当购买证书后,后台会针对各种web服务器生成各种证书,如下图所示,我用的是tomcat,对应下载即可。
在这里插入图片描述
下载后会获得以下两个文件,

第一个文件xxxx_abc.com.pfx,这里文件名中“xxxx”在放到服务器上后需要修改为自己的域名,如hello.abc.com.pfx;
第二个文件pfx-password.txt中放有秘钥,后面tomcat配置会用到
在这里插入图片描述

将证书文件放置在服务器上的某个路径下,最好用个单独的文件夹放这两个文件。
记住这个路径,后面会用到(注:此处路径没有特殊要求,官方教程里所放在tomcat根目录下,其实不放在那里也可以)
在这里插入图片描述

NO.3修改tomcat配置文件

打开tomcat根目录/conf/server.xml配置文件,在server.xml文件中找到以下参数并进行修改。
注:官网的部署教程文档中还让修改server.xml中另外一个片段(转发端口),但是我的实践结果表明,只修改一下片段就可以了。

    <Connector port="8443" #这个8443是需要修改的,可以改成默认的443,也可以改成别的端口,必须保证改端口跟外网通
          protocol="org.apache.coyote.http11.Http11NioProtocol" #固定串,无需修改
          maxThreads="150"
          SSLEnabled="true">
        <SSLHostConfig>
            <Certificate       
                certificateKeystoreFile="cert/keystore.pfx"#此处修改为服务器上.pfx文件地址
                certificateKeystorePassword="XXXXXXX"#pfx-password.txt文档中的秘钥串
                certificateKeystoreType="PKCS12" />#无需修改
        </SSLHostConfig>
    </Connector>

修改后如下:

  #找到以上参数,去掉<!- -  - ->这对注释符并修改为如下参数:
    <Connector port="443"   #将Tomcat中默认的HTTPS端口Connector port 8443修改为443。8443端口不可通过域名直接访问、需要在域名后加上端口号;443端口是HTTPS的默认端口,可通过域名直接访问,无需在域名后加端口号。
          protocol="org.apache.coyote.http11.Http11NioProtocol"   #server.xml文件中Connector port有两种运行模式(NIO和APR),请选择NIO模式(也就是protocol="org.apache.coyote.http11.Http11NioProtocol")这一段进行配置。
          maxThreads="150"
          SSLEnabled="true">
        <SSLHostConfig>
            <Certificate       certificateKeystoreFile="/usr/local/tomcat/cert/证书域名.pfx"   #此处certificateKeystoreFile代表证书文件的路径,请用您证书的路径+文件名替换证书域名.pfx,例如:certificateKeystoreFile="/usr/local/tomcat/cert/abc.com.pfx"
             certificateKeystorePassword="证书密码"   #此处certificateKeystorePassword为SSL证书的密码,请用您证书密码文件pfx-password.txt中的密码替换,例如:certificateKeystorePassword="bMNML1Df"
             certificateKeystoreType="PKCS12" />   #证书类型为PFX格式时,certificateKeystoreType修改为PKCS12。
        </SSLHostConfig>
    </Connector>

NO.4 重启tomcat

重启后,先本地浏览器访问https://localhost/项目名/xxx
如果正常打开页面,说明证书部署成功

我在部署过程中遇到的问题:配置完后访问不通

问题1:证书和tomcat都配置完后,服务器本地访问不通,用https://xxx打不开项目页面
解决:端口冲突,检查server.xml中ssl占用的端口是否与tomcat其他端口冲突导致访问失败

问题2:部署后本地服务器能访问通,外网访问不通,用https://xxx打不开项目页面
解决:就我部署的过程中总结,这个是防火墙上端口没有映射到外网导致的,需要检查防火墙配置,看对应的443或其他端口是否放行

最后附上官网教程链接,本篇中有所不到之处敬请指正,也欢迎评论区交流,共同进步。

阿里云官网证书部署教程-tomcat

最后

以上就是害羞玫瑰为你收集整理的阿里云通配符SSL证书在内网tomcat服务器上的部署安装在部署证书的时候踩了无数的坑,在此做一下记录,在这个证书上耗了两天时间,也是醉了。。。我在部署过程中遇到的问题:配置完后访问不通最后附上官网教程链接,本篇中有所不到之处敬请指正,也欢迎评论区交流,共同进步。的全部内容,希望文章能够帮你解决阿里云通配符SSL证书在内网tomcat服务器上的部署安装在部署证书的时候踩了无数的坑,在此做一下记录,在这个证书上耗了两天时间,也是醉了。。。我在部署过程中遇到的问题:配置完后访问不通最后附上官网教程链接,本篇中有所不到之处敬请指正,也欢迎评论区交流,共同进步。所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(70)

评论列表共有 0 条评论

立即
投稿
返回
顶部