Мы запускаем приложение весенней загрузки на сервере tomcat 8.5.5. У нас есть сертификаты безопасности и настроенный SSL для поддержки https. В настоящее время используется TLSv1.2. Наш провайдер платежных шлюзов планирует прекратить поддержку TLSv1.2 и продолжить поддержку только TLSv1.3. Следовательно, мы хотим добавить поддержку TLSv1.3 на наш сервер приложений. Наш соединительный блок с необходимыми шифрами для TLSv1.3 приведен ниже.
<Connector port="443" maxThreads="150" scheme="https" secure="true" SSLEnabled="true" keystoreFile="/home/ubuntu/ourkey.p9"
keystorePass="ourpass" clientAuth="false" keystoreType="keystore"
sslProtocol="TLSv1.2" sslEnabledProtocols="TLSv1.2+TLSv1.3" protocol="org.apache.coyote.http11.Http11NioProtocol" server="Web"
useServerCipherSuitesOrder="true"
ciphers="TLS_AES_256_GCM_SHA384,
TLS_CHACHA20_POLY1305_SHA256,
TLS_AES_128_GCM_SHA256,
TLS_AES_128_CCM_8_SHA256,
TLS_AES_128_CCM_SHA256,
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,... other ciphers/>
Мы используем реализацию JSSE, и пока для tomcat не удалось найти конкретную документацию. Официальный do c имеет блок соединителей, как показано ниже:
<!-- Define an SSL Coyote HTTP/1.1 Connector on port 8443 -->
<Connector
protocol="org.apache.coyote.http11.Http11NioProtocol"
port="8443" maxThreads="200"
scheme="https" secure="true" SSLEnabled="true"
keystoreFile="${user.home}/.keystore" keystorePass="changeit"
clientAuth="false" sslProtocol="TLS"/>
Здесь атрибут sslProtocol имеет TLS , который по умолчанию соответствует TLS версии 1.2. Мы попытались изменить его на TLSv1.3, но это не сработало. Также, как уже упоминалось, здесь попытался добавить атрибут sslEnabledProtocol . Это не сработало. Мы добавили необходимые шифры, необходимые для успешного установления связи TLSv1.3.
Как мы можем настроить сервер. xml Блок соединителей для поддержки TLSv1.3 - это то, что мы пытаемся выяснить. Любые входные данные, подсказки будут полезны.