0

AWS Client VPN Endpoints et IP Publique fixe

twitterlinkedinmail

Comment obtenir une IP Publique fixe pour un Client VPN point à site (Client VPN Endpoints) pour accéder à Internet ?

 

I] Introduction:

Migrer entièrement son système d’information dans le cloud AWS peut prendre un certain temps, et même être impossible pour diverses raisons (amortissement du matériel sur site toujours en cours, contraintes techniques, coûts de migration trop élevés etc). C’est pourquoi beaucoup d’entreprises choisissent de fonctionner en mode hybride, à savoir déporter une partie de leurs services dans le cloud et conserver les autres sur site (=On Premise).

A l’heure d’aujourd’hui où le télétravail occupe une vraie place au sein de l’entreprise, il peut vite devenir contraignant d’avoir à gérer différents flux entre le domicile des collaborateurs, le site de l’entreprise et l’environnement AWS. C’est pourquoi il peut être intéressant de monter un tunnel VPN point à site entre les collaborateurs et AWS et n’autoriser l’accès On premise qu’uniquement depuis l’environnement AWS qui est connu et maitrisé.

 

II] Contexte:

Dans notre cas un collaborateur cherche à se connecter à son serveur applicatif situé dans l’environnement On premise depuis son domicile. Il va alors lancer son client Open VPN qui se charge de monter un tunnel VPN entre sa machine et le endpoint AWS (=Point à site). A noter qu’il n’est pas obligatoire de filtrer au niveau de l’adresse IP source car les collaborateurs peuvent être n’importe où. La sécurité se fera alors au niveau de l’authentification par certificat / active directory.

 

III] Prérequis:

  • 1 VPC
  • 1 Sous réseau Publique
  • 1 Sous réseau Prive
  • 1 Nat Gateway
  • 1 elastic IP
  • 1 point de terminaison VPN Client

 

III] Schéma:

 

Dans notre cas il faut donc veiller à positionner le point de terminaison VPN client sur un sous réseau privé qui dispose dans sa table de routage d’une route 0.0.0.0/0 à destination d’une NAT Gateway sur laquelle nous avons affecté une IP Elastic (= IP Fixe).

Une fois connecté le client VPN recevra une route à destination du serveur applicatif pour rediriger le trafic correspondant dans le tunnel VPN (Ajout d’un acheminement dans table de routage sur le point de terminaison VPN client), et devra pouvoir ressortir sur internet (Ajout d’une règle d’autorisation toujours sur le point de terminaison VPN Client).

 

Table de routage du point de terminaison VPN Client

 

Règles d’autorisation du point de terminaison VPN Client

 

Ensuite il n’y a plus qu’à configurer le firewall du côté de notre serveur On Premise pour n’autoriser que le trafic en provenance de notre NAT Gateway (dans notre exemple 53.49.35.12).

Attention ici l’erreur consisterai à positionner le point de terminaison VPN client sur un subnet public. Les clients connectés à ce endpoint se verraient alors sortir sur internet via une IP Publique non fixe…

 

III] Conclusion:

Il s’agit ici d’une solution simple à mettre en œuvre afin de permettre l’accès à des utilisateurs itinérants aux ressources AWS ainsi qu’aux ressources sur site sans multiplier les serveurs VPN tout en évitant d’ouvrir des flux trop permissifs (=0.0.0.0/.0 en IP Source…)
A noter qu’il ne s’agit que d’un exemple d’application concernant l’intérêt d’avoir une IP Fixe publique et que tout trafic situé entre la NAT Gateway et le serveur On Premise devra être fait via des protocoles sécurisé (ex: SSL, TTL, HTTPS) pour des raisons évidentes de sécurité car hors tunnel VPN. Dans les faits on préconise souvent de mettre en place un VPN site à site entre l’environnement On Premise et AWS, mais on peut très bien imaginer qu’il s’agisse d’un serveur publique isolé quelque part accessible via une IP reconnue…

 

 

Documentations diverses:

https://docs.aws.amazon.com/vpn/latest/clientvpn-admin/what-is.html
https://docs.aws.amazon.com/vpn/latest/clientvpn-admin/cvpn-working-endpoints.html

 

Continuez votre lecture sur le blog :

twitterlinkedinmail

Louis PROU

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.