Simple tunneling reverse proxy with a fast web UI and auto HTTPS. Designed for self-hosters.
Go to file
Felix Bartels eacc0094aa Use multi stage dockerfile for building
This also adds a docker-compose.yml for easy running and rebuilding

Signed-off-by: Felix Bartels <felix@host-consultants.de>
2020-10-31 19:11:11 -04:00
webui Fix more security holes 2020-10-27 15:21:56 -06:00
.dockerignore Use multi stage dockerfile for building 2020-10-31 19:11:11 -04:00
api.go Delete tokens when user is deleted 2020-10-30 18:50:24 -06:00
auth.go Automatically create admin user on first start 2020-10-13 09:48:03 -06:00
boringproxy.go Output login link on first start 2020-10-29 18:49:59 -06:00
build.sh Add build script 2020-10-29 18:01:41 -06:00
client.go Reorder todo 2020-10-28 12:59:40 -06:00
database.go Make client selection a dropdown 2020-10-24 16:48:53 -06:00
docker-compose.yml Use multi stage dockerfile for building 2020-10-31 19:11:11 -04:00
Dockerfile Use multi stage dockerfile for building 2020-10-31 19:11:11 -04:00
generate_logo.sh Add logo file 2020-10-21 10:55:28 -06:00
go.mod Add QR code login URLs for tokens 2020-10-18 18:39:30 -06:00
go.sum Update go.sum 2020-10-31 09:52:14 -06:00
install_go.sh Use curl to install go 2020-10-30 19:36:27 -06:00
logo_concept.svg Add logo concept svg 2020-10-21 09:50:12 -06:00
logo.svg Improve shadows on logo 2020-10-22 10:08:20 -06:00
main.go Start implementing remote-controlled clients 2020-10-09 10:05:31 -06:00
notes.md Update notes and todo 2020-10-26 11:11:14 -06:00
README.md Add build and run instructions to readme 2020-10-31 15:13:09 -06:00
todo.md Update go.sum 2020-10-31 09:52:14 -06:00
tunnel_manager.go Implement using custom SSH keys 2020-10-23 20:56:55 -06:00
tunnel.sh Clean up unused attributes 2020-10-12 18:22:08 -06:00
ui_handler.go Delete tokens when user is deleted 2020-10-30 18:50:24 -06:00
utils.go Automatically create admin user on first start 2020-10-13 09:48:03 -06:00

What is it?

If you have a webserver running on one computer (say your development laptop), and you want to expose it securely (ie HTTPS) via a public URL, boringproxy allows you to easily do that.

You can learn more at boringproxy.io.

Building

git clone https://github.com/boringproxy/boringproxy
cd boringproxy

If you don't already have golang installed:

./install_go.sh
source $HOME/.bashrc
go build

To embed the web UI into the executable:

go get github.com/GeertJohan/go.rice/rice
rice embed-go
go build

Running

Server

boringproxy server -admin-domain bpdemo.brng.pro

Client

boringproxy client -server bpdemo.brng.pro -token fKFIjefKDFLEFijKDFJKELJF -client-name demo-client -user demo-user