A simple TCP Reverse Proxy, installable globally on your machine via NPM
Proxies TCP traffic from a port on your machine to another host & port that your machine is able to reach
Underneath the hood, it uses the following npm packages - net
& pm2
Run the following in your command-line/terminal:
sudo npm install -g pm2
npm install -g quickprox
Add a new proxy:
quickprox add 3000 10.0.0.136 8080
This routes tcp requests that reach 0.0.0.0:3000
(also localhost:3000
) to be routed to 10.0.0.136:8080
You can continue adding more proxies:
quickprox add 5432 10.0.1.100 5322
quickprox add 8080 10.0.1.100 3001
quickprox add 3030 10.0.1.100 4002
For more details on how to list out proxies, delete proxies, check the status of proxies, continue reading the following sections.
Ensure that you have PM2 installed, else the tool wont work:
sudo npm install pm2 -g
Next, install quickprox
:
npm install -g quickprox
Lets say you want requests that reach 0.0.0.0:3000
(also localhost:3000
) to be routed to 10.0.0.136:8080
:
quickprox add 3000 10.0.0.136 8080
To see a list of all TCP proxies that you have created:
quickprox list
Take note of the id
column, that is the value you can use later when wanting to delete TCP proxies:
Using the id
value from quickprox list
, you can then run
quickprox delete id_here
For example, if I want to delete a proxy with id equal to 1, the I would run:
quickprox delete 1
quickprox delete all
To see the logs of each proxy, you can run:
quickprox status
As mentioned previously, this uses PM2, and you can then see each running proxy by using the arrow keys (up/down)
Here are a list of aliases that you can use that literally do the same thing, for flexibility's sake 🤝 :
# Creating a tcp proxy
quickprox add 8085 10.0.0.136 3003
quickprox create 8085 10.0.0.136 3003
quickprox new 8085 10.0.0.136 3003
quickprox serve 8085 10.0.0.136 3003
quickprox deploy 8085 10.0.0.136 3003
# Deleting a tcp proxy
quickprox delete 3
quickprox remove 3
quickprox kill 3
# Deleting all tcp proxies created
quickprox delete all
quickprox remove all
quickprox kill all
# Listing all tcp proxies
quickprox list
quickprox ls
quickprox ps
quickprox l
# Status of tcp proxies
quickprox status
quickprox monit
quickprox details
Some code that was used in building this: https://gist.github.com/kfox/2313683
MIT