Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

We have a trusted machine which is authorized to connect to a special web service on port 12345, as shown below. The web service whitelists specific clients, and only those IP addresses are allowed to connect.

[ restricted-access ]       [ trusted machine ]
[    web service    ] <===> [                 ]
[ example.com:12345 ]       [   mycorp.com    ]

My machine is authorized to connect to the trusted machine:

[ restricted-access ]       [ trusted machine ]           [    my box   ]
[    web service    ] <===> [                 ] <--ssh--> [             ]
[ example.com:12345 ]       [   mycorp.com    ]           [ workbox.com ]

I have a script foo.rb which tries to connect to example.com:12345. It fails, since I'm not authorized to connect to example.com directly. Only the trusted box at mycorp.com can do this.

How do I set up an SSH tunnel so that the script can successfully make the connection?

share|improve this question
    
What will you be using to connect? Putty? Or SSH on a terminal? – Nick Oct 8 '10 at 17:24
up vote 4 down vote accepted

Figured it out. I used:

ssh -f -N -L 12345:example.com:12345 me@mycorp.com

I then edited my hosts file so that example.com requests to go the mycorp.com proxy. Crude but effective.

share|improve this answer

You must log in to answer this question.

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