为了账号安全,请及时绑定邮箱和手机立即绑定

dubbo服务部署到Tomcat以及https访问设置

标签:
Kubernetes

出于安全考虑,项目中用dubbo发布的rest服务需要增加https安全访问,原本服务是跑在内置tomcat,内置tomcat对于https设置不支持,只能折腾一番,调整各种配置,部署到外置tomcat发布服务,大致过程:生成安全证书、设置tomcat服务参数、设置服务参数,详细过程见下文。

证书生成

  • 进入到jdk目录,执行命令:

keytool -genkey -alias mykeystore -keyalg RSA -validity 30000 -keypass mypass -keystore E:/mykeystore.keystore
  • 证书查看:

keytool -list -v -keystore E:/mykeystore.keystore

Tomcat配置

配置Tomcat,打开tomcat目录下/conf/server.xml,修改如下:

<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />

修改为:

<Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="443" />
<!--
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
              maxThreads="150" scheme="https" secure="true"
              clientAuth="false" sslProtocol="TLS"/>-->

修改为:

<Connector port="443" protocol="HTTP/1.1" SSLEnabled="true"
               maxThreads="150" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS" keystoreFile="/opt/tomcat/mykeystore.keystore" keystorePass="mypass"/> 注释:keystoreFile是证书文件的位置,keystorePasss是证书的密码,在证书文件生成过程时设置的。
<!--
   <Connector port="8009" enableLookups="false" protocol="AJP/1.3" redirectPort="8443" /> 
-->

修改为:

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

dubbo服务配置

  • 服务配置
    pom.xml文件,修改为war方式发布:

<packaging>war</packaging>

provider.xml文件,修个服务配置:

<dubbo:protocol name="rest" port="443" contextpath="dop" server="tomcat"/><dubbo:protocol name="http" port="8889" />
  • web.xml配置
    打开项目webapp下面的web.xml,在文件末尾增加:

<security-constraint>
          <web-resource-collection>   
            <web-resource-name >TLS</web-resource-name>
            <url-pattern>/*</url-pattern>
       </web-resource-collection>
       <user-data-constraint>   
            <transport-guarantee>CONFIDENTIAL</transport-guarantee>
       </user-data-constraint>  </security-constraint>



作者:新时代搬运工
链接:https://www.jianshu.com/p/5cb7bfeb27c8


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消