Accès à Amazon S3 à partir d'un sous-réseau VPC privé

12

Si j'ai un VPC en cours d'exécution et certains serveurs situés dans la partie privée de ce réseau qui effectuent un traitement backend en téléchargeant des fichiers depuis amazon s3, puis-je accéder à S3 en interne pour accéder à ces fichiers? Ou dois-je accéder à Internet public via NAT, télécharger des fichiers s3 via https et procéder de cette façon?

L'Internet
la source
Voir ma réponse à stackoverflow.com/questions/25539057/… pour une façon de le faire, bien que ma réponse se rapporte davantage à la configuration d'un compartiment S3 afin qu'il ne soit accessible QUE depuis un VPC spécifique, de sorte qu'il ne peut que partiellement répondre à votre question.
Eddie

Réponses:

29

Avec un nom d'utilisateur comme "Internet", je m'attendrais à ce que vous le sachiez. Mais puisque vous avez demandé ...

:)

Les VPC sont vraiment privés. Seul le trafic que vous autorisez explicitement peut transiter par les frontières du VPC.

Ainsi, à l'intérieur d'un VPC, les instances nécessitant un accès aux ressources externes doivent soit se voir attribuer un EIP (auquel cas elles peuvent accéder aux ressources externes à l'aide de l'infrastructure AWS), soit vous devez fournir un hôte NAT (auquel cas toutes les sorties de trafic le VPC via votre propre NAT).

Si vous choisissez de fournir votre propre hôte NAT, n'oubliez pas que vous devrez désactiver la vérification source / dest sur cette instance ainsi que l'ajout d'une route par défaut à votre sous-réseau privé, pointant vers l'hôte NAT.

MISE À JOUR (10/05/2015): Depuis le 11 mai 2015, AWS a publié un "VPC Endpoint" pour S3 , qui permet d'accéder à S3 directement à partir d'un VPC sans avoir à passer par un hôte proxy ou une instance NAT. Heureusement par respect pour la nature vraiment privée de VPC, cette fonctionnalité est désactivée par défaut, mais peut être facilement activée à l'aide de la console AWS ou via leur API.

EEAA
la source
Et le contrôle d'accès? Lorsque le trafic passe par l'instance NAT, comment fonctionnent les stratégies de compartiment S3 (comme l'origine est NATted, comment S3 peut-il savoir quel rôle ou utilisateur demande les données)?
Tuukka Mustonen
@TuukkaMustonen La seule préoccupation est que vous ayez des politiques basées sur l'IP source. Dans ce cas, vous devrez utiliser l'adresse IP publique de l'instance NAT comme adresse IP source.
filipenf
2

Si votre instance se trouve dans le sous-réseau public de VPC, alors:

  • Soit vous devez avoir une adresse IP publique attribuée à votre instance
  • OU vous devriez avoir une IP élastique assignée à votre instance

Si votre instance se trouve dans un sous-réseau privé de VPC, alors:

  • Vous devez avoir un périphérique NAT fonctionnant dans un sous-réseau public. Pour que l'instance dans le sous-réseau privé de VPC puisse accéder à Internet via NAT et accéder à S3. Vous pouvez utiliser AWS VPC NAT ou vous pouvez configurer le vôtre (Google pour cela au cas où vous voudriez configurer votre propre NAT)

En résumé, pour accéder à S3, vous devez pouvoir accéder à Internet.

slayedbylucifer
la source
Pour info: selon ma mise à jour ci-dessus, l'accès à Internet n'est plus nécessaire.
EEAA
-3

Vous n'êtes pas obligé de "sortir" et de revenir "en" ou de modifier quoi que ce soit sur la façon dont vous transférez les données dans les régions AWS. Pas de frais pour un transfert depuis / vers des seaux dans la même région . Vous devez payer pour le stockage.

quadruplebucky
la source
Cela ne répond pas à la question du PO.
EEAA
Il n'est pas clair qu'il fasse référence à un réseau en dehors d'AWS. Merci pour le dv!
quadruplebucky
Vous manquez le point. Il a des instances EC2 dans un sous-réseau VPC privé. Par défaut, ceux-ci n'ont accès à rien en dehors de ce VPC. Ainsi, comme je l'ai indiqué dans ma réponse, il devra prendre l'une des deux options pour leur donner accès à S3. Cela n'a rien à voir avec le fait que les réseaux soient à l'intérieur ou à l'extérieur d'AWS, mais plutôt à accéder à l'extérieur de son VPC.
EEAA
@quadruplebucky, je précise que j'accède à "l'Internet public" pour obtenir des fichiers via HTTPS.
Internet
Je vais me prosterner ici, je n'ai pas de chien dans ce combat. L'EEAA a répondu à votre question. Vous payez si vous traversez des régions.
quadruplebucky