Friday, May 8, 2015

Running scp through ssh tunnel

Ref: https://www.urbaninsight.com/2012/10/03/running-scp-through-ssh-tunnel

Run scp to machine R, which is only accessible through gateway machine G.
Step 1: Establish SSH tunnel. Pick a temporary port between 1024 and 32768 (1234 in this example). Port 22 will be used by scp.
$ ssh -L 1234:
:22 @
# Adding "cat -" will keep it running while above will get you connected to G
$ ssh -L 1234:
:22 @
cat -
Either way you run it, open another terminal for next step.
Step 2: Run scp against port 1234 pretending 127.0.0.1 (localhost) is the remote machine R, and the command will be sent to R.
$ scp -P 1234 @127.0.0.1:/path/to/file file-name-to-be-copied

No comments: