Skip to content

Forward external HTTP Requests to internal network

License

Notifications You must be signed in to change notification settings

12Tech/proxytea

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

48 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ProxyTea

What is ProxyTea?

ProxyTea is a neat and cost-effective solution to forward HTTP Requests to an internal network.

How does it work?

ProxyTea is based on two connected components:

  • Proxy: A simple AWS Stack, including an API Gateway, a SQS Queue and an S3 Bucket to temporary store body payloads.
  • Tea: a command line tool to run locally, pulling requests from the SQS Queue and forwarding them to your local service.

ProxyTea

What do I need ?

In the first place, you need a AWS account and the AWS CLI properly configured in your workstation, along with the SAM CLI.

You can follow the official instructions at AWS and SAM CLI.

How to deploy?

An S3 bucket to store the deployment code is required.

$> git clone [email protected]:12Tech/proxytea.git
$> cd proxytea/src/proxy
$> sam deploy --debug --s3-bucket DEPLOYMENT_BUCKET --force-upload --stack-name YOUR_STACK_NAME

Once the stack is correctly deployed, the API Gateway Endpoint will be shown.

How to use it?

Golang

Download

Download it from the latest release available.

$> ./tea --help
$> ./tea -service http://YOUR_LOCAL_SERVICE:PORT -queueUrl https://QUEUE_URL

Build

Or build

$> cd proxytea/src/tea
$> go build -v -o tea ./main.go

Python

$> cd proxytea/src/pytea
$> python tea.py -u http://YOUR_LOCAL_SERVICE:PORT -q https://QUEUE_URL

The agent will start forwarding requests from the public API Gateway Endpoint to your local service.

About

Forward external HTTP Requests to internal network

Resources

License

Stars

Watchers

Forks

Packages

No packages published