aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--COPYING44
-rw-r--r--README87
2 files changed, 65 insertions, 66 deletions
diff --git a/COPYING b/COPYING
index c34a1e3..8b4cb53 100644
--- a/COPYING
+++ b/COPYING
@@ -1,28 +1,24 @@
-Copyright (c) 2004-2009, Daniel Stoedle <daniels@cs.uit.no>,
-Yellow Lemon Software. All rights reserved.
+Copyright (c) 2017, Toni Uhlig <matzeton@googlemail.com>
+All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
+ * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+ * Neither the name of the <organization> nor the
+ names of its contributors may be used to endorse or promote products
+ derived from this software without specific prior written permission.
-- Redistributions of source code must retain the above copyright notice,
- this list of conditions and the following disclaimer.
-
-- Redistributions in binary form must reproduce the above copyright notice,
- this list of conditions and the following disclaimer in the documentation
- and/or other materials provided with the distribution.
-
-- Neither the name of the Yellow Lemon Software nor the names of its
- contributors may be used to endorse or promote products derived from this
- software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGE.
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
+DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/README b/README
index a1e234f..7411763 100644
--- a/README
+++ b/README
@@ -3,55 +3,68 @@ PingTunnel-ng Read Me
What is ptunnel-ng?
----------------
+Ptunnel-ng is a bugfixed and refactored version of Ptunnel with some additional
+features e.g. change the magic value without recompiling (bypass Cisco IPS).
+
+
+What is ptunnel?
+----------------
Ptunnel is an application that allows you to reliably tunnel TCP connections
to a remote host using ICMP echo request and reply packets, commonly known as
ping requests and replies.
-Ptunnel-ng is a bugfixed and refactored version of Ptunnel with some additional
-features e.g. change the magic value without recompiling (bypass Cisco IPS).
Contact details
---------------
-You can contact the author, Daniel Stoedle, here:
+The ptunnel-ng fork was done by Toni Uhlig:
+ <matzeton@googlemail.com>
+You can contact the author of ptunnel, Daniel Stoedle, here:
<daniels@cs.uit.no>
The official ptunnel website is located here:
<http://www.cs.uit.no/~daniels/PingTunnel/>
-The Windows port was created by Mike Miller:
- <mike@mikeage.net>
-The ng fork was done by Toni Uhlig:
- <matzeton@googlemail.com>
Compiling
---------
-To compile ptunnel, simply run make. If everything goes well, you should end up
-with a binary called ptunnel. This serves as both the client and proxy. You can
-optionally install it using "make install". On Windows, run "make ptunnel.exe"
-to compile the Windows binary. You will need mingw installed, as well as the
-WinPcap library. WinPcap is available here:
+Either run "./autogen.sh" for a fully automatic build or run it manually with:
+ "./configure && make"
+
+You should end up with a binary called ptunnel-ng.
+This serves as both the client and proxy. You can
+optionally install it using "make install".
+To compile the Windows binary. You will need mingw installed.
+If you want pcap support you will need the WinPcap library as well.
+WinPcap is available here:
<http://www.winpcap.org/install/bin/WpdPack_4_0_2.zip>
Running
-------
-Ptunnel works best when running as root, and usually requires running as root.
-Again, from the website:
+Ptunnel works best when starting as root, and usually requires starting as root.
+Common ptunnel-ng options:
+
+Proxy(Server):
+ ./ptunnel-ng -r<destination address> -R<destination port> -v <loglevel>
+ -P<password> -u<user> -g<group>
-Client: ./ptunnel -p <proxy address> -lp <listen port> -da <destination address>
- -dp <dest port> [-c <network device>] [-v <verbosity>] [-u]
- [-x password]
-Proxy: ./ptunnel [-c <network device>] [-v <verbosity>] [-u] [-x password]
+Forwarder(Client):
+ ./ptunnel-ng -p <address> -l <listen port> -r<destination address>
+ -R<destination port> -v <loglevel>
+ -P<password> -u<user> -g<group>
The -p switch sets the address of the host on which the proxy is running. A
quick test to see if the proxy will work is simply to try pinging this host -
if you get replies, you should be able to make the tunnel work.
+If pinging works but you are not able to establish a tunnel, you should play
+around with the -m switch and change the magic value. A IDS/IPS or Firwall
+might try to fool you.
-The -lp, -da and -dp switches set the local listening port, destination address
+The -l, -r and -R switches set the local listening port, destination address
and destination port. For instance, to tunnel ssh connections from the client
machine via a proxy running on proxy.pingtunnel.com to the computer
login.domain.com, the following command line would be used:
-sudo ./ptunnel -p proxy.pingtunnel.com -lp 8000 -da login.domain.com -dp 22
+sudo ./ptunnel-ng -p proxy.pingtunnel.com -l 8000 -r login.domain.com -R 22
An ssh connection to login.domain.com can now be established as follows:
@@ -60,63 +73,53 @@ ssh -p 8000 localhost
If ssh complains about potential man-in-the-middle attacks, simply remove the
offending key from the known_hosts file. The warning/error is expected if you
have previously ssh'd to your local computer (i.e., ssh localhost), or you have
-used ptunnel to forward ssh connections to different hosts.
+used ptunnel-ng to forward ssh connections to different hosts.
Of course, for all of this to work, you need to start the proxy on your
proxy-computer (we'll call it proxy.pingtunnel.com here). Doing this is very
simple:
-sudo ./ptunnel
+sudo ./ptunnel-ng
If you find that the proxy isn't working, you will need to enable packet
capturing on the main network device. Currently this device is assumed to be
an ethernet-device (i.e., ethernet or wireless). Packet capturing is enabled by
-giving the -c switch, and supplying the device name to capture packets on (for
+giving the -L switch, and supplying the device name to capture packets on (for
instance eth0 or en1). The same goes for the client. On versions of Mac OS X
prior to 10.4 (Tiger), packet capturing must always be enabled (both for proxy
and client), as resent packets won't be received otherwise.
To protect yourself from others using your proxy, you can protect access to it
-with a password using the <tt>-x</tt> switch. The password is never sent in
+with a password using the -P switch. The password is never sent in
the clear, but keep in mind that it may be visible from tools like top or ps,
which can display the command line used to start an application.
Finally, the -u switch will attempt to run the proxy in unprivileged mode (i.e.,
no need for root access), and the -v switch controls the amount of output from
-ptunnel. -1 indicates no output, 0 shows errors only, 1 shows info messages, 2
+ptunnel-ng. -1 indicates no output, 0 shows errors only, 1 shows info messages, 2
gives more output, 3 provides even more output, level 4 displays debug info and
level 5 displays absolutely everything, including the nasty details of sends and
-receives. The -f switch allows output to be saved to a logfile.
+receives. The -o switch allows output to be saved to a logfile.
-Security features: Please see the ptunnel man-page for instructions.
+Security features: Please see the ptunnel-ng man-page for instructions.
Supported operating systems
---------------------------
Ptunnel supports most operating systems with libpcap, the usual POSIX functions
and a BSD sockets compatible API. In particular, it has been tested on Linux
-Fedora Core 2 and Mac OS X 10.3.6 and above. As of version 0.7, ptunnel can also
+Fedora Core 2 and Mac OS X 10.3.6 and above. As of version 0.7, ptunnel-ng can also
be compiled on Windows, courtesy of Mike Miller, assuming mingw and WinPcap is
installed.
Credits and contributors
------------------------
-Thanks to L. Peter Deutsch for his open-source MD5 implementation, included with
-ptunnel, but also available here:
-http://sourceforge.net/projects/libmd5-rfc/
-
-Many thanks also to Mike Miller <mike@mikeage.net> for his work on creating a
-Windows port of ptunnel.
-
-Thanks to Sebastien Raveau <sebastien.raveau@epita.fr> for implementing various
-security features and SELinux support.
+Daniel Stoedle et al.
-Also thanks to Joe McKenzie, Steffen Wendzel and StalkR for contributing patches to
-ptunnel.
License
-------
-Ping Tunnel is Copyright (c) 2004-2011, Daniel Stoedle <daniels@cs.uit.no>,
-Yellow Lemon Software. All rights reserved. Ping Tunnel is licensed under the
-BSD License. Please see the LICENSE file for details.
+Ping Tunnel NG is Copyright (c) 2017, Toni Uhlig <matzeton@googlemail.com>,
+All rights reserved. Ping Tunnel NG is licensed under the
+BSD License. Please see the COPYING file for details.