бесплатно с городских телефонов Украины
Киев | 044 392-73-56 |
Харьков | 057 728-49-18 |
Днепр | 056 790-86-00 |
Одесса | 048 734-56-54 |
Львов | 032 229-58-50 |
Николаев | 051 270-12-63 |
Полтава | 053 262-53-74 |
Запорожье | 061 228-69-91 |
Apache Tomcat является сервером приложений, используемым для обслуживания приложений Java.
Данная инструкция поможет защитить сервер Tomcat 8 с помощью SSL.
Перед выполнением инструкции необходимо предварительно установить на сервере веб-сервер Apache и сервер Tomcat 8.
Рекомендуется создать не root пользователя с доступом к sudo.
В инструкции используется текстовый редактор nano, для установки которого требуется выполнить команду:
yum install nano
Устанавливаем GCC (для компиляции коннектора) и файлы разработки веб-сервера Apache:
sudo yum install gcc httpd-devel
Переходим в папку tmp:
cd /tmp
Загружаем архив с исходным кодом коннектора:
curl -LO http://mirrors.ibiblio.org/apache/tomcat/tomcat-connectors/jk/tomcat-connectors-1.2.42-src.tar.gz
Извлекаем архив в текущий каталог:
tar xzvf tomcat-connectors*
Переходим в каталог native:
cd tomcat-connectors*/native
Указываем расположение инструмента apxs, помогающего настроить код:
./configure —with-apxs=/usr/bin/apxs
Собираем модуль:
make
Устанавливаем модуль:
sudo make install
Для настройки поддержки модуля mod_jk и взаимодействия Apache с Tomcat, открываем файл jk.conf:
sudo nano /etc/httpd/conf.d/jk.conf
и вставляем в него следующий код:
LoadModule jk_module modules/mod_jk.so
JkLogFile logs/mod_jk.log
JkLogLevel info
JkShmFile logs/mod_jk.shm
JkWorkersFile conf/workers.properties
Сохраняем изменение в файле, нажав сочетание клавиш Ctrl+x , затем клавишу y и затем клавишу Enter.
Создаем файл свойств рабочего процесса
sudo nano /etc/httpd/conf/workers.properties
и для создания подключения к Tomcat на порте 8009 вставляем в файл следующий код:
worker.list=worker1
worker.worker1.type=ajp13
worker.worker1.host=127.0.0.1
worker.worker1.port=8009
Сохраняем изменение в файле, нажав сочетание клавиш Ctrl+x , затем клавишу y и затем клавишу Enter.
Открываем виртуальный хост:
sudo nano /etc/httpd/conf.d/ssl.conf
и чтобы передать весь трафик этого виртуального хоста ранее настроенному рабочему процессу, добавляем в раздел
JkMount /* worker1
Сохраняем изменение в файле, нажав сочетание клавиш Ctrl+x , затем клавишу y и затем клавишу Enter.
Проверяем настройки:
sudo apachectl configtest
Видим ответ Syntax OK, означающий, что ошибок в конфигурациях нет.
Перезагружаем Apache:
sudo systemctl restart httpd
Теперь сервер Tomcat доступен в браузере по SSL.
Чтобы в этом убедиться, открываем адрес (вместо 93.190.42.52 необходимо указать IP адрес собственного сервера):
https://93.190.42.52/
Чтобы все запросы Tomcat проходили через прокси-сервер, нужно настроить Tomcat для прослушивания соединений только на локальном кольцевом интерфейсе.
Открываемфайл server.xml:
sudo nano /opt/tomcat/conf/server.xml
и меняем строки:
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
на строки:
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
address="127.0.0.1"
redirectPort="8443" />
а так же меняем строку:
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
на строку:
<Connector port="8009" address="127.0.0.1" protocol="AJP/1.3" redirectPort="8443" />
Сохраняем изменение в файле, нажав сочетание клавиш Ctrl+x , затем клавишу y и затем клавишу Enter.
Перезапускаем Tomcat:
sudo systemctl restart tomcat
Теперь соединения сервера Tomcat шифруются по SSL с помощью прокси-сервера.
См.также:
Шифрование соединений Tomcat 8 на Apache