Raspberry Pi webserver, even if its behind NAT

You have a Raspberry Pi and the way it connects to the internet is through an ISP that doesn’t provide you a static IP, instead some private IP address like 10.x.x.x or 192.168.x.x? Don’t worry, you can still connect to it from outside and have it handle all webservice requests through a very easy configuration.

The concept is called “reverse SSH tunneling”, which I just discovered today. The idea is that the Raspberry Pi is connected to a server, which behaves as a proxy between the user and the Raspberry Pi. This proxy server could well be a free micro instance of an EC2 server, or some other VPS like Linode.

I found the instructions here: Alex on Linux. Here is the final deployment diagram for me, followed by a lovely picture of my credit card sized webserver.

Raspberry Pi: First boot

After a long while, this turned out to be a productive weekend. I got my Raspberry Pi to bootup finally. For this, I had to unbox Mitali’s TV, find a video out cable and a MicroSD card adapter. Turns out she has a pretty slick TV, and how better to utilize it other than to run linux on it? Poor TV, it has turned geek after mistress’ marriage.

First bootup of my Raspberry Pi

Anyway, started out with Fedora 18 RPi Remix. Didn’t have an HDMI cable to enjoy full resolution display, didn’t have the wireless keyboard, mouse so as to get a free USB port for the WiFi adapter. Hope to set them all up in the coming week.