Cloudflare Argo Tunnel
Or… how to host a web server with a residential ISP.
I’ve recently started playing with Cloudflare. It was long overdue for me. My main goal was simply to gain familiarity with the platform and evaluate whether it would be a good fit for my day job. Cloudflare offers a free plan that is actually quite impressive. As a test, I decided to fire up some web servers at home (on a residential isp with a single dynamic ip address) and see what we could do. This WordPress site and a few others are the result. Basically, Cloudflare is acting as a reverse proxy with SSL offload and is also handling my public DNS. It costs $5 a month to enable Argo – a service that routes web traffic over the fastest and most reliable paths. Part of the Argo suite is Argo Tunnel (formerly Cloudflare Warp Beta.) This allows one to provide services through Cloudflare without opening any firewall ports. It works sort of the same way LogMeIn works. Instead of inbound connections to the web server, either directly or through Cloudflare, a persistent secure outbound connection is maintained from the web server to Cloudflare. As a side benefit, this seems to work even if your outside address is dynamic and even if your ISP blocks inbound connections on ports 80 and 443, as many residential ISPs do. Given the price difference between a residential and business internet plan, $5 is a small price to pay for this functionality. We’ll see how it performs over the long run.