Open
Description
Currently openvpn --http-proxy option only allows a HTTP proxy, i.e. it directly issues the CONNECT command to http proxy. There is no option to connect to a HTTP proxy not directly, but via TLS/SSL, a so called https-proxy option, a regular HTTP proxy behind TLS/SSL, it is rather easy to setup such with apache or nginx. This suggested --http-proxy-over-TLS option has three very important benefits:
- A local ISP cannot be able to eavesdrop the IP of actual VPN server during CONNECT phase and block connection proactively.
- Most important. Currently OpenVPN is frequently blocked/throttled by some ISPs. This option would allow to pass ISP blocking. A OpenVPN connection with http-proxy option currently gets blocked by ISP with exactly the same logic as used when it is connected directly. If OpenVPN connection would be encapsulated in HTTPS connection to the proxy -- it would be much more difficult to identify and block such a connection.
- A proxy often has basic type of authorization credentials. A connection to such proxy without SSL leaks proxy auth credentials.
This is a request for improvement. Tested on openvpn-2.6.12 and earlier, none support a HTTP proxy over TLS/SSL. This improvement feature is easy to implement and it does not affect other OpenVPN functionality.