Настройка Apache SSL с балансировщиком нагрузки (DigitalOcean)

Настройка Apache SSL с балансировщиком нагрузки (DigitalOcean)

Возможно, я упускаю что-то действительно элементарное, но я уже некоторое время пытаюсь настроить сервер Apache (обслуживающий сайт WordPress) для SSL с балансировщиком нагрузки DigitalOcean.

Балансировщик нагрузки должен хранить сертификат и перенаправлять http-доступ на порту 80 на https 443, проблема в том, что Apache отвечает кодом 400 и этой строкой «\x16\x03\x01».

Согласно моему расследованию (я могу ошибаться, поправьте меня), это происходит потому, что Apache пытается выполнить SSL-рукопожатие, и для этого мне нужно включить директиву SSLEngine, но когда я это делаю, я получаю ошибку «Не удалось настроить хотя бы один сертификат и ключ для <my_domain>:443».

Думаю, я понимаю, что это происходит потому, что я не добавляю директивы SSLCertificateFile и SSLCertificateKeyFile. Я ожидал, что он прочитает сертификат из балансировщика нагрузки, но, по-видимому, этого не происходит, и я не вижу в документации Apache никаких директив, которые позволяли бы мне это сделать.

В Интернете много информации о настройке Apache в качестве обратного прокси-сервера, но мне не удалось найти ничего о подключении через прокси-сервер/балансировщик нагрузки.

Я ценю любую помощь, которую вы можете оказать. Я добавляю несколько снимков экрана, чтобы прояснить ситуацию.

Ошибка Apache
Конфигурация балансировщика нагрузки
Файл конфигурации SSL
Файл конфигурации по умолчанию

решение1

Мне удалось заставить это работать, добавив самоподписанный сертификат в Apache. Не уверен, является ли это лучшим или наиболее элегантным способом, но это единственный известный мне способ, который позволяет мне сохранять сертификат балансировщика для клиентов (что мне и нужно, поэтому я автоматически продлеваю его) и не настраивать его заново на сервере.

Насколько я понимаю, это не представляет проблемы безопасности, поскольку связь между LB и сервером происходит в VPC, и даже при использовании самоподписанного сертификата она все равно шифруется с помощью SSL.

Если у кого-то есть предложения по улучшению этого вопроса, они приветствуются. Я просто публикую это на случай, если это поможет кому-то в будущем.

Связанный контент