Skip to content

lgiuliani80/tunnelproxy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TCP to HTTP proxy tunneler

This server listens on a (local) port and, when a connection is received, opens a connection to the configured HTTP proxy server, issues the 'CONNECT' request towards the configured destination host, then establishes a transparent tunnel between the local client and the remote server.

This is useful when having to deal with services (like e.g. SFTP connector for Data Factory running on a self-hosted Integration Runtime) which do not support proxy server configuration and the (enterprise) network in which they're running require the use of a proxy to access the Internet.

NOTES:

  1. each instance of this server will tunnel all clients to the same configured server through the same HTTP proxy. Multiple instances of the server can run in parallel though (it's advised to pass all the configuration via command line or via environment variables, and not via appsettings.json, as this allows for the same executable to run in multiple parallel instances with different configurations).
  2. this server supports HTTP proxies ONLY, no support to SOCKS4/5 proxies.
  3. connection to proxies is not recycled nor pooled, so it's not intended for high rate of incoming connections to serve.
  4. the code is written in .NET 5 so it's platform indipendent. On Windows though it's intended to be run as Windows Service. Look at this README for details on how to create system service.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages