From 191a2d644f157a8cefce5a278ac54ea2e3654b2f Mon Sep 17 00:00:00 2001 From: Dag Wieers Date: Sat, 9 Aug 2008 17:49:16 +0000 Subject: [PATCH] Improvements in Makefile and manpage. git-svn-id: https://proxytunnel.svn.sourceforge.net/svnroot/proxytunnel/trunk/proxytunnel@233 bc163920-b10d-0410-b2c5-a5491ca2ceef --- Makefile | 14 +++++ docs/proxytunnel-paper.txt | 12 ++--- docs/proxytunnel.1.txt | 99 ++++++++++++++++++++++++++++++++++ proxytunnel.1 | 106 ------------------------------------- 4 files changed, 119 insertions(+), 112 deletions(-) create mode 100644 docs/proxytunnel.1.txt delete mode 100644 proxytunnel.1 diff --git a/Makefile b/Makefile index 9e9ac73..0cef521 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,9 @@ # Makefile for proxytunnel # # Please uncomment the appropriate settings +name = proxytunnel +version = 1.9.0 +#version = $(shell sed -e '/^#define VERSION /s/^.\+"\(.\+\)".*$/\1/' config.h) CC ?= cc CFLAGS ?= -Wall -O2 -ggdb @@ -69,11 +72,19 @@ OBJ = proxytunnel.o \ ntlm.o \ ptstream.o +.PHONY: all clean docs install + +all: proxytunnel docs + +docs: + $(MAKE) -C docs + proxytunnel: $(OBJ) $(CC) -o $(PROGNAME) $(CFLAGS) $(OPTFLAGS) $(OBJ) $(LDFLAGS) clean: @rm -f $(PROGNAME) $(OBJ) + $(MAKE) -C docs clean install: install -Dp -m0755 $(PROGNAME) $(DESTDIR)$(BINDIR)/$(PROGNAME) @@ -81,3 +92,6 @@ install: .c.o: $(CC) $(CFLAGS) $(OPTFLAGS) -c -o $@ $< + +dist: clean docs + find . ! -wholename '*/.svn*' | pax -d -w -x ustar -s ,^./,$(name)-$(version)/, | bzip2 >../$(name)-$(version).tar.bz2 diff --git a/docs/proxytunnel-paper.txt b/docs/proxytunnel-paper.txt index be5f1c4..08e3d02 100644 --- a/docs/proxytunnel-paper.txt +++ b/docs/proxytunnel-paper.txt @@ -1,8 +1,6 @@ -= Proxytunnel: punghcing holes through the corporate firewall -:author: Mark Janssen -:author: Dag Wieers -$Revision$ -$Date$ += Proxytunnel: punching holes through the corporate firewall +Proxytunnel developers +$Id$ == Introduction 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. @@ -29,7 +27,9 @@ We now have access to SSH on our 'unrestricted' system on the internet. As you m == History -== Supported platforms +== Requirements +What is required to use proxytunnel ? +What Operating Systems are supported ? == How does it work ? diff --git a/docs/proxytunnel.1.txt b/docs/proxytunnel.1.txt new file mode 100644 index 0000000..1a1dfde --- /dev/null +++ b/docs/proxytunnel.1.txt @@ -0,0 +1,99 @@ += proxytunnel(1) +Proxytunnel developers +v1.9.0, Augustus 2008 + + +== NAME +proxytunnel - program to tunnel a connection throught an standard HTTPS proxy + + +== SYNOPSIS +*proxytunnel* _[options]_ _host_:_port_ + + +== DESCRIPTION +This manual page documents the proxytunnel command. + +*proxytunnel* is a program that open a tunnel through a HTTPS proxy. + + +== OPTIONS +This program follow the usual GNU command line syntax, with long +options starting with two dashes (‘--’). + +*-h, --help*:: + Print help and exit. + +*-V, --version*:: + Print the version of the program and exit. + +*-i, --inetd*:: + Run from inetd. Default is off. + +*-F* _STRING_, *--passfile=*_STRING_:: + The file containing Username & Password to send to HTTPS proxy for authentication. This file uses the same format as .wgetrc, and so can use the credentials in common with wget. This option can be used to at least hide the password from anyone clever enough to use the ‘ps’ command. + +*-p* _STRING_, *--proxy=*_STRING_:: + The HTTPS Proxy host:port combo to connect to. + +*-P* _STRING_, *--proxyauth=*_STRING_:: + The credentials (user:pass) to use for local HTTP(S) proxy + authentication. + +*-d* _STRING_, *--dest=*_STRING_:: + The destination host:port to built the tunnel to. + +*-r* _STRING_, *--remproxy=*_STRING_:: + The second-level proxy host:port to connect to. + +*-R* _STRING_, *--remproxyauth=*_STRING_:: + The credentials (user:pass) to use for remote HTTP(S) proxy + authentication. + +*-v, --verbose*:: + Turn on verbosity. Default is off. + +*-q, --quiet*:: + Suppress messages. Default is off. + + +== ARGUMENTS +*host* is the destination hostname + +*port* is the destination port + +Specifying the destination as arguments is exactly the same as specifying them using the *--dest* option. + + +== USAGE +FIXME: Usage cases to be added here. + +== NOTES +To use this program with OpenSSH to connect to a host somewhere, create a ~/.ssh/config file with the following content: + +---- +Host foobar + DynamicForward 1080 + ProxyCommand proxytunnel -p proxy.customer.com:8080 -u user -s password %h:%p + ServerAliveInterval 30 +---- + +If your proxy doesn’t require the username and password for using it, you can skip these options. + +If you want to run proxytunnel from inetd add the *--inetd* option. + +Most HTTPS proxies do not allow access to ports other than 443 (HTTPS) and 563 (SNEWS), so some hacking is necessary to start the SSH daemon on the required port. (On the server side add an extra Port statement in the sshd_config file) + + +== BUGS +This software is bug-free, at least we'd like to think so. If you do not agree with us, please let us know in a friendly email :) + + +== SEE ALSO + ssh(1), ssh_config(8) + + +== AUTHOR +This manpage was initially written by Loïc Le Guyader for the Debian GNU/Linux system, and maintained by the Proxytunnel developers. + +Homepage at http://proxytunnel.sourceforge.net/ diff --git a/proxytunnel.1 b/proxytunnel.1 deleted file mode 100644 index 2f83b1e..0000000 --- a/proxytunnel.1 +++ /dev/null @@ -1,106 +0,0 @@ -.\" Hey, EMACS: -*- nroff -*- -.\" First parameter, NAME, should be all caps -.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection -.\" other parameters are allowed: see man(7), man(1) -.TH PROXYTUNNEL 1 "august 1, 2007" -.\" Please adjust this date whenever revising the manpage. -.\" -.\" Some roff macros, for reference: -.\" .nh disable hyphenation -.\" .hy enable hyphenation -.\" .ad l left justify -.\" .ad b justify to both left and right margins -.\" .nf disable filling -.\" .fi enable filling -.\" .br insert line break -.\" .sp insert n+1 empty lines -.\" for manpage-specific macros, see man(7) -.SH NAME -proxytunnel \- program to tunnel a connection throught an standard -HTTPS proxy. -.SH SYNOPSIS -.B proxytunnel -.RI [ options ] - -.SH DESCRIPTION -This manual page documents the -.B proxytunnel -command. - -\fBproxytunnel\fP is a program that open a tunnel through a HTTPS -proxy. -.SH OPTIONS -This program follow the usual GNU command line syntax, with long -options starting with two dashes (`-'). -.TP -.B \-h, \-\-help -Print help and exit. -.TP -.B \-V, \-\-version -kPrint the version of the program and exit. -.TP -.B \-i, \-\-inetd -Run from inetd. Default is off. -.TP -.B \-F STRING, \-\-passfile=STRING -The file containing Username & Password to send to HTTPS proxy for -authentication. This file uses the same format as .wgetrc, and so -can use the credentials in common with wget. This option can be used -to at least hide the password from anyone clever enough to use the -`ps' command. -.TP -.B \-p STRING, \-\-proxy=STRING -The HTTPS Proxy host:port combo to connect to. -.TP -.B \-P STRING, \-\-proxyauth=STRING -The credentials (user:pass) to use for local HTTP(S) proxy -authentication. -.TP -.B \-d STRING, \-\-dest=STRING -The destination host:port to built the tunnel to. -.TP -.B \-r STRING, \-\-remproxy=STRING -The second-level proxy host:port to connect to. -.TP -.B \-R STRING, \-\-remproxyauth=STRING -The credentials (user:pass) to use for remote HTTP(S) proxy -authentication. -.TP -.B \-v, \-\-verbose -Turn on verbosity. Default is off. -.TP -.B \-q, \-\-quiet -Suppress messages. Default is off. - -.SH NOTES -To use this program with OpenSSH to connect to a host somewhere, create -a $HOME/.ssh/config file with the following content: - -Host foobar -.br - ProtocolKeepAlives 30 -.br - ProxyCommand /usr/bin/proxytunnel -p proxy.customer.com:8080 -u user --s password -d mybox.athome.nl:443 - -If your proxy doesn't require the username and password for using it, -you can skip these options. - -If you want to run proxytunnel from inetd add the '--inetd' option. - -Most HTTPS proxies do not allow access to ports other than 443 (HTTPS) -and 563 (SNEWS), so some hacking is necessary to start the SSH daemon on -the required port. (On the server side add an extra Port statement in -the sshd_config file) - - -.\".SH SEE ALSO -.\".BR bar (1), -.\".BR baz (1). -.\".br -.\"The programs are documented fully by -.\".IR "The Rise and Fall of a Fooish Bar" , -.\"available via the Info system. -.SH AUTHOR -This manual page was written by Loïc Le Guyader , -for the Debian GNU/Linux system (but may be used by others).