OpenVPN über Proxy, nicht sicher, was passiert. Klarstellung zur Theorie?

OpenVPN über Proxy, nicht sicher, was passiert. Klarstellung zur Theorie?

Ich verwende derzeit OpenVPN und einen Squid-Proxy auf einem kleinen VPS. In der Konfigurationsdatei des VPN verwende ich OpenVPN-Proxy-Optionen, um vor dem VPN eine Verbindung zum Proxy herzustellen.

Der interessante Teil der Konfiguration sieht folgendermaßen aus:

*Hinweis: Die redigierte IP in der Konfigurationsdatei ist dieselbe, da sich sowohl Squid als auch der OpenVPN-Server auf demselben VPS befinden.

[...]
remote xxx.xxx.xxx.xxx 15855 tcp-client
http-proxy xxx.xxx.xxx.xxx 3128
[...]
http-proxy-option CUSTOM-HEADER Host [redacted]
[...]

Ich verstehe, dass sich der Proxy vor der VP-Verbindung befindet, aber wie kann Squid als HTTP-Proxy die TCP-Verbindung zum VPN verarbeiten? Wann wird der benutzerdefinierte Header übergeben? Er wird übergeben, wenn der Client eine Verbindung zum Proxy herstellt oder wenn die Pakete vom Proxy zum VPN gehen?

Kann es mir jemand erklären oder mir eine Referenz nennen, damit ich besser verstehe, was passiert?

Antwort1

Proxys wie Squid unterstützen eine Reihe verschiedener HTTP-Anforderungsmethoden. Sie haben wahrscheinlich schon von usw. gehört GET, POSTaber es gibt noch andere wie das, das OpenVPN oben verwendet; CONNECT.

CONNECTerstellt einen "Tunnel" über HTTP, und Sie können mehr darüber lesenWikipedia-Seite.

Antwort2

Der „Proxy“ in OpenVPN bedeutet nur, dass der OpenVPN-Client über einen Proxy mit dem Server verbunden ist, wie zum Beispiel ein Socks5-Proxy, den Sie auf einem SSH-Client öffnen können. Sofern Sie Squid nicht als HTTP-Proxy auf einem bestimmten Port einrichten, wird es automatisch den gesamten ausgehenden Datenverkehr auf Port 80 oder Port 443 mit seinen eigenen zwischengespeicherten Dateien kapern. Mit diesen Einstellungen können Sie Squid als Reverse-Proxy wie Nginx betrachten, das keinen echten HTTP-Proxy bereitstellt.

verwandte Informationen