One of the common problems faced by Raspberry Pi users is accessing it from internet. We look at how to solve it using
Now, there can be a variety of reason why you may want to do that, e.g., a security or webcam that you want to access, or a website that you want to host within the premises of your home, or building a file server similar to Google Drive. And each one of them comes with their own set of problems.
In this tutorial we look at how to make your website hosted on Raspberry Pi accessible to anyone on internet.
Whatever the reason, users typically get stuck with two issues;
a) The ISP Router / Firewall Blocks access from the internet, a problem that can be solved easily via port-forwarding and dynamic DNS service.
b) The ISP gives you a dynamic IP address using a CG-NAT which blocks port-forwarding
There are literally hundreds of websites that can help you configure port-forwarding depending upon your router and several dynamic DNS service providers, Duck DNS, DynDNS, etc. that comes to mind immediately.
But, to penetrate a CG-NAT requires a lot more effort and know how, I personally struggled with it for almost a month and tried almost all services out there from VPN (ZeroTier, OpenVPN, etc.) to Reverse SSH (Ngrok, LocalTunnel, Openport, Serveo).
There were 3 factors to consider when choosing a solution
a) It should allow anyone to access the services because a website should be accessible to anyone on the internet
b) It should allow me to choose a custom domain name because I owned a domain name and wanted to use it
c) I wanted it to cost as little as possible
Reverse SSH solves the problem
A reverse SSH solution would fit all the criteria, now I have built a detailed comparison between these VPN and Reverse SSH solution elsewhere, but there were two services which fit the bill LocalTunnel and Serveo.net, I eventually went with Serveo.net because it’s a lot more stable compared to LocalTunnel.
As mentioned earlier, I found Serveo.net to be more stable than other free alternatives, but also the fact that Serveo.net doesn’t require you to download any additional files. And it’s free, not even a signup required (believe me I’m writing this for free, just found it impressive).
In the next section we look at how to configure Serveo.net.