Как добавить SSL-сертификат и сделать сайт HTTPS в облаке AWS? - PullRequest
0 голосов
/ 26 августа 2018

Я установил сайт WordPress только на 1 экземпляр EC2, который работает на 1AZ (означает 1 общедоступную подсеть). Я также купил домен по маршруту 53. В настоящее время мой сайт работает только по протоколу HTTP, и я хочу сделать его HTTPS. Я также получил сертификат SSL от менеджера сертификатов AWS. Используя Маршрут 53, в настоящее время я сопоставил сопоставление записи IP V4 с моим публичным IP-адресом V4 экземпляра EC2. Здесь я сталкиваюсь с проблемой изменения моего сайта на HTTPS с текущего HTTP. Поскольку мой сайт развернут всего в 1 AZ (общедоступная подсеть), я не могу добавить Elastic Load Balancer перед моим экземпляром EC2, так как для этого требуется минимум 2 общедоступных подсети (это мое понимание). Если бы моя сторона была развернута на 2 AZ (2 общедоступных подсети), то я бы легко настроил Application Load Balancer с этими 2 подсетями и использовал бы сертификат SSL, который хранится в диспетчере сертификатов AWS, но в моем случае это всего 1 AZ /. 1subnet.

Вопрос 1) Необходимо ли иметь 2 общедоступных подсети для настройки эластичного балансировщика нагрузки? Не могу ли я настроить балансировщик нагрузки только с одной подсетью, как в моем случае? Если да, то, пожалуйста, посоветуйте, как это сделать?

Вопрос 2) Действительно ли необходим балансировщик нагрузки между маршрутом 53 и экземпляром EC2, чтобы сделать сайт HTTPS? Могу ли я настроить Route 53 и SSL-сертификат для непосредственного прослушивания экземпляра EC2 и создания сайта HTTPS?

Пожалуйста, помогите здесь сделать мой сайт HTTPS. Спасибо

Ответы [ 2 ]

0 голосов
/ 26 августа 2018

Позвольте мне ответить на встроенные вопросы.

Вопрос 1) Нужно ли иметь 2 общедоступных подсети для настройки? балансировщик эластичной нагрузки? Я не могу настроить балансировщик нагрузки только с 1 подсеть как в моём случае? Если да, то, пожалуйста, посоветуйте, как это сделать?

Да. Вы должны указать подсети как минимум из двух зон доступности, чтобы увеличить доступность своего балансировщика нагрузки. Вот почему вам нужно как минимум две подсети (минимум одна подсеть в каждой зоне доступности). При запуске экземпляров EC2 рекомендуется также запускать их в обеих зонах доступности (для балансировки нагрузки) с автоматическим масштабированием для обеспечения высокой доступности и отказоустойчивости.

Вопрос 2) Действительно ли необходим балансировщик нагрузки между маршрутом 53 и EC2 экземпляр сделать на сайте HTTPS? Могу ли я настроить Route 53 и SSL сертификат для прослушивания экземпляра EC2 напрямую и создания сайта HTTPS

Это необходимо, если вы используете сертификаты SSL, выданные Amazon Certificate Manager (ACM). В противном случае, если вы используете приобретенный извне SSL-сертификат, вы можете настроить SSL-сертификат на уровне веб-сервера вашего экземпляра EC2.

Примечание. Альтернативный подход заключается в использовании AWS CloudFront в качестве прокси-сервера (также для SSL-терминации с использованием сертификата ACM) и прокси-запросов к экземпляру EC2 (если вы не хотите платить за балансировщик нагрузки, когда затраты CloudFront составляют на основе количества запросов, в отличие от почасовой оплаты за балансировщик нагрузки).

0 голосов
/ 26 августа 2018
  • 1) Да, для ELB требуются две подсети, но вам не нужно иметь сервер, работающий в обеих подсетях (но, очевидно, вы не получаете выгоды / стоимости от двух серверов). В AWS перейдите в раздел VPC и создайте новую подсеть внутри правильного VPC - тогда вы сможете создать ELB (он может жаловаться на 2-ю подсеть - но если в этой подсети нет экземпляров, это на самом деле не имеет значения).

  • 2) Нет, но если вы хотите использовать бесплатный сертификат ACM, его необходимо установить на уровне распределения Load Balencer или CloudFront. Ничто не мешает вам установить собственный сертификат на EC2, настроить Apache для его использования и затем обновить его по мере необходимости. Посмотрите на LetsEncrypt для бесплатных сертификатов, или купить сертификат онлайн.

Несколько вещей, о которых следует помнить:

  • «Лучшая практика» для TLS / HTTPS постоянно меняется. AWS избавляет от головной боли, предоставляя политики, поэтому обновление до новейшего стандарта очень простое и не требует никаких изменений в вашем ec2 (так как он общается с ELB через порт 80)
  • Если вы решили управлять своим собственным сертификатом, взгляните на тестер сертификатов SSL Labs (https://www.ssllabs.com/ssltest/), чтобы убедиться, что ваша конфигурация верна.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...