Я новичок в установке сертификатов и самого AWS в целом. Теперь в моей текущей инфраструктуре у меня есть 3 ELB, которые находятся в VPC.
Я приобрел ssl-сертификат с подстановочными знаками у COMODO через Big Rock.
Я хочу, чтобы вся связь между моими ELB и внешним миром была через HTTPS. три ELB?
Прошу простить меня за незнание по этому поводу.
Я хочу, чтобы все коммуникации между моими ELB и внешним миром осуществлялись через HTTPS. Как я могу этого добиться?
Полное отключение обычного HTTP обычно не предусмотрено, но вы можете настроить ваши веб-серверы на (навсегда) перенаправление любого незашифрованного запроса с http: // ...
на https: // ...
Могу ли я установить один имеющийся у меня сертификат подстановки на все три ELB?
Нет никаких технических причин, по которым вы не могли этого сделать.
Кроме того, поскольку у меня есть сертификат подстановки,Я не смогу использовать его для
api.example.com
, но не для самогоexample.com
(насколько я понимаю).
Однако то, что видно внешнему миру, - этоexample.com
на данный момент (а не совсемapi.example.com
). Нужно ли мне приобретать еще один сертификат для описанного выше сценария?
Да, подстановочный знак для *. Example.com
действителен только для
и ни для простого / голого example.com
и *. *. Example.com
не будут работать. См. этот Q&A для подробностей.
Технически можно также включить простой домен с подстановочным сертификатом через расширение альтернативного имени субъекта, что сделает сертификат действительным как для *. 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 .