5

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

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.

| improve this answer | |
  • RE to Point 1: Would setting up the hostname in /etc/hosts accomplish the same thing? – new123456 Jun 11 '11 at 16:14
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.

| improve this answer | |
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.

| improve this answer | |
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)

| improve this answer | |
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

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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