Tomcat-配置使用https协议

本文详细介绍了如何将Tomcat服务器配置为使用HTTPS协议,包括使用JDK的keytool生成证书,修改server.xml文件设置SSL配置,如keystoreFile、keystorePass等参数,并提供了访问HTTPS服务的示例。通过这些步骤,可以确保Web应用的安全通信。
摘要由CSDN通过智能技术生成

你的态度,既可以是通向成功的钥匙,也可以是与成功隔绝的锁。

前言

在有些业务场景,需要使用https协议,Tomcat服务可以配置成https协议。

一.创建Tomcat证书

这里使用JDK自带的keytool工具来生成证书。

1.找到本地的jdk安装路径,进入到bin文件夹,执行命令

keytool -genkeypair -alias "tomcat" -keyalg "RSA" -keystore "X:\jdk\tomcat.keystore" 

命令说明:

命令执行成功后,则可以在相应的目录下查看生成的文件

 二:配置Tomcat服务器

1.修改server.xml文件

定位到tomcat的安装目录, 找到conf下的server.xml文件

 <Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol"
               maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS" 
               keystoreFile="X:\jdk\tomcat.keystore"  
               keystorePass="gyq5201314"
               ciphers="TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, 
                TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,
                TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,
                TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,
                TLS_ECDHE_RSA_WITH_RC4_128_SHA,
                TLS_RSA_WITH_AES_128_CBC_SHA256,
                TLS_RSA_WITH_AES_128_CBC_SHA,
                TLS_RSA_WITH_AES_256_CBC_SHA256,
                TLS_RSA_WITH_AES_256_CBC_SHA,
                SSL_RSA_WITH_RC4_128_SHA"/>

 属性说明:

属性

说明

clientAuth如果设为true,表示Tomcat要求所有的SSL客户出示安全证书,对SSL客户进行身份验证
keystoreFile指定keystore文件的存放位置,可以指定绝对路径,也可以指定相对于<CATALINA_HOME>(Tomcat安装目录)环境变量的相对路径。如果此项没有设定,默认情况下,Tomcat将从当前操作系统用户的用户目录下读取名为“.keystore”的文件。
keystorePass指定keystore的密码,如果此项没有设定,在默认情况下,Tomcat将使用“changeit”作为默认密码。
sslProtocol指定套接字(Socket)使用的加密/解密协议,默认值为TLS,用户不应该修改这个默认值。
ciphers指定套接字可用的用于加密的密码清单,多个密码间以逗号(,)分隔。如果此项没有设定,在默认情况下,套接字可以使用任意一个可用的密码。

修改完后,保存server.xml文件。

2.启动Tomcat并进行访问

 访问地址:https://localhost:8443

配置Tomcat使用HTTPS协议,你需要完成以下步骤: 1. 生成SSL证书:首先,你需要生成一个SSL证书,可以通过自签名证书或者购买CA颁发的证书来实现。你可以使用Java的`keytool`工具来生成自签名证书,例如: ``` keytool -genkey -alias tomcat -keyalg RSA -keystore keystore.jks -validity 365 ``` 在生成证书时,你需要提供一些相关信息,如证书别名、密钥算法等。 2. 配置Tomcat Connector:编辑Tomcat配置文件(`server.xml`),找到Connector相关的配置项。添加以下配置项以启用HTTPS连接: ```xml <Connector port="443" protocol="HTTP/1.1" maxThreads="150" SSLEnabled="true" scheme="https" secure="true" keystoreFile="/path/to/keystore.jks" keystorePass="password" keyAlias="tomcat" /> ``` 其中,`port`指定HTTPS监听端口(一般为443),`keystoreFile`指定证书存储路径和文件名,`keystorePass`是证书密码,`keyAlias`是证书别名。 3. 配置Tomcat的SSL协议和加密算法:在Connector中添加以下配置项以指定SSL协议和加密算法: ```xml <Connector ...> ... <SSLHostConfig> <Certificate certificateKeystoreFile="/path/to/keystore.jks" certificateKeystorePassword="password" certificateKeyAlias="tomcat" /> <Protocols> <Protocol name="HTTP/1.1" /> <Protocol name="org.apache.coyote.http11.Http11NioProtocol" sslImplementationName="org.apache.tomcat.util.net.jsse.JSSEImplementation" honorCipherOrder="true" honorCipherOrder="true" honorCipherOrder="true"> <UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol" /> </Protocol> </Protocols> <Ciphers> <Cipher>AES128-GCM-SHA256</Cipher> <Cipher>AES256-GCM-SHA384</Cipher> ... </Ciphers> </SSLHostConfig> </Connector> ``` `certificateKeystoreFile`、`certificateKeystorePassword`和`certificateKeyAlias`的值与上一步中的配置相同。`Protocols`指定协议,`Ciphers`指定加密算法。 4. 重启Tomcat:保存配置文件并重启Tomcat服务器,使配置生效。 完成以上步骤后,Tomcat就可以使用HTTPS协议进行访问了。请确保证书的安全性,并根据需要调整SSL协议和加密算法的配置
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

成长20171221

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值