I will have many (10-300) Raspberry Pies running my own software in different networks, probably without its own static public ip, but all connected to the internet. I need to be able to manage these devices somehow, for example, reboot remotely or update my software inside it remotely. How do i do it then? Are there any free softwares to manage pies or any other solution?

  • You can utilise UPNP with a call home mechanism. Or if UPNP no option do a reverse tunnel to command and control centre. If you need inspiration look at how botnets are created... yea.. :D
    – Piotr Kula
    Commented Feb 23, 2017 at 12:55

4 Answers 4


If you have a server (in this case example.com) somewhere with a fixed IP, you can always do a remote port forwarding with SSH. The command is

 local$ ssh -R 22:localhost:3000 [email protected]

Be sure to enable port forwarding in your server, adding the following to your /etc/ssh/sshd_config

GatewayPorts yes

And restart the ssh on your server

server$ sudo service ssh restart

What it means is that if you enter to example.com:3000 you will be redirected to your local machine at port 22. And now is when the magic happens, you can simply do, from wherever in the world with internet access:

ssh [email protected] -p 3000 

And you will sshing into your local machine.

If you put each of your RPis into a different port in your server, let's say from 3001 to 3100, you can just automate whatever you want to do by changing the value in ssh [email protected] -p NN (where of course NN is the port).

ssh is for free, having a server is not. You may check Linode or DigitalOcean, they have plans starting at 5$/month and they both allow you to do what you want. So, if you are going to buy 300 raspis, 1 year of server service goes for around 0.7% of your budget.

  • +1 for DigitalOCean and remote prot forwarding / reverse tunneling :D
    – Piotr Kula
    Commented Feb 23, 2017 at 12:56

Have a look at RealVNC's VNC Connect. It's a cloud-based "remote desktop" solution that doesn't require port-forwarding. Raspberry Pi recently announced it was available on their blog

Front end to VNC Connect


I recently faced the same problem. I am using Tailscale and that is perfect for controlling multiple Raspberry Pis (and other devices). The way it works is it creates a virtual network between all your devices. After setting it up, I was able to control my Pis (on two different networks) from my phone (on LTE).

Links: https://tailscale.com/ https://tailscale.com/download/linux/rpi

I haven't looked at the alternatives, eg ZeroTier https://www.zerotier.com/


Your best bet is to use PiTunnel.com to manage them all.

It's easy to install on each device, and then you'll be able to access the terminal remotely, monitor their health, and use its custom tunnels to access any other service like web server or VNC.

(Full disclosure, I'm the creator of PiTunnel and we created it specifically to solve this problem for ourselves and others looking to do the same thing)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.