Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Time for some extremely rough ASCII art.

     |------|          /LAN_B
ME ->|ROUTER|->LAN_A-> -LAN_C
     |------|          \LAN_D

LAN_A is a server with the necessary exposed port(s) to connect to. Basically, I'm wondering if there's any way for me to connect, from outside of my LAN, to LAN_A, and through it, connect to any of the other computers on my LAN as if I were actually on the LAN (RDP, FTP, any service, really - as if I were actually on the LAN). Sorry if this seems like an ambiguous explanation, but I basically just want it to be as if I were really on the LAN and for each other computer on the LAN to have their own IP address that I can send or receive connections to.

My router is running dd-wrt, so if I could actually just connect to my router, that would be great, too.

share|improve this question

1 Answer 1

up vote 1 down vote accepted

Yes I do this all the time. If by "SSH server" you mean an actual computer running an SSH server, then you would SSH from outside into LAN_A, and get a command line on LAN_A. You would then run another ssh command on LAN_A to connect to one of the other machines.

Just make sure your router is configured to forward port 22 from the external interface to LAN_A.

Answer to updated question:

You could access a particular port by using SSH port forwarding. For example:

ssh host -l1234:LAN_B:5678

Would connect to host and forward port 1234 on your 'ME' machine to LAN_B's port 5678. You could then connect to localhost:1234 and you would really be connecting to LAN_B:5678.

Alternatively you could investigate SSH's -D option, which provides a local SOCKS proxy server, which forwards connections over the secure channel. If you set your application to use the localhost SOCKS proxy, then you could connect directly to LAN_B, C, and D.

However using SSH for this is not the ideal way to go, as SSH was designed for point-to-point communication. If you have control over the ME computer and LAN_A, I would recommend looking into OpenVPN instead, which can make LAN_A through LAN_D appear as if they are on the same network segment as your ME computer, while encrypting all communication over the Internet channel just like SSH.

share|improve this answer
    
Is it possible to do this without any of the other machines having an SSH server? Sorry, I should have specified that in the main post, I'll update it. –  Huskehn Aug 12 '12 at 7:23
    
@Huskehn: SSH is a specific way of connecting to a computer. You can't SSH to something if it's not running an SSH server. Do you mean you want to connect to the other machines in a different way? If so, please edit your question to provide more detail. –  Malvineous Aug 12 '12 at 7:24
    
Updated my question again. Hopefully it's somewhat easier to understand. –  Huskehn Aug 12 '12 at 7:28
    
Thanks for the updated answer. I'll definitely look into OpenVPN. Thanks! –  Huskehn Aug 12 '12 at 7:38

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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