Tomcat использует собственный формат сертификатов "JKS" (Java Key Store).
Сертификат (публичный ключ), цепочка сертификатов центров сертификации (если есть) и приватный ключ преобразуются в JKS следующим образом:
1. Преобразовать ключ и сертификаты в формат PKCS12
openssl pkcs12 -export -out server.p12 -inkey domain.com.key -in ServerCertificate.cer [-certfile CAchain.crt]
Цепочку сертификатов центров сертификации нужно указывать, если они есть. Эта цепочка создается командой конкатенации всех сертификатов в один файл:
cat CACertificate-ROOT-2.cer CACertificate-INTERMEDIATE-1.cer > CAchain.crt
ВНИМАНИЕ! После выполнения этой команды просмотрите текстовый файл CAchain.crt и проверьте, что границы сертификатов не "склеились", а находятся каждая на своей строке!
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
2. Конвертировать PKCS12 в JKS
keytool -importkeystore -destkeystore server.jks -srckeystore server.p12 -srcstoretype PKCS12
Здесь нужно указать пароли на исходное хранилище и результат.
3. Добавить путь к JKS файлу и пароль в настройки tomcat (файл /etc/tomcat8/server.xml):
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol" maxThreads="150" SSLEnabled="true" defaultSSLHostConfigName="your-domain.com">
<SSLHostConfig hostName="your-domain.com">
<Certificate certificateKeystoreFile="/var/lib/tomcat8/ssl/server.jks" type="RSA" certificateKeystorePassword="******" />
</SSLHostConfig>
</Connector>
4. Изменить URL в конфигурации Headwind MDM (ROOT.xml or hmdm.xml) с HTTP на HTTPS
<Parameter name="base.url" value="https://your-domain.com"/>
5. Перезапустить tomcat
service tomcat8 restart
6. При необходимости перенаправить порт 443 на 8443, в том числе по локальному сетевому интерфейсу
/sbin/iptables -A PREROUTING -t nat -i eno1 -p tcp -m tcp -d your-domain.com --dport 443 -j REDIRECT --to-ports 8443
/sbin/iptables -A OUTPUT -t nat -o lo -p tcp -m tcp -d your-domain.com --dport 443 -j REDIRECT --to-ports 8443
7. Проверить, что настройка iptables сохраняется после перезагрузки, при необходимости сделать перманентную настройку iptables.