Я пытался настроить SSL для сервера Tomcat 8.5 в школе, где я работаю, для использования протокола HTTPS. Поскольку у нас нет сертификата с CA, я использовал certbot, чтобы получить бесплатный. Я выполнил некоторую настройку, и мой Tomcat работает по HTTP, но еще не по HTTPS, и в журналах нет ошибок. Вот что я сделал.
- Tomcat 8.5 установлен на Windows server 2012. Он отлично работал в течение 2 лет, обслуживая приложения по обычному HTTP.
-Certbot не поддерживает Windows, поэтому мне пришлось установить Ubuntu 16.04 на виртуальную машину.
-Я успешно установил certboot в Ubuntu.
-Я использовал следующую команду для получения сертификатов certbot:
sudo certbot certonly --preferred-challenges http --manual -d theDomainOfMySchool.com
-После выполнения теста ACME я получил 4 файла .pem: cert1.pem, chain1.pem, fullchain1.pem и privkey1.pem.
-Все 4 файла представляют собой обычный текст в base64, как этот фрагмент, который я вставил сюда:
-----BEGIN CERTIFICATE-----
MIIFYTCCBEmgAwIBAgISAwyxKh7NQWpNnH6w2enPbOlxMA0GCSqGSIb3DQEBCwUA
MEoxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MSMwIQYDVQQD
-После борьбы с разрешениями на копирование 4 файлов из / etc / letsencrypt / archive я поместил их в папку моего сервера Tomcat в Windows.
-Я настроил Tomcat со следующими узлами на server.xml:
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true" >
<UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol" />
<SSLHostConfig>
<Certificate certificateKeyFile="conf/cert/certbot_gallery/privkey1.pem"
certificateFile="conf/cert/certbot_gallery/cert1.pem"
certificateChainFile="conf/cert/certbot_gallery/chain1.pem"
type="RSA" />
</SSLHostConfig>
</Connector>
<Connector port="80" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
-Когда я запускаю свой Tomcat, в логах нет ошибок.
- Сервер запускается нормально и без проблем работает по HTTP.
-При попытке доступа к приложениям через HTTPS в браузере появляется сообщение ERR_CONNECTION_RESET.
Что я делаю не так. Разве этот вид сертификатов не подходит для этого разъема Tomcat? Мне не хватает какой-либо конфигурации?
Спасибо всем.