После обеспечения строгой транспортной безопасности на сервере он также принудительно вводит https в порт 8161 для activemq, что, конечно же, приводит к сбою.
Я выполнил следующие инструкции, чтобы включить https на консоли activemq на порту 8162, и он работает:
http://activemq.apache.org/web-console.html
Однако это также не удается, потому что hsts требует, чтобы сертификат был действительным, что означает то же самое, что и веб-сайт, а не сертификат snakeoil.
Как я могу использовать ту же форму конфигурации, которую я использую для apache или postfix при настройке ssl? У меня есть три файла:
SSLCertificateFile file.crt
SSLCertificateKeyFile file.key
SSLCertificateChainFile bundle.crt
И я хочу, чтобы activemq использовал эти три файла. Я искал онлайн-хранилище ключей и множество других вещей, но все они водили меня по кругу, рассказывая мне, как сгенерировать ключи, однако я не хочу создавать ключи или сертификаты, а использую то, что у меня уже есть.
Вам нужно будет создать хранилище ключей из имеющихся у вас файлов.
Объедините сертификат и закрытый ключ в файл .p12:
openssl pkcs12 -export -name MyAMQCert -in file.crt -inkey file.key -out combined.p12
Преобразуйте .p12 в хранилище ключей:
keytool -importkeystore -destkeystore myamqkeystore.ks -srckeystore combined.p12 -srcstoretype pkcs12 -alias MyAMQCert
Добавьте цепочку в хранилище ключей:
keytool -import -file bundle.crt -alias ChainBundle -keystore myamqkeystore.ks
Вам будет предложено создать пароли для хранилища ключей. Пароль также потребуется в вашей конфигурации ActiveMQ, ссылающейся на файл хранилища ключей.