Первый и самый простой способ настроить Tomcat для начала использования вашего SSL-сертификата через Admintool.
Если вы скорее всего измените файл server.xml, перейдите к следующему шагу.
Чтобы начать работу, сначала запустите сервер Tomcat. Перейдите в «http://localhost: 8080/admin» и введите имя пользователя
и пароль, которые имеют административные права на сервере Tomcat. Выберите «Сервис» в меню слева, а затем нажмите
«Создать новый соединитель» в раскрывающемся списке справа. Выберите «HTTPS» в поле «Тип» и введите «443» для порта SSL.
Это значение по умолчанию - только измените это, если вы полностью уверены, что вам нужно его изменить.
Теперь вам нужно будет ввести имя своего хранилища ключей и его пароль. Иногда значения по умолчанию будут именно такими,
какие вы хотите, чтобы вы могли использовать то, что было предварительно заполнено.
Нажмите «Сохранить», чтобы сохранить новый соединитель SSL, а затем нажмите «Commit Changes».
Это автоматически напишет файл конфигурации server.xml. Теперь пропустите следующий шаг и перейдите к последнему этапу на этой странице.
Настройка Tomcat путем редактирования server.xml
Если вы предпочитаете использовать графический интерфейс, используйте предыдущий шаг «Настройка Tomcat с помощью Admintool».
Если вы уже настроили Tomcat с помощью Admintool, вы можете перейти к следующему шагу.
Скопируйте файл хранилища ключей в каталог купола. Откройте Home_Directory /conf/server.xml в текстовом редакторе и
раскомментируйте «Конфигурация SSL-коннектора». Установите «Порт разъема» на 443 (443 по умолчанию - только измените это,
если вы полностью уверены). Ваш server.xml должен выглядеть так:
Сохраните изменения и закройте текстовый редактор. Перезагрузите Tomcat, и он подхватит новые изменения в файле конфигурации server.xml.
Инструкции по установке Tomcat SSL
Загрузите файлы сертификатов из своего центра сертификации и сохраните их в том же каталоге, что и хранилище ключей,
созданное в процессе создания запроса CSR. Сертификат будет работать только с тем же хранилищем ключей, с которого вы
первоначально создали CSR. Сертификаты должны быть установлены в хранилище ключей в правильном порядке.
Установите файл корневого сертификата : каждый раз, когда вы устанавливаете сертификат в хранилище ключей, вы должны
ввести пароль хранилища ключей, который вы выбрали при его создании. Введите следующую команду для установки файла корневого сертификата:
Если вы получили сообщение, в котором говорится: «Сертификат уже существует в общесистемном хранилище CA под псевдонимом <...>.
Вы все еще хотите добавить его в свое собственное хранилище ключей? [No]:», выберите «Да». В случае успеха вы увидите
«Сертификат был добавлен в хранилище ключей».
Установите файл промежуточного сертификата . Если ваш центр сертификации предоставил промежуточный файл сертификата,
вам необходимо его установить здесь, введя следующую команду:
В случае успеха вы увидите сообщение «Ответ на сертификат был установлен в хранилище ключей».
Теперь у вас есть все сертификаты, установленные в файле хранилища ключей. Вам просто нужно настроить сервер для использования
файла хранилища ключей.
Настройка SSL-коннектора
Tomcat требует, чтобы соединитель SSL был настроен, прежде чем он сможет принимать безопасные соединения.
По умолчанию Tomcat ищет ваш Keystore с именем файла .keystore в домашнем каталоге с паролем по умолчанию «changeit».
Домашний каталог обычно /home/user_name/ в системах Unix и Linux и C:\Documents and Settings\user_name\ в системах Microsoft Windows.
Вы сможете изменить пароль и местоположение файла.
Tomcat requires an SSL Connector to be configured before it can accept secure connections.
By default Tomcat looks for your Keystore with the file name .keystore in the home directory with the default password "changeit".
The home directory is generally /home/user_name/ on Unix and Linux systems, and C:\Documents and Settings\user_name\ on Microsoft Windows systems.
Вы сможете изменить пароль и местоположение файла.
Скопируйте файл хранилища ключей (your_domain.key) в домашний каталог.
Откройте файл ${CATALINA_HOME}/conf/server.xml в текстовом редакторе.
Раскомментируйте конфигурацию соединителя SSL.
Убедитесь, что установлен порт - 443.
Убедитесь, что keystorePass соответствует паролю для хранилища ключей, а файл keystoreFile содержит путь и имя файла хранилища ключей.
Когда вы закончите, ваш коннектор должен выглядеть примерно так:
Инструкции по установке для Tomcat с использованием формата PKCS # 7
При использовании формата PKCS # 7 нет необходимости загружать и устанавливать промежуточные
сертификаты CA отдельно в этом формате уже включает в себя все три файла: ваш сертификат конечной сущности и оба
промежуточных центра сертификации - первичный ЦС и вторичный ЦС.
Загрузите сертификат SSL, убедившись что при загрузке сертификата выбран формат PKCS # 7 .
Обратите внимание чтобы на обеих сторонах BEGIN PKCS # 7 и END PKS # 7 есть 5 тире и нет пробела, дополнительной линии
разрывы или дополнительные символы были непреднамеренно добавлены.
Чтобы выполнить соглашение об именах для Tomcat, переименуйте имя файла сертификата с расширением .p7b . Например: ssl_cert.p7b
Импортируйте сертификат SSL в хранилище ключей:
Введите следующую команду для импорта сертификата SSL:
Имя псевдонима и имя Keystore в этой команде должны быть такими же, как имя псевдонима и имя хранилища
используемых при генерации секретного ключа и КСО .
Во время импорта вы можете получить следующую ошибку: Ошибка: «java.lang.Exception: введите не сертификат X.509».
Проверьте следующую информацию: Сертификат SSL импортируется в псевдоним с «типом ввода» PrivateKeyEntry или KeyEntry .
Если нет, пожалуйста, импортируйте сертификат в псевдоним Private Key.
Настройте сервер Tomcat.
Откройте файл конфигурации server.xml с помощью текстового редактора (например, JAKARTA_HOME / conf / server.xml)
Найдите защищенный элемент в вашем файле конфигурации (попробуйте выполнить поиск SSL-коннектора ).
По умолчанию он должен выглядеть примерно так:
<!-- SSL Connector on Port 443 -->
<!--
<Connector
className="org.apache.coyote.tomcat4.CoyoteConnector"
port="443" minProcessors="5"
maxProcessors="75"
enableLookups="false"
acceptCount="10"
connectionTimeout="60000" debug="0"
scheme="https" secure="true">
<Factory
className="org.apache.coyote.tomcat4.CoyoteServerSocketFactory"
clientAuth="false" protocol="TLS" keystoreFile="insert path to the keystore here"
keystorePass="insert keystore password here"/>
</Connector>
Убедитесь, что директива « keystoreFile » ссылается на правильное хранилище ключей, а директива «keystorePass»
ссылается на правильный пароль хранилища ключей .
Эти директивы чувствительны к регистру ! Убедитесь, что буквы «F» и «P» в «keystore F ile»
и «keystore P ass» находятся в верхнем регистре.
Если ваше хранилище ключей содержит более одного псевдонима частного ключа, добавьте директиву «keyAlias»,
чтобы указать правильное имя псевдонима . Например:
keystoreFile="insert path to the keystore here"
keystorePass="insert keystore password here" keyAlias="insert private key alias here"/>