tpserv(8)

πŸ’… tpserv β€” the tpserv(8) page, bestie edition ✨

okay so you opened the General Use Manual for tpserv and honestly? iconic choice. this is the tpserv(8) page, section 8, sysadmin-coded, and we're about to get into it. no cap. 🫢


✨ NAME ✨

tpserv β€” a program that implements a proxy. that's it, that's the name, she's simple and she's serving. πŸ’…


🌸 SYNOPSIS 🌸

tpserv [-V] [-v] [-h] [-D] [-c] [-p port]

short, sweet, and packed. like a group chat bio that actually says something.


πŸ¦‹ DESCRIPTION πŸ¦‹

so tpserv is a program that implements a proxy, an attack, or whatever you want to call it. honestly? name it whatever, the vibes are flexible, it does not care. πŸ™ˆ

it just sits there listening on DST_PORT_PROXY, which you can configure with the -p option, and it receives the reassembled data stream from the kernel. yes, the kernel is handing her the whole thing already put back together, she's not out here doing puzzles. 🧚

currently this program supports two whole modes:

  • the mode where it echoes everything back to the src host, or
  • the mode where it connects to the destination that the client wanted to connect to, and relays everything from client to that destination and everything from destination to the client.
head's up though: go look at the limitations on how the connection will look like on the destination host. do not skip that part, it's giving important. πŸ’€

and lowkey the best part β€” it is possible to insert some code to this program to modify data from/to source/destination. but bestie, that part you will have to do yourself. she's not writing your patch for you. 😭


πŸŽ€ OPTIONS πŸŽ€

  • -h β€” show the help message and exit. classic. ✨
  • -V β€” print version. yes, capital V, lowercase v is a whole different girl, do not mix them up.
  • -v β€” verbose mode (prints connections). she's talking now.
  • -vv β€” even more verbose (prints connections and received/send packets). now she will NOT stop talking and we love that for her. πŸ’–
  • -D β€” daemon mode. she goes off on her own, independent main character energy. πŸ‘‘
  • -c β€” connection mode (default is echo mode). if you don't pass -c, you get echo. periodt.
  • -p [port] β€” set DST_PORT_PROXY listen. pick your port, queen. 🌈

πŸ”₯ EXAMPLES πŸ”₯

HOW IT WORKS TOGETHER β€” HUNT/TRANSPROXY/TPSERV

here is a small example of how to use hunt, transproxy and tpserv together. sit down, get comfy, we're doing a little choreography. πŸ’ƒ

  1. At the beginning run tpsetup/transproxy program. The default destination port is 7000 and redirecting port is 7044.
  2. Run tpserv/tpserv -v (or -vv).
  3. Run hunt and enter arp spoof daemon menu. Do not start the daemon unless you modify the tpsetup/transproxy script "i" insert the single arp spoof in this order:
    • IP address (name) of your gateway or IP address (name) of destination host if the host is in the same IP subnet as source host.
    • as fake mac address enter 'my' or enter your interface MAC address.
    • enter IP address (name) of source host (client) from which you want to receive data - connections.
    • optionally enter refresh interval "t" test if the spoof was successful.
  4. from the source host try to run telnet 1.1.1.1 7000 (or telnet destination_name 7000) and type some chars. The chars should be echoed back by tpserv program.

You can then play little bit with DST_PORT setting in setup/transproxy script and/or -c option of tpserv program or change tpserv to modify data going from/to source/destination. go wild, it's your sandbox. πŸ“


πŸ’œ SEE ALSO πŸ’œ

hunt(8), transproxy(8) β€” the rest of the girl group, they don't work alone, they work together. ✨


🌟 AUTHOR 🌟

tpserv was written by Pavel Krauz <kra@gncz.cz>.

This manual page was written by Braulio Henrique Marques Souto <braulio@disroot.org> for the Debian project (but may be used by others). shoutout to them fr fr. 🫢


and that's the whole page, bestie. this was version tpserv-0.5, dated 05 October 2022, and it was a General Use Manual moment through and through. go be the proxy you want to see in the world. πŸ’– ✨ πŸŽ€ πŸ¦‹ 🌸 πŸ’…

πŸ“¦ where this page comes from