How to ssh a computer over a router

5

2

At home I have a linux machine behind a router. How can I ssh it?

Guy

Posted 2009-11-13T08:38:50.383

Reputation: 171

4

This question is better suited to http://www.superuser.com.

– Dominic Rodger – 2009-11-13T08:43:51.520

Answers

8

You need to do two things:

  1. Set up a dynamic dns service. The dyndns.com service is free, and generally you can set this up in your router's configuration (ie, once you've set up an account at dyndns.com, many routers let you put in your account information and your router will update it automatically). This will let you do something like ssh mysshsite.dyndns.com (or whatever you sign up for), and you won't have to memorize your router's IP address (which is likely to change if you're using a residential service)

  2. Set up port forwarding. SSH is configured to use port 22 by default, so set up your router to forward port 22 to your computer. If you don't know how to set up port forwarding, check your router's documentation - it's usually pretty easy.

Daniel G

Posted 2009-11-13T08:38:50.383

Reputation: 181

RE to Point 1: Would setting up the hostname in /etc/hosts accomplish the same thing? – new123456 – 2011-06-11T16:14:32.287

2

You need to enable port forwarding for port 22 on your router. The details can depend on router model, so, unfortunately, I cannot give more specific instructions. You can check, for example, portforward.com, it has port forwarding howtos for many router models.

fjarri

Posted 2009-11-13T08:38:50.383

Reputation: 173

1

You can publish one or more services using port forwarding on your router. So to publish a web server on your computer you'll probably want to forward port 80. Check about this in your router's manual.

Palantir

Posted 2009-11-13T08:38:50.383

Reputation: 548

0

You can't (at least not without configuring your router: it needs to forward port 22 to the PC you want to SSH on)

soulmerge

Posted 2009-11-13T08:38:50.383

Reputation: 267

0

If you can't / don't want forward port 22 on you router, and have another machine on the Iternet, you could always do the ssh reverse tunnel: here

janesconference

Posted 2009-11-13T08:38:50.383

Reputation: 243