2017-01-05 5 views
0

Ich habe eine Website, die auf ec2 Windows-Instanz ausgeführt wird. Ich möchte dies einem öffentlichen Endpunkt zugänglich machen, ohne einen Port in der ec2-Instanz zu öffnen. Nur ausgehende Verbindungen sind auf der ec2-Instanz zulässig.TCP-Relay-Funktionalität (wie Ngrok) in AWS

Wie kann ich eine Cloud-Ressource/Anwendung vor meiner Website einbinden, damit sie von jemandem im öffentlichen Internet aufgerufen werden kann? Was ich suche, ist eine tcp-Relay-Funktion, mit der ein Anruf vom öffentlichen Internet-Browser mit minimalem Aufwand auf meine lokale Website auf ec2 geleitet wird. Etwas wie das, was hier erklärt wird: https://serverfault.com/questions/760129/what-is-a-tcp-relay-and-when-is-it-used/760142

Kann jemand etwas vorschlagen? Oder wenn AWS eine solche Relay-Funktionalität nicht zur Verfügung stellt, kann etwas mit Websockets in AWS-iot getan werden?

Ich fand Ngrok als Drittanbieter-Tool, aber ich möchte nur an AWS-Optionen bleiben.

Antwort

0

Dies ist genau was ein Classic Elastic Load Balancer tut. Normalerweise gibt es mehr als eine Instanz (daher "Load Balancer"), aber das funktioniert genau so, wie Sie es mit nur einer Instanz beschreiben.

Der ELB ist global zugänglich und leitet den Datenverkehr an die Instanz weiter. Niemand verbindet sich direkt mit Ihrer Instanz.

Natürlich müssen Sie einen Port auf der Instanz für den ELB öffnen, um darauf zuzugreifen, aber Sie müssten das mit jeder "Relais" -Lösung machen. Dieser Zugriff kann nur auf den ELB selbst beschränkt sein.

+0

Aber sagen, Sie müssen einen Port (eingehende) auf der Website der Maschine öffnen. Aber ngrok benötigt so etwas nicht. Ich lese hier: http://stackoverflow.com/questions/23395129/how-does-grok-work-behind-a-firewall und es sieht aus wie Ngrok öffnet keinen Port. –