Connect to laptop (behind NAT) using intermediary server

From Aram's Wiki
Revision as of 17:59, 29 July 2019 by Aram (talk | contribs) (On the other client)
Jump to: navigation, search


Introduction

We'll use a combination of ssh remote and local port forwarding in order to expose the laptop's ssh port outside the NAT.

On the server

Make sure you have an account that the laptop can connect to.

On the laptop

This will initiate a connection to the server (from the laptop), and it will set-up a remote port forward such that dialing localhost:12345 on the server will forward to localhost:22 on the laptop.

ssh -N -R 12345:localhost:22 harieta@freedom.mgk.ro

On the other client

This will connect to the server, and then set-up a local port forward (from the other client to the server) such that dialing localhost:12345 on the client will connect to localhost:12345 on the server. Of course, localhost:12345 on the server just forwards to localhost:22 on the laptop.

ssh -N -L 12345:localhost:12345 freedom.mgk.ro

Then from another terminal (still on the other client) you can

ssh -p 12345 localhost

And should reach localhost:22 on the laptop.