ssh ProxyCommand
-
Comments:
- here.
If you need to tunnel through a machine to get to another one, using ssh
, you can easily do this with a ProxyCommand
entry in your .ssh/config
:
Host foo
ProxyCommand ssh <gateway-machine> -W <target-machine>:%p
If you have avahi-daemon
installed on your gateway machine, you can get even better:
Host foo.local
ProxyCommand ssh <gateway-machine> -W %h:%p
I use this to get access to my office machine(s), without having to worry about firing up a VPN. I can rewrite the hostname so that I don’t need to have a different entry for each machine in the office:
Host *.office
ProxyCommand ssh <gateway-machine> -W $(echo %h | sed s/.office/.local/):%p
Bingo, now I can get really simple access to any machine in the office (as long as it has avahi installed, or is a Mac).
matt@alpaca:~ $ ssh karma.office
Last login: Fri May 23 19:52:29 2014 from 10.0.0.2
matt@karma:~ $