Connexion d’AWS API Gateway à partir d’un environnement non AWS à l’aide d’un canal de communication privé
Qu’est-ce que la passerelle API
Une passerelle API est un outil de gestion d’API entre un client et un ensemble de services backend. Une passerelle API agit comme un proxy inverse pour accepter tous les appels d’interface de programmation d’application (API), regrouper les services requis pour les exécuter et renvoyer le résultat approprié.
Énoncé du problème
Comment accéder à une URL de point de terminaison d’API privée hébergée sur AWS à partir d’un client hébergé dans un environnement non AWS ?
Solution
Créez une connexion Site-to-Site VPN entre l’environnement sur site/autre cloud (par exemple, Azure) et AWS et configurez les tunnels entre eux.
Étapes pour créer une connexion VPN de site à site
(Prendre référence d’Azure en tant qu’environnement non AWS)
- Créer une passerelle de réseau virtuel Azure
Cela doit être fait par l’équipe Azure (côté client/demandeur) et notez l’adresse IP publique qui est utilisée lors de l’exécution de cette étape.
- Créer des passerelles client AWS
Lors de la création de la passerelle client AWS, mettez l’adresse IP qui a été copiée à l’étape 1 dans le champ en surbrillance ci-dessous.
- Créer une passerelle privée virtuelle AWS
Créer AWS Virtual Private Gateway et l’attacher au VPC
- Créer des connexions VPN de site à site AWS
Entrez les détails dans les champs demandés :
- Le type de passerelle cible doit être une passerelle privée virtuelle, comme sélectionné dans l’image ci-dessus.
- Choisissez la passerelle privée virtuelle créée à l’étape ci-dessus.
- Choisissez la passerelle client créée à l’étape ci-dessus.
- Choisissez les options de routage comme statiques et entrez les adresses IP.
- Placez les valeurs dans le CIDR du réseau IPv4 local et distant.
- Mettez à jour ultérieurement les configurations de tunnel pour les deux tunnels, comme la saisie de la clé pré-partagée utilisée côté client, la sélection des algorithmes pris en charge par le client et le serveur, la possibilité de conserver les autres valeurs par défaut et l’activation de la journalisation si nécessaire.
- Une fois les tunnels créés, partagez les adresses IP externes des tunnels avec l’équipe Azure afin qu’ils puissent les configurer dans les passerelles de réseau local Azure.
- L’étape suivante consiste à créer des connexions Azure. Lors de la création de connexions, veuillez mettre des configurations similaires qui ont été utilisées lors de la création de tunnels côté AWS à l’étape ci-dessus.
Une fois la configuration effectuée correctement, Status sera connecté à la fois à AWS et à Azure.
- Ajoutez une table de routage VPN au sous-réseau de machine virtuelle AWS. Cette étape redirigera tout le trafic du sous-réseau de la machine virtuelle AWS vers le réseau Azure via VPN en configurant la table de routage AWS.
- Ajoutez des routes dans la table de routage.
Après les étapes ci-dessus, les tunnels doivent être établis entre Azure et AWS.
Remarque : Les deux tunnels doivent être UP afin de fournir une haute disponibilité.
Plan de mise en œuvre de la connectivité à partir d’un environnement non AWS
Étapes pour connecter l’URL du point de terminaison de l’API privée AWS à partir d’Azure
- Créer une passerelle de réseau virtuel Azure (prend environ 30 à 45 minutes)
- Créer des passerelles client AWS
- Créer des passerelles privées virtuelles AWS
- Créer des connexions VPN de site à site AWS
- Créer des passerelles de réseau local Azure
- Créer des connexions Azure
- Ajouter une table de routage VPN au sous-réseau de machine virtuelle AWS
Conditions préalables:
- La connexion Site-to-Site VPN doit être établie entre Azure et l’environnement AWS, et les tunnels doivent être opérationnels.
- Les adresses IP source doivent être autorisées sur les routes statiques dans le VPN, les tables de routage associées au VPC et le WAF si le WAF est utilisé.
- Le point de terminaison de VPC est créé pour accéder et appeler le service d’API.
Étapes pour connecter l’URL du point de terminaison de l’API privée AWS à partir de On Premise / DC
- Le client appelle l’URL du point de terminaison de l’API privée (par exemple, GET https://abc123.execute-api.eu-west-1.amazonaws.com/prod)
- Le client demande au serveur DNS sur site de résoudre ce problème (abc123.execute-api.eu-west-1.amazonaws.com).
- Vous devez configurer le serveur DNS sur site pour transférer les requêtes DNS pour les domaines hébergés par AWS vers les adresses IP du point de terminaison du résolveur entrant.
- Une fois que le client a résolu avec succès le nom DNS privé de la passerelle API, il reçoit l’adresse IP privée du point de terminaison VPC de la passerelle API.
Conditions préalables:
- La connexion Site-to-Site VPN doit être établie entre l’environnement DC et AWS, et les tunnels doivent être opérationnels.
- Les adresses IP source doivent être autorisées sur les routes statiques dans le VPN, les tables de routage associées au VPC et sur le WAF si le WAF est utilisé.
- Le point de terminaison d’un VPC est créé pour accéder et appeler le service d’API
Conclusion
Ce blog explique comment connecter AWS API Gateway à partir d’un environnement non AWS tel que On-Premise/DC ou à partir d’Azure à l’aide de points de terminaison VPC sur un réseau privé avec toutes les mesures de sécurité à différentes couches de sécurité. Les avantages de l’utilisation de la passerelle API sur un réseau privé sont qu’elle réduit la surface d’attaque et diminue la latence du réseau.
Source link