獲取證書由于Tomcat和Apache類似,所以證書可以通過 Apache 接口配置,使用證書和私鑰文件完成配置 證書安裝配置SSL連接器(qì),證書解壓至Tomcat安裝目錄下(xià)的conf/ssl目錄下(xià),沒有ssl目錄的創建一(yī)個(gè)、然後配置同目錄(Tomcat安裝目錄 conf/目錄)下(xià)的server.xml文件。 找到8443端口這(zhè)一(yī)段,去掉8,替換certificateKeyFile ,certificateFile 的值。删除另一(yī)個(gè)參數certificateChainFile ,配置好(hǎo)(hǎo)的内容如(rú)下(xià),然後重啓Tomcat。 <Connector port="443" protocol="org.apache.coyote.http11.Http11AprProtocol" maxThreads="150" SSLEnabled="true" > <UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol" /> <SSLHostConfig> <Certificate certificateKeyFile="D:\apache-tomcat-8.5.23\conf\SSL\niaoyun.com.key" certificateFile="D:\apache-tomcat-8.5.23\conf\SSL\niaoyun.com.crt" type="RSA" /> </SSLHostConfig> </Connector>
重啓沒有報(bào)錯就(jiù)表示配置成功了(le),可在浏覽器(qì)中打開https鏈接測試。 http自動跳(tiào)轉https的安全配置到 conf目錄 下(xià)的 web.xml 。在 </welcome-file-list> 後面,</web-app> ,也(yě)就(jiù)是倒數第二段裏,加上(shàng)這(zhè)樣一(yī)段 <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>
這(zhè)步目的是讓非ssl的connector跳(tiào)轉到ssl的connector去。所以還需要前往 server.xml 進行配置: <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="443" />
redirectPort改成ssl的connector的端口443,重啓後便會生(shēng)效。 |