Zugriff auf Amazon S3 über ein privates VPC-Subnetz


11

Kann ich intern auf S3 zugreifen, um auf diese Dateien zuzugreifen, wenn eine VPC ausgeführt wird und sich einige Server im privaten Bereich dieses Netzwerks befinden, die die Backend-Verarbeitung durch Herunterladen von Dateien von Amazon S3 durchführen? Oder muss ich über NAT auf das öffentliche Internet zugreifen, S3-Dateien über https herunterladen und auf diese Weise verarbeiten?


Eine Möglichkeit hierfür finden Sie in meiner Antwort auf stackoverflow.com/questions/25539057/…. Meine Antwort bezieht sich jedoch eher auf die Einrichtung eines S3-Buckets, sodass NUR von einer bestimmten VPC aus darauf zugegriffen werden kann, sodass Ihre Antwort möglicherweise nur teilweise erfolgt Frage.
Eddie

Antworten:


28

Mit einem Benutzernamen wie "The Internet" würde ich erwarten, dass Sie dies wissen. Aber seit du gefragt hast ...

:) :)

VPCs sind wirklich privat. Nur Datenverkehr, den Sie ausdrücklich zulassen, kann die Grenzen der VPC überschreiten.

Innerhalb einer VPC muss Instanzen, die Zugriff auf externe Ressourcen benötigen, entweder eine EIP zugewiesen werden (in diesem Fall können sie über die AWS-Infrastruktur auf externe Ressourcen zugreifen), oder Sie müssen einen NAT-Host bereitstellen (in diesem Fall tritt der gesamte Datenverkehr aus die VPC über Ihr eigenes NAT).

Wenn Sie sich für die Bereitstellung Ihres eigenen NAT-Hosts entscheiden, müssen Sie die Quell- / Zielprüfung für diese Instanz deaktivieren und Ihrem privaten Subnetz eine Standardroute hinzufügen, die auf den NAT-Host verweist.

UPDATE (10.05.2015): Ab dem 11. Mai 2015 hat AWS einen "VPC-Endpunkt" für S3 veröffentlicht , der den direkten Zugriff auf S3 von einer VPC aus ermöglicht, ohne einen Proxy-Host oder eine NAT-Instanz durchlaufen zu müssen. Zum Glück ist diese Funktion aus Respekt vor der wirklich privaten Natur von VPC standardmäßig deaktiviert, kann jedoch einfach über die AWS-Konsole oder über deren API aktiviert werden.


Wie wäre es mit Zugangskontrolle? Wie funktionieren S3-Bucket-Richtlinien, wenn der Datenverkehr über eine NAT-Instanz eingeht (da der Ursprung NATted ist, wie kann S3 wissen, welche Rolle oder welcher Benutzer die Daten anfordert)?
Tuukka Mustonen

@ TuukkaMustonen Das einzige Problem ist, wenn Sie Richtlinien haben, die auf der Quell-IP basieren. In diesem Fall müssen Sie die öffentliche IP-Adresse der NAT-Instanz als Quell-IP verwenden.
Filipf

2

Wenn sich Ihre Instanz im öffentlichen Subnetz von VPC befindet, gehen Sie wie folgt vor:

  • Entweder sollte Ihrer Instanz eine öffentliche IP-Adresse zugewiesen sein
  • ODER Sie sollten Ihrer Instanz eine elastische IP zugewiesen haben

Wenn sich Ihre Instanz in einem privaten Subnetz von VPC befindet, gilt Folgendes:

  • Sie müssen ein NAT-Gerät im öffentlichen Subnetz haben. Damit die Instanz im privaten Subnetz von VPC über NAT auf das Internet und auf S3 zugreifen kann. Sie können AWS VPC NAT verwenden oder Ihr eigenes NAT konfigurieren (google dies, falls Sie Ihr eigenes NAT einrichten möchten).

Fazit: Um auf S3 zugreifen zu können, müssen Sie auf das Internet zugreifen können.


Zu Ihrer Information: Gemäß meinem obigen Update ist kein Internetzugang mehr erforderlich.
EEAA


-3

Sie müssen nicht "raus" und "rein" gehen oder etwas an der Art und Weise ändern, wie Sie Daten innerhalb von AWS-Regionen übertragen. Keine Gebühr für einen Transfer zu / von Eimern in derselben Region . Sie müssen für die Lagerung bezahlen.


Dies beantwortet nicht die Frage des OP.
EEAA

Es ist nicht klar, dass er sich auf ein Netzwerk außerhalb von AWS bezieht. Danke für den dv!
Quadruplebucky

Sie verpassen den Punkt. Er hat EC2-Instanzen in einem privaten VPC-Subnetz. Standardmäßig haben diese keinen Zugriff auf etwas außerhalb dieser VPC. Wie ich in meiner Antwort angegeben habe, muss er eine von zwei Optionen wählen, um ihnen Zugriff auf S3 zu gewähren. Es hat nichts damit zu tun, ob sich Netzwerke innerhalb oder außerhalb von AWS befinden oder nicht, sondern mit dem Zugriff außerhalb seiner VPC.
EEAA

@quadruplebucky, ich mache deutlich, dass ich auf das "öffentliche Internet" zugreife, um Dateien über HTTPS zu erhalten.
Das Internet

Ich werde mich hier rausbeugen, ich habe keinen Hund in diesem Kampf. Die EEAA hat Ihre Frage beantwortet. Sie zahlen, wenn Sie Regionen überqueren.
Quadruplebucky
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.