Установка сертификата SSL AWS на экземпляр EC2 без балансировщика нагрузки

Я новичок в AWS и столкнулся с некоторой путаницей с установкой сертификата SSL ACM на экземпляр EC2.

Можно ли установить сертификат без использования ELB или Cloudfront. Мне не нужен балансировщик нагрузки, потому что приложение работает на одном экземпляре.

Есть ли у меня другой вариант для установки сертификата SSL AWS? Если балансировщик нагрузки - единственный вариант, возможно ли это только для одного экземпляра?

Заранее благодарим за ответы

8
задан 31 December 2018 в 08:15
3 ответа

Сертификаты, полученные с помощью Amazon Certificate Manager (ACM), можно установить только на Elastic Load Balancer, CloudFront, API Gateway и других сервисах AWS. Их нельзя экспортировать или установить непосредственно в экземпляры EC2.

Если вы хотите установить сертификат SSL непосредственно на экземпляр EC2, вы не можете использовать ACM. Вместо этого вам нужно будет получить сертификат SSL от стороннего поставщика (например, Lets Encrypt, GoDaddy и т. Д.) И установить его, следуя инструкциям для вашего веб-сервера.

Размещение ELB на 100% действительно перед одним экземпляром EC2, особенно для того, чтобы позволить ELB управлять сертификатом SSL.

Другие преимущества использования ELB перед вашим экземпляром EC2:

  • Вы получите защиту AWS Shield (который обеспечивает некоторые уровни защиты от DDoS-атак),
  • Вы можете заменить экземпляр EC2 или увеличить масштаб. легко, если потребуется в будущем,
  • ELB будет обрабатывать шифрование / дешифрование HTTPS-соединений (освобождая CPU вашего экземпляра EC2 для выполнения другой работы)
8
ответ дан 2 December 2019 в 22:58

Вам нужно будет установить сертификат для любого серверного программного обеспечения, которое вы запускаете на своем экземпляре. например, apache, nginx, tomcat, nodejs. У каждого из них есть свой собственный механизм использования сертификатов. Прочтите их документацию.

Также, если у вас настроено разрешение DNS для общедоступного IP-адреса вашего экземпляра (убедитесь, что вы используете эластичный IP-адрес), вы можете использовать certbot от Let's encrypt для автоматизации этого процесса. проверьте https://certbot.eff.org/ . Он поддерживает несколько сред из коробки. и его бесплатные сертификаты ssl.

2
ответ дан 2 December 2019 в 22:58

Вы можете использовать такую ​​службу, как nip.io, которая действует как динамический DNS и перенаправляет все запросы с .nip.io на .

Затем вы можете использовать такой сервис, как Caddy, для настройки сертификатов TLS.

Вот как будет выглядеть ваша конфигурация, если ваше приложение работает на порту 3000.

<EC2 Public IP>.nip.io {
    reverse_proxy localhost:3000
}

После запуска Caddy вы сможете получить доступ к сайту по ссылке https://.nip .io

Я написал об этом статью: HTTPS на AWS EC2 без балансировщика нагрузки

1
ответ дан 17 August 2021 в 06:05

Теги

Похожие вопросы