• 阿里云centos7.4下tomcat8.5配置ssl证书


    环境

    阿里云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

  • 相关阅读:
    POJ 2251 Dungeon Master
    HDU 3085 Nightmare Ⅱ
    CodeForces 1060 B Maximum Sum of Digits
    HDU 1166 敌兵布阵(树状数组)
    HDOJ 2050 折线分割平面
    HDU 5879 Cure
    HDU 1878 欧拉回路
    HDU 6225 Little Boxes
    ZOJ 2971 Give Me the Number
    HDU 2680 Choose the best route
  • 原文地址:https://www.cnblogs.com/maixiaodou/p/10648786.html
Copyright © 2020-2023  润新知