SSH using a SOCKS or HTTP proxy
If you follow planet debian, you may already know about the ProxyCommand
directive in $HOME/.ssh/config
. It allows OpenSSH to connect to a remote host through a given command.
One setup that I use a lot is to have connections be established through a SOCKS proxy. Until today, I was using connect, a small tool written by Shun-ichi Gotô. The typical setup I used is:
Host *.mydomain.com
ProxyCommand connect -S socksserver:1080 %h %p
I also use jump hosts occasionally, with a setup like this:
Host somehost.mydomain.com
ProxyCommand ssh otherhost.mydomain.com nc -w1 %h %p
And today I discovered that netcat-openbsd does support connexions through a proxy, either SOCKS or HTTP. Why keep using two different tools when you can use one? ;) So I changed my setup to:
Host *.mydomain.com
ProxyCommand nc -xsocksserver:1080 -w1 %h %p
The default is to use SOCKS 5, add -X4
for SOCKS 4 and -Xconnect
for HTTP CONNECT proxies. Note that it doesn't support choosing which end does the name resolutions like connect does with the -R
option.
2009-01-27 21:29:53+0900
Both comments and pings are currently closed.