We have a bunch of Linux boxes with an embedded Linux on them. The boxes are connected to the internet at client sites and the connections are usually behind a firewall or at least a NAT.

What we need is the ability to connect to the boxes via SSH or other remote terminal in order to do maintenance. But as we can not configure the networks, there is no way to reach the boxes directly from the outside internet.

The ideal solution would be to have a server where the boxes would register and an admin could pick up a connexion when needed and open a tunnel into the box.

Does such a solution exist?

  • 3
    Maybe I'm paranoid but this sounds pretty fishy to me. If these slave machines are there for legit reasons, the companies should be willing to adjust their network config to help you.
    – jlehtinen
    Jan 17, 2014 at 15:38
  • A botnet is just a tool, good or evil is in the hands of the tool user. Jan 17, 2014 at 15:39
  • Google for reverse ssh tunnels. See vdomck.org/2009/11/ssh-all-time.html for an example script. On the security front, I recommend the tunnel be a highly restricted user that you then use sudo/su to escalate access. Jan 17, 2014 at 18:42

3 Answers 3


You can port forward the SSH connection from the remote machines to the central server. You would need to assign unique ports for each remote client, and either have a permanent tunnel opened or a web service at the central server that listens to the client pings and asks to enable the port forwarding whenever an admin needs to connect to the remote box.


There is Pagekite, which is open-source software you can setup on your clients and a server to do this. They also offer a service if you do not want to run your own server.


You should take a look at saltstack. http://docs.saltstack.com/

the dependencies (python and a few libs) might be too heavy for your embedded systems though.

Not the answer you're looking for? Browse other questions tagged .