HTTPTunnel is an open source and freely distributed command-line software implemented in C++ and comprised of both a client and a server applications for deploying a capable and efficient TCP (Transmission Control Protocol) socket connection over HTTP tunnel between two computers.
The software is quite small and can be used in many scenarios, for example it can be used to tunnel traffic out from behind a prohibitive UNIX firewall, which has been configured to allow only outgoing HTTP (Hypertext Transfer Protocol) web connections.
How does it work? Simple, you run an instance of the program in client mode on your computer, which will automatically connect to another instance that runs on a remote machine in server mode. An example configuration file can be found on the /config folder.
Features at a glance
Key features include HTTP tunneling over encrypted SSL (Secure Sockets Layer) sockets, HTTP tunneling of UDP (User Datagram Protocol) traffic, HTTP tunneling through paranoid proxies, and HTTP proxy authentication, supporting basic, NTLM and digest methods.
Another interesting feature is the ability to run a SOCKS4 or SOCKS5 proxy server at the client, which will gain an extra layer of anonymity when used on the Internet, because HTTPTunnel is engineered to run as a proxy to the client.
Getting started with HTTPTunnel
To install and use the HTTPTunnel software on your GNU/Linux machine, you will have to compile it first. To do that,download the latest version from Softpedia or via the project’s official website (see link below), save the archive on your path and unpack it.
Then, open a Terminal app, navigate to the location of the src folder that is located inside the main directory of the software (e.g. cd /home/softpedia/httptunnel/src), and execute the ‘make’ command. Wait for the program to compile and install it system wide by running the ‘make install’ command as root or the ‘sudo make install’ command as a privileged user.