39 votes

Comment CNAME vers Amazon API Gateway Endpoint

Je suis en train de définir un CNAME sur Cloudflare à point pour Amazon Passerelle API point de terminaison. L'enregistrement CNAME est pour une utilisation lorsque l'on se réfère à l'un de mes sous-domaines. La passerelle à tour des points à l'adresse IP d'un serveur sur DigitalOcean. Je suis très nouveau à Amazon web services et apprécierais si quelqu'un pourrait me donner un aperçu de la configuration correcte pour le DNS, Amazon Passerelle et Cloudfront (qui je pense est nécessaire pour exposer la passerelle vers les serveurs DNS externes pour Amazon). Toute aide serait grandement appréciée.

Mise à JOUR

J'ai été en passant à ce pour un certain temps maintenant, et ne pas faire beaucoup de progrès. Quelqu'un a une idée si c'est une approche viable ou sinon, comment il pourrait être fait?

UPDATE2

J'ai pensé que j'ai besoin d'ajouter l'enregistrement CNAME pour cloudFlare et juste fini dans une boucle de redirection, observé par:

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

38voto

BonsaiOak Points 5247

Il y a plusieurs raisons pour lesquelles il ne se complique pas simplement du point de Cloudflare à votre Passerelle API de domaine et l'appeler un jour:

  • La Passerelle API utilise d'hébergement partagé de sorte qu'il utilise le nom de domaine pour comprendre à quel API pour envoyer des demandes de. Il n'a aucun moyen de savoir qu' api.yourdomain.com appartient à votre API.
  • La Passerelle API requiert l'utilisation d' https, mais le certificat qu'il utilise est uniquement valable pour le domaine par défaut.

Il y a une solution, cependant. Voici les étapes que j'ai suivi quand j'ai récemment mis cela:

  1. Générer un certificat d'origine de la crypto onglet de la Cloudflare tableau de bord.
  2. Importer le certificat d'AWS gestionnaire de Certificats dans l' us-east-1 de la région, même si votre API est situé dans une région différente. Si vous êtes invité pour la chaîne de certificats, vous pouvez le copier à partir d' ici.
  3. Ajouter votre domaine personnalisé dans la Passerelle API console et sélectionnez le certificat que vous venez d'ajouter. Vérifier l'AWS support de l'article pour plus d'informations sur la façon de le faire.
  4. Cela prend habituellement environ 45 minutes pour le domaine personnalisé pour terminer l'initialisation. Une fois fait, il vous donnera une nouvelle Cloudfront URL. Aller de l'avant et assurez-vous que votre API travaille toujours à travers cette nouvelle URL.
  5. Aller à la Cloudflare onglet DNS et configuration d'un enregistrement CNAME pointant vers Cloudfront URL que vous venez de créer.
  6. Passer à la crypto onglet et de définir votre mode SSL "Plein (Strict)". Si vous ignorez cette étape, vous obtiendrez une boucle de redirection.

C'est tout. Profitez de votre nouveau très API disponibles servi à partir de votre domaine personnalisé!

22voto

Tyler Rafferty Points 191

Configurer Amazon de la Passerelle API de Domaine Personnalisé avec CloudFlare

  1. Dans AWS management console aller à la Passerelle API service et sélectionnez Custom Domain Names dans le menu de gauche.

  2. Cliquez sur l' Create bouton.

  3. Ouvrez une session dans CloudFlare, sélectionnez votre nom de domaine et d'ouvrir l' Crypto onglet

  4. Aller à l' SSL et de définir votre mode SSL "Plein (Strict)" pour éviter une boucle de redirection.

  5. Aller à l' Origin Certificates et cliquez sur Create Certificate

  6. Laissez CloudFlare générer une clé privée et d'un RSE et choisissez RSA comme la clé privée de type

  7. Assurez-vous que le nom d'hôte de votre API de domaine est couvert. (par exemple, api.mydomain.com. Vous pouvez configurer spécifiquement ce domaine personnalisé ou utiliser un caractère générique, tels que *.mydomain.com comme il est configuré par défaut.

  8. Choisissez PEM que le format de la clé qui est sélectionné par défaut.

  9. Dans AWS passer à la région US-EAST-1 et atteindre l' Certificate Manager.

  10. Cliquez sur Import a Certificate.

  11. Copiez le certificat du corps de votre CloudFlare certificat de Certificat de corps à la configuration du domaine personnalisé dans AWS Management Console.

  12. Copie de la clé Privée la clé privée du certificat de terrain dans la console

  13. Dans le certificat de la chaîne de copier le Cloudflare Origine CA - RSA Racine qui peut être trouvé ici.

  14. Saisissez votre nom de domaine personnalisé dans la console AWS et un nom pour votre certificat

  15. Maintenant, le nom de domaine personnalisé sera créé dans AWS CloudFront. Il peut prendre jusqu'à une heure avant que le domaine devient actif.

  16. La prochaine chose que vous devez faire est de configurer les mappages de domaine personnalisé dans la Console AWS.

  17. La dernière étape consiste à créer un nouveau CNAME Record dans CloudFlare pour relier votre domaine à la CloudFront url. Lorsque vous ouvrez la page des paramètres de votre domaine personnalisé dans la console AWS copie la Distribution de nom de domaine. C'est le domaine que vous devez utiliser lors de la création de la nouvelle - CNAME Record.

Source

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X