современная установка Tomcat с SSL на порт 443

В компьютерном курсе, который я пишу, я использую Tomcat в качестве сервера. (Студенты узнают, как настроить CentOS и все остальное с нуля. В настоящее время в курсе они используют Tomcat, работающий на порту 8080.) Я вернусь, чтобы написать раздел о безопасности. Я хочу, чтобы студенты научились настраивать свой веб-сервер для использования SSL / TLS на порте 443 с перенаправлением HTTP-порта 80 на HTTPS-порт 443. Это должна быть очень простая, фундаментальная конфигурация, не так ли?

В последний раз я делал это было лет 10 или 15 назад, когда я сам скомпилировал Apache и поставил его перед Tomcat, используя любые коннекторы (мне придется взглянуть на мою конфигурацию того времени), покупая SSL-сертификаты по невероятно высокой цене и устанавливая их вручную . Насколько я уверен, что ситуация значительно улучшилась. Недавно я настроил Apache (мне не пришлось его компилировать), напрямую размещая статические страницы, и использовать Let's Encrypt (как только я понял, что мне следует делать) для SSL было проще простого. Работает нормально. Итак, я предполагаю, что я захочу использовать Let's Encrypt в любом решении, которое я пропишу студентам.

Итак, какова лучшая практика, простая и простая установка Tomcat с SSL на порт 443 (предпочтительно с использованием Let's Encrypt) с HTTP переадресация порта 80 на порт HTTPS 443? Мне все еще нужно вставить Apache (или Nginx?) Перед ним? (Последнее, что я проверил, разрешение Tomcat использовать более низкие номера портов было проблемой, и никто, похоже, не знал простого и понятного способа сделать это.)

-1
задан 8 February 2019 в 22:42
1 ответ

Можно настроить Apache Tomcat с помощью TLS и просто изменить port = "8443" на port = "443" . Также возможно перенаправить весь HTTP на HTTPS с помощью коннектора так просто, как:

<Connector port="8080" protocol="HTTP/1.1" 
           redirectPort="443"/>

Использование Apache или Nginx перед Apache Tomcat может быть хорошей идеей, потому что это позволяет вам использовать внешний брандмауэр веб-приложений (WAF): ModSecurity с Базовый набор правил OWASP . Это также значительно упрощает использование сертификатов Let's Encrypt ( Certbot ). Tomcat может запускать ваши веб-приложения, прослушивая простой HTTP на localhost: 8080 , в то время как обратный прокси-сервер на Apache / Nginx обрабатывает функциональность WAF и соединения TLS.

0
ответ дан 5 December 2019 в 20:19

Теги

Похожие вопросы