SourceFiles.org - Use the Source, Luke
Home | Register | News | Forums | Guide | MyLinks | Bookmark

Related Sites

Latest News
  General News
  Reviews
  Press Releases
  Software
  Hardware
  Security
  Tutorials
  Off Topic


Back to files

README
TCPDuP v0.50 - A modular TCP duplicating proxy.


Copyright (C) 2006 Benjamin Rossi

        This program is free software; you can redistribute it and/or modify
        it under the terms of the GNU General Public License as published by
        the Free Software Foundation; either version 2, or (at your option)
        any later version.

        This program is distributed in the hope that it will be useful,
        but WITHOUT ANY WARRANTY; without even the implied warranty of
        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
        GNU General Public License for more details.

Summary
TCPDuP is a pluggable, dynamic, and rate limiting proxy. It is packaged with a "pair" module that allows it to duplicate a service on a remote host:port, and a "cmd" module that allows it to execute a local command and forward its STDIN, STDOUT, STDERR from and to the network. The possibilities are unlimited with a modular framework that abstracts connections and provides a callback interface for various events.

Building
cd to the source tree. Type make.

Examples

  1. Use as a pair proxy with verbose (level 2) output. We want to accept connections on port 5000 and forward them to shell.example.com:22. ./tcpdup -v2 -m pair 5000 shell.example.com 22
  2. Use as a cmd proxy. Accept connections on port 5000 and run 'ls -la'. ./tcpdup -m cmd 5000 ls -la
  3. Use as a pair proxy to a local SSH service but limit bandwith to 100kbps. ./tcpdup -b100000 -m pair 2222 localhost 22

Logging
To enable logging, specify the -v switch and a level parameter. The levels of logging are:

      1 - Information (i.e. connects, disconnects)
      2 - Verbose info (i.e. module callback information)
      3 - Debug lvl 1 (some debugging output)
      4 - Debug lvl 2 (moderate debugging output)
      5 - Debug lvl 3 (a TON of debugging output)

To enable logging to syslog, use -l.

Daemon
To run as a daemon, specify the -d switch.

Ideas for module development

  • regex filtering proxy
  • MITM security auditing tools (ability to decrypt SSH would be really neat)
  • encryption using OpenSSL
  • a virtual multicasting hub


Other Sites

Discussion Groups
  Beginners
  Distributions
  Networking / Security
  Software
  PDAs

About | FAQ | Privacy | Awards | Contact
Comments to the webmaster are welcome.
Copyright 2006 Sourcefiles.org All rights reserved.