Connecting through a SOCKS / HTTPS proxy server

It is possible to make a tunnel over a SOCKS or HTTPS proxy, the option for this feature is ProxyCommand. This option is useful if you work behind a draconian firewall and can't establishing ssh connection directly.

Core Tunnel can call the command specified by ProxyCommand, expecting it to make the connection to the proxy server. After the connection is made, Core Tunnel uses the connection as the pipeline, and connects to the remote ssh host through the pipeline.

netcat is one of ProxyCommand compatible command, netcat supports SOCKS v4, SOCKS v5 and HTTPS proxy protocols.

Connecting through a SOCKS / HTTPS proxy server can be accomplished by using netcat:

1. SOCKS v4

/usr/bin/nc -X 4 -x PROXY_ADDRESS:PORT %h %p

2. SOCKS v5

/usr/bin/nc -X 5 -x PROXY_ADDRESS:PORT %h %p

3. HTTPS

/usr/bin/nc -X connect -x PROXY_ADDRESS:PORT %h %p

Replace PROXY_ADDRESS:PORT to your proxy server address and port number, for example: