Я новичок в установке сертификатов и в самом AWS в целом. Теперь в моей текущей инфраструктуре у меня есть 3 ELB, которые находятся в VPC.
Я купил ssl-сертификат с подстановочными знаками от COMODO через Big Rock.
Я хочу, чтобы вся связь между моими ELB и внешним миром была через HTTPS.
Прошу прощения за мое незнание по этому поводу.
Я хочу, чтобы вся связь между моими ELB и внешним миром была через HTTPS. Как я могу этого добиться?
Полное отключение обычного HTTP обычно недоступно, но вы можете настроить ваши веб-серверы на (навсегда) перенаправление любого незашифрованного запроса от http://...
к https://...
Могу ли я установить один сертификат wild card, который у меня есть на всех трех ELB?
Нет никакой технической причины, по которой вы не могли бы.
Кроме того, поскольку у меня есть сертификат wild card, я не смогу использовать его для
api.example.com
но не дляexample.com
сам (в моем понимании).
Однако то, что видно внешнему миру,example.com
пока (и не совсемapi.example.com
) Так что мне нужно покупать другой сертификат для вышеупомянутого сценария?
Да, подстановочный знак для *.example.com
действительно только для <valid_hostnames>.example.com
и ни для простого / голого example.com
ни *.*.example.com
буду работать. Видеть этот вопрос и ответ для подробностей.
Технически можно также включить простой домен с подстановочным сертификатом через расширение альтернативного имени субъекта, что сделает сертификат действительным для обоих *.example.com
и example.com
но какие реселлеры SSL делают это автоматически, я не знаю. Таким образом, вам может вообще не понадобиться другой (заменяющий) сертификат.
Вы можете проверить с openssl x509 -in certificate.crt -text -noout
что даст что-то похожее на то, что при наличии SubjectAltNames:
Certificate:
Data:
Version: 3 (0x2)
Serial Number:
....
Subject: ..., CN=*.example.com
...
X509v3 extensions:
...
X509v3 Subject Alternative Name:
DNS:*.example.com, DNS:example.com
Если это не так, вам может потребоваться другой сертификат, чтобы иметь возможность использовать пустой домен в дополнение к вашему текущему подстановочному знаку. Индикация имени сервера (SNI) - это то, что потребуется для использования двух разных SSL-сертификатов и правильной работы с одним экземпляром ELB.
К сожалению, как указано в продукте Elastic Load Balancing документация Что касается HTTPS:
Elastic Load Balancing делает не поддерживает указание имени сервера (SNI) на балансировщике нагрузки.
Так что два сертификата на один ELB - это недопустимо.
Какой тип сертификата (я читал о сертификатах UCC SSL здесь) мне следует использовать, учитывая, что у меня также есть
example.in
как домен, где размещен тот же сайт.
Продукт ELB документация дает две стратегии:
Купите один мультидоменный сертификат с альтернативным именем субъекта (SAN) для каждого дополнительного домена (иногда называемый сертификатом унифицированных коммуникаций (UCC), а не сертификатом SAN) и используйте его в ELB.
Используйте прослушиватели TCP на порту 443 для внешних и внутренних подключений. Балансировщик нагрузки передает запрос, и вы обрабатываете завершение HTTPS из экземпляра EC2 с помощью веб-сервера, который поддерживает SNI.
Если сертификат SSL с подстановочными знаками выдан для * .example.com, вы можете защитить example.com, api.example.com и любые другие поддомены с помощью одного сертификата SSL с подстановочными знаками. Comodo Wildcard SSL предлагает неограниченное количество лицензий на сервер, и вам следует установить сертификат на все 3 ELB, чтобы настроить безопасную среду на своих поддоменах.
Если вы хотите защитить разные доменные имена, которые ссылаются на разные TLD, такие как example.com, example.in и example.anytld, вам следует использовать сертификат UCC SSL. Вы можете добавлять или редактировать альтернативные имена субъектов (SAN) в любое время в течение срока действия сертификата.
Если ваше требование заключается в защите нескольких веб-сайтов и всех их субдоменов, вы можете использовать Comodo Multi Domain Wildcard SSL.