Proxytunnel

Description

ProxyTunnel is a program that connects stdin and stdout to a server somewhere on the network, through a standard HTTPS proxy. We mostly use it to tunnel SSH sessions through HTTP(S) proxies, allowing us to do many things that wouldn’t be possible without ProxyTunnel.

Proxytunnel can currently do the following:

  • Create tunnels using HTTP and HTTPS proxies (That understand the HTTP CONNECT command).

  • Work as a back-end driver for an OpenSSH client, and create SSH connections through HTTP(S) proxies.

  • Work as a stand-alone application, listening on a port for connections, and then tunneling these connections to a specified destination.

Usage

Syntax

proxytunnel [OPTIONS]…

Options

Standard options:
 -i, --inetd               Run from inetd (default: off)
 -a, --standalone=INT      Run as standalone daemon on specified port
 -p, --proxy=STRING        Local proxy host:port combination
 -r, --remproxy=STRING     Remote proxy host:port combination (using 2 proxies)
 -d, --dest=STRING         Destination host:port combination
 -e, --encrypt             SSL encrypt data between local proxy and destination
 -E, --encrypt-proxy       SSL encrypt data between client and local proxy
 -X, --encrypt-remproxy    SSL encrypt data between local and remote proxy
 -W, --wa-bug-29744        Workaround ASF Bugzilla 29744: if SSL is active stop
                           using it after CONNECT (might not work on all setups; see
                           /usr/share/doc/proxytunnel/README.Debian.gz)
 -B, --buggy-encrypt-proxy Equivalent to -E -W, provided for backwards
                           compatibility

Additional options for specific features:
 -F, --passfile=STRING     File with credentials for proxy authentication
 -P, --proxyauth=STRING    Proxy auth credentials user:pass combination
 -R, --remproxyauth=STRING Remote proxy auth credentials user:pass combination
 -N, --ntlm                Use NTLM based authentication
 -t, --domain=STRING       NTLM domain (default: autodetect)
 -H, --header=STRING       Add additional HTTP headers to send to proxy
 -x, --proctitle=STRING    Use a different process title

Miscellaneous options:
 -v, --verbose             Turn on verbosity
 -q, --quiet               Suppress messages
 -h, --help                Print help and exit
 -V, --version             Print version and exit

Example

cyborg@cyborg:~$ sudo proxytunnel -i -u cyborg -p 221.174.54.210:3128 -d 122.174.142.124:4444 -v
Option -u/--user is deprecated, please use -P/--proxyauth user:pass
Enter local proxy password for user cyborg: 
Connected to 221:174:54:210:3128 (local proxy)

Tunneling to 122.174.142.124:4444 (destination)
Communication with local proxy:
 -> CONNECT 122.174.142.124:4444 HTTP/1.1
 -> Host: 122.174.142.124:4444
 -> Proxy-Authorization: Basic Y3lib3JnOnRvb3I=
 -> Proxy-Connection: Keep-Alive
 <- HTTP/1.1 405 Method Not Allowed
HTTP return code: 405 Method Not Allowed
 <- Date: Mon, 14 Sep 2015 12:14:31 GMT
 <- Server: Apache/2.4.7 (Ubuntu)
 <- Allow: OPTIONS,GET,HEAD,POST
 <- Content-Length: 309
 <- Content-Type: text/html; charset=iso-8859-1
0 Comments

Leave a reply

CONTACT US

We're are building as a community and a team. Be a part of it.

Sending

©2017 Ztrela Knowledge Solutions Pvt. Ltd

Log in with your credentials

Forgot your details?