Cours > Module > Chapitre

Lab : Accéder à S3 depuis un VPC privé à l’aide d’un VPC Endpoint

Objectif

Ce lab montre comment permettre à une instance EC2 située dans un VPC totalement privé (sans accès à Internet) d’accéder à Amazon S3 via un VPC Endpoint, sans utiliser d’Internet Gateway ni de NAT Gateway.

1. Création d’un VPC privé sans accès Internet

Dans la console AWS :

  • Accéder à VPC > Your VPCs > Create VPC
  • Créer un VPC sans connexion Internet :
    • Nom : VPC-private
    • CIDR : 10.0.0.0/16

🔹 Ce VPC n’aura ni Internet Gateway, ni NAT Gateway.

2. Création de subnets privés

Dans Subnets > Create Subnet, créer deux subnets privés dans le VPC :

VPC

Nom

CIDR

Availability Zone

VPC-Private

Private-Subnet-1

10.0.1.0/24

us-east-1a

VPC-Private

Private-Subnet-2

10.0.2.0/24

us-east-1b

🔹 Ces subnets n’ont pas d’accès Internet.

3. Création d’une table de routage privée

Dans Route Tables > Create Route Table :

  • Associer cette table de routage au VPC-Private
  • Aller dans Subnet Associations et attacher Private-Subnet-1 et Private-Subnet-2
  • Ne pas ajouter de route vers une Internet Gateway ni un NAT Gateway

🔹 Les instances dans ces subnets n’auront pas d’accès Internet.

4. Lancer une instance EC2 dans un subnet privé

Dans EC2 > Launch Instance :

  • Choisir Amazon Linux 2 ou Ubuntu
  • Placer l’instance dans Private-Subnet-1
  • Ne pas attribuer d’adresse IP publique
  • Security Group :
    • Autoriser SSH (port 22) depuis votre IP publique (si bastion host)
    • Autoriser HTTPS (port 443) pour permettre les requêtes S3

🔹 L’instance EC2 est totalement isolée et ne peut pas accéder à Internet.

5. Création d’un VPC Endpoint pour Amazon S3

Dans VPC > Endpoints > Create Endpoint :

  • Service Name : Sélectionner com.amazonaws.[region].s3
  • VPC : Sélectionner VPC-Private
  • Type : Gateway
  • Subnets : Sélectionner Private-Subnet-1 et Private-Subnet-2
  • Route Table : Associer la table de routage privée
  • Policy : Laisser sur Full Access (ou personnaliser)

🔹 Un VPC Endpoint Gateway est maintenant en place pour S3.

6. Vérification des routes

Dans Route Tables > Edit Routes, vérifier que la route suivante a été ajoutée automatiquement :

Destination

Target

pl-xxxxxxxx (S3 Prefix List)

VPC Endpoint ID

🔹 Cette route permet au VPC de communiquer avec S3 via le VPC Endpoint.

7. Accès à S3 depuis l’instance EC2

Se connecter à l’instance EC2 via SSH (depuis un bastion host si nécessaire) et tester l’accès à S3 :

Tester la connectivité à S3

				
					aws s3 ls s3://nom-du-bucket
				
			

Si l’accès fonctionne, l’instance EC2 peut lister les objets dans le bucket sans utiliser Internet.

Télécharger un fichier depuis S3

				
					aws s3 cp s3://nom-du-bucket/fichier.txt .
				
			

Vérifier que l’accès Internet est bien coupé

				
					curl -I https://google.com
				
			

🔹 L’accès à Internet échoue, mais l’instance peut toujours interagir avec S3.

Nettoyage des ressources

Si vous souhaitez supprimer les ressources créées :

  1. Détacher et supprimer le VPC Endpoint.
  2. Supprimer l’instance EC2.
  3. Supprimer les subnets privés.
  4. Supprimer la table de routage privée.
  5. Supprimer le VPC.

Aller plus loin

  • VPC Endpoint Interface vs Gateway : Comparer les deux types de VPC Endpoints.
  • IAM Policies pour restreindre l’accès : Configurer des politiques IAM pour restreindre l’accès à certains buckets.
  • VPC Endpoints pour d’autres services : Tester avec DynamoDB, Secrets Manager, ou SSM.
×

Panier