How to install httptunnel on Linux

Last updated on November 28, 2020 by Dan Nanni

httptunnel is a GNU/GPL-licensed free software that allows one to create a bi-directional tunnel encapsulated by HTTP, between client and server. HTTP-encapsulated tunnels are useful when you want to use games, IM clients, or P2P sharing applications across restrictive firewalls or proxies which tend to block pretty much everything except well known traffic such as HTTP traffic. httptunnel consists of hts (server) and htc (client) components to establish HTTP tunnels in between.

Install httptunnel on Linux

In order to install httptunnel on Linux, follow the steps below.

Install httptunnel on Ubuntu, Mint, or Debian

$ sudo apt-get install httptunnel

Install httptunnel on CentOS or RHEL

First set up Repoforge on your system, and then run:

$ sudo yum install httptunnel

Install httptunnel on Fedora

$ sudo yum install httptunnel

Create an HTTP Uunnel with httptunnel

In order to set up an HTTP-encapsulated tunnel using httptunnel, refer to the example below.

On server side:

$ sudo hts -F <server_ip_addr>:<port_of_your_app> 80

The above command tells hts to listen on port 80, and to redirect all traffic received on port 80 to <port_of_your_app>

On client side:

$ sudo htc -F <port_of_your_app> <server_ip_addr>:80

The above command tells htc to receive traffic on localhost:<port_of_your_app>, and to redirect it to <server_ip_addr>:80. At this point, the application instances running on two end hosts can communicate with each other transparently via an HTTP tunnel.

If htc is running behind HTTP proxy, you can specify the HTTP proxy with -P option:

$ sudo htc -P <my_proxy.com:proxy_port> -F <port_of_your_app> <server_ip_addr>:80

If you are conscious about the security of plain-text HTTP tunnels, or reduce the risk of firewall blocking, you can consider setting up SSH tunneling, which can protect you against eavesdropping, thereby is more robust against potential firewall fingerprinting.

Support Xmodulo

This website is made possible by minimal ads and your gracious donation via PayPal (Credit Card) or Bitcoin (BTC Wallet: 1M161JGAkz3oaHNvTiPFjNYkeABox8rb4g).

Xmodulo © 2020 ‒ About ‒ Powered by DigitalOcean