dubbo服務部署到Tomcat以及https訪問設置

出于安全考慮,項目中用dubbo發(fā)布的rest服務需要增加https安全訪問,原本服務是跑在內置tomcat,內置tomcat對于https設置不支持,只能折騰一番,調整各種配置,部署到外置tomcat發(fā)布服務,大致過程:生成安全證書、設置tomcat服務參數(shù)、設置服務參數(shù),詳細過程見下文。

證書生成

  • 進入到jdk目錄,執(zhí)行命令:
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方式發(fā)布:
<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>
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容