Diese Website wurde größtenteils automatisch von der englischen Version übersetzt. Wir
entschuldigen uns für eventuelle Übersetzungsfehler.
x
Der Hyper-TLS-Durchgangs-Proxy
Der Hyper-Server bietet einen TLS-Passthrough-Proxy-Dienst, der
eingehende TLS-Verbindungen von öffentlichen Clients an einen
internen Server weiterleiten kann, ohne die TLS-Verbindung zu
beenden. Der Dienst besteht aus zwei Servern:
Ein öffentlicher Proxy, der auf einem
öffentlich zugänglichen TCP-Port auf eingehende TLS-Verbindungen
lauscht und auf einem anderen TCP-Port auf Verbindungen von
privaten Proxy-Servern.
Ein privater Proxy, der auf keinem TCP-Port
lauscht und sich stattdessen aktiv mit dem öffentlichen
Proxy-Server verbindet, wenn eine Verbindung für ihn verfügbar ist.
Er leitet diese Verbindung (wiederum ohne TLS zu beenden) an einen
internen Server weiter, der sie dann bearbeitet.
Sowohl die privaten als auch die öffentlichen Proxys haben
zugehörige Hyper-Server, über die sie miteinander
kommunizieren.
Der private Proxy kann eingehende Verbindungen an den
öffentlichen Proxy melden. Immer wenn eine neue
Verbindung den Proxy erreicht, vergleicht er sie mit den
empfangenen Ankündigungen. Wenn eine Übereinstimmung gefunden wird,
benachrichtigt er den privaten Proxy über eine eingehende
Verbindung über das Hyper-Netzwerk und sendet ihm außerdem ein
zufälliges Token. Der private Proxy öffnet eine Verbindung zum
öffentlichen Proxy, sendet das Token und übernimmt den TCP-Stream.
Er leitet ihn an einen internen Server weiter.
Demo
Um diesen Mechanismus zu demonstrieren, haben wir eine
Beispielkonfiguration vorbereitet. Führen Sie einfach die folgenden
Schnipsel in verschiedenen Terminals aus (aus dem Hauptverzeichnis
im Repository):
# prepare the binaries
make&&makeexamples
# first terminal
internal-server#will open a JSON-RPC server on port 8888# second terminal (public proxy)PROXY_SETTINGS=settings/dev/roles/public-proxy-1proxyrunpublic
# third terminal (private proxy)PROXY_SETTINGS=settings/dev/roles/private-proxy-1proxyrunprivate
# fourth terminal (public proxy Hyper server)HYPER_SETTINGS=settings/dev/roles/public-proxy-hyper-1hyperserverrun
# fifth terminal (private proxy Hyper server)HYPER_SETTINGS=settings/dev/roles/private-proxy-hyper-1hyperserverrun
Wenn alle Dienste laufen, sollten Sie in der Lage sein, eine
Anfrage an den Proxy zu senden über
Die von Ihnen gesendete Anfrage hat den lokalen TLS-Server an
Port 8888 über die beiden Proxys erreicht, die über das
Hyper-Netzwerk kommuniziert haben, um die Verbindung zu vermitteln.
Toll, nicht wahr?
Stresstest
Sie können den Server auch einem Stresstest mit parallelen
Anfragen unterziehen, indem Sie den parallel
verwenden:
Der Hyper-TLS-Durchgangs-Proxy
Der Hyper-Server bietet einen TLS-Passthrough-Proxy-Dienst, der eingehende TLS-Verbindungen von öffentlichen Clients an einen internen Server weiterleiten kann, ohne die TLS-Verbindung zu beenden. Der Dienst besteht aus zwei Servern:
Sowohl die privaten als auch die öffentlichen Proxys haben zugehörige Hyper-Server, über die sie miteinander kommunizieren.
Der private Proxy kann eingehende Verbindungen an den öffentlichen Proxy melden. Immer wenn eine neue Verbindung den Proxy erreicht, vergleicht er sie mit den empfangenen Ankündigungen. Wenn eine Übereinstimmung gefunden wird, benachrichtigt er den privaten Proxy über eine eingehende Verbindung über das Hyper-Netzwerk und sendet ihm außerdem ein zufälliges Token. Der private Proxy öffnet eine Verbindung zum öffentlichen Proxy, sendet das Token und übernimmt den TCP-Stream. Er leitet ihn an einen internen Server weiter.
Demo
Um diesen Mechanismus zu demonstrieren, haben wir eine Beispielkonfiguration vorbereitet. Führen Sie einfach die folgenden Schnipsel in verschiedenen Terminals aus (aus dem Hauptverzeichnis im Repository):
Wenn alle Dienste laufen, sollten Sie in der Lage sein, eine Anfrage an den Proxy zu senden über
Dies sollte die folgenden JSON-Daten zurückgeben:
Die von Ihnen gesendete Anfrage hat den lokalen TLS-Server an Port 8888 über die beiden Proxys erreicht, die über das Hyper-Netzwerk kommuniziert haben, um die Verbindung zu vermitteln. Toll, nicht wahr?
Stresstest
Sie können den Server auch einem Stresstest mit parallelen Anfragen unterziehen, indem Sie den
parallel
verwenden:Dadurch wird versucht, 25 Anfragen parallel an den Server zu senden.