Подтвердить что ты не робот

Как CNAME для конечной точки шлюза API Amazon

Я пытаюсь установить CNAME на Cloudflare, чтобы указать конечную точку шлюза API Amazon. CNAME предназначен для использования при обращении к одному из моих поддоменов. Шлюз, в свою очередь, указывает на IP-адрес сервера на DigitalOcean. Я очень новичок в веб-сервисах Amazon и был бы признателен, если бы кто-нибудь мог дать мне обзор правильной конфигурации DNS, Amazon Gateway и Cloudfront (который, как мне кажется, необходим, чтобы открыть шлюз для DNS-серверов, внешних для Amazon). Любая помощь будет высоко оценена.

UPDATE

Я собираюсь на это какое-то время и не продвигаюсь вперед. Кто-нибудь есть идея, если это жизнеспособный подход или как еще это можно сделать?

UPDATE2

Я думал, что мне нужно добавить запись CNAME в cloudFlare и просто закончил цикл переадресации, наблюдаемый:

curl -L -i -v https://sub.mydomain.com/
4b9b3361

Ответ 1

Есть несколько причин, по которым он не работает, чтобы просто указать Cloudflare в вашем домене API-шлюза и назвать его днем:

  • API Gateway использует общий хостинг, поэтому он использует имя домена, чтобы выяснить, к какому API должен отправлять запросы. Он не знает, что api.yourdomain.com принадлежит вашему API.
  • API Gateway требует, чтобы вы использовали https, но сертификат, который он использует, действителен только для домена по умолчанию.

Однако есть решение. Вот шаги, которые я выполнил, когда я недавно установил это:

  • Сгенерируйте сертификат происхождения с вкладки crypto панели мониторинга Cloudflare.
  • Импортировать сертификат в диспетчер сертификатов AWS в регионе us-east-1, даже если ваш API находится в другом регионе. Если вам предлагается цепочка сертификатов, вы можете скопировать ее из здесь.
  • Добавьте свой собственный домен в консоль шлюза API и выберите только что добавленный сертификат. Подробнее о том, как это сделать, читайте в статье поддержки AWS .
  • Обычно пользовательский домен занимает около 45 минут для завершения инициализации. Как только это будет сделано, вы получите новый URL Cloudfront. Продолжайте и убедитесь, что ваш API по-прежнему работает через этот новый URL.
  • Перейдите на вкладку Cloudflare DNS и настройте запись CNAME, указывая на только что созданный URL-адрес Cloudfront.
  • Перейдите на вкладку crypto и установите для вашего режима SSL значение "Полный (Строгий)". Если вы пропустите этот шаг, вы получите цикл переадресации.

Что это. Наслаждайтесь новым высокодоступным API, доступным из вашего пользовательского домена!

Ответ 2

Настройка пользовательского домена шлюза API Amazon с CloudFlare

  • В консоли управления AWS перейдите в службу шлюза API и выберите Custom Domain Names в меню слева.

  • Нажмите кнопку Create.

  • Войдите в CloudFlare, выберите свой домен и откройте вкладку Crypto

  • Перейдите к SSL и установите для своего режима SSL значение "Полный (Строгий)", чтобы избежать цикла перенаправления.

  • Перейдите к Origin Certificates и нажмите Create Certificate

  • Пусть CloudFlare сгенерирует закрытый ключ и CSR и выбирает RSA как тип закрытого ключа

  • Убедитесь, что имя хоста для вашего настраиваемого домена API закрыто. (например, api.mydomain.com. Вы можете настроить этот настраиваемый домен или использовать подстановочный знак, такой как *.mydomain.com, который настроен по умолчанию.

  • Выберите PEM в качестве формата ключа, который по умолчанию выбран.

  • В AWS перейдите в область US-EAST-1 и перейдите в Certificate Manager.

  • Нажмите Import a Certificate.

  • Скопируйте тело сертификата из сертификата CloudFlare в тело сертификата в конфигурацию настраиваемого домена в консоли управления AWS.

  • Скопируйте секретный ключ в поле секретного ключа сертификата в консоли

  • В цепочке сертификатов скопируйте CloudFare Origin CA - RSA Root, который можно найти здесь.

  • Введите свое пользовательское доменное имя в консоли AWS и имя для своего сертификата

  • Теперь пользовательское доменное имя будет создано в AWS CloudFront. Запуск домена может занять до часа.

  • Следующее, что вам нужно сделать, - настроить сопоставления настраиваемого домена в консоли AWS.

  • Последний шаг - создать новый CNAME Record в CloudFlare, чтобы связать ваш домен с URL-адресом CloudFront. Когда вы открываете страницу настроек своего пользовательского домена в консоли AWS, скопируйте доменное имя Distribution. Это домен, который необходимо использовать при создании нового CNAME Record.

Источник