Skip to content

Commit 96dc17b

Browse files
authored
Update README.md (#5)
Update README with icon, expanded information, better layout.
1 parent 10b4cd0 commit 96dc17b

File tree

1 file changed

+20
-4
lines changed

1 file changed

+20
-4
lines changed

README.md

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,28 @@
1-
# ssl-proxy
2-
[![Go Report Card](https://goreportcard.com/badge/github.com/suyashkumar/ssl-proxy)](https://goreportcard.com/report/github.com/suyashkumar/ssl-proxy) [![GoDoc](https://godoc.org/github.com/suyashkumar/ssl-proxy?status.svg)](https://godoc.org/github.com/suyashkumar/ssl-proxy)
1+
<p align="center">
2+
<img src="https://suyashkumar.com/assets/img/lock.png" width="64">
3+
<h3 align="center">ssl-proxy</h3>
4+
<p align="center">Simple single-command SSL reverse proxy with autogenerated certificates (LetsEncrypt, self-signed)<p>
5+
<p align="center"> <a href="https://goreportcard.com/report/github.com/suyashkumar/ssl-proxy"><img src="https://goreportcard.com/badge/github.com/suyashkumar/ssl-proxy" alt=""></a> <a href="https://godoc.org/github.com/suyashkumar/ssl-proxy"><img src="https://godoc.org/github.com/suyashkumar/ssl-proxy?status.svg" alt=""></a>
6+
</p>
7+
</p>
8+
9+
A handy and simple way to add SSL to your thing running on a VM--be it your personal jupyter notebook or your team jenkins instance. `ssl-proxy` autogenerates SSL certs and proxies HTTPS traffic to an existing HTTP server in a single command.
310

4-
A simple Golang SSL reverse proxy that serves traffic over HTTPS and proxies it to any other web server you might be running. `ssl-proxy` will auto-generate self-signed certificates for you if none are provided to it (useful for things like `jupyter` notebooks in a pinch). Support for autogenerated LetsEncrypt certificates [is coming soon](https://github.com/suyashkumar/ssl-proxy/issues/1). Usage is simple:
511
## Usage
12+
### With auto self-signed certificates
613
```sh
714
ssl-proxy -from 0.0.0.0:4430 -to 127.0.0.1:8000
815
```
916
This will immediately generate self-signed certificates and being proxying HTTPS traffic from https://0.0.0.0:4430 to http://127.0.0.1:8000. No need to ever call openssl. It will print the SHA256 fingerprint of the cert being used for you to perform manual certificate verification in the browser if you would like (before you "trust" the cert).
1017

1118
I know `nginx` is often used for stuff like this, but I got tired of dealing with the boilerplate and wanted to explore something fun. So I ended up throwing this together.
1219

20+
### With auto LetsEncrypt SSL certificates
21+
```sh
22+
ssl-proxy -from 0.0.0.0:443 -to 127.0.0.1:8000 -domain=mydomain.com
23+
```
24+
This will immediately generate, fetch, and serve real LetsEncrypt certificates for `mydomain.com` and being proxying HTTPS traffic from https://0.0.0.0:443 to http://127.0.0.1:8000. For now, you need to ensure that `ssl-proxy` can bind port `:443` and that `mydomain.com` routes to the server running `ssl-proxy` (as you may have expected, this is not the tool you should be using if you have load-balancing over multiple servers or other deployment configurations).
25+
1326
### Provide your own certs
1427
```sh
1528
ssl-proxy -cert cert.pem -key myKey.pem -from 0.0.0.0:4430 -to 127.0.0.1:8000
@@ -25,4 +38,7 @@ wget -qO- $BINARY_RELEASE_LINK | tar xvz
2538
```
2639

2740
### Build from source
28-
You must have Golang installed on your system along with `make`. Then simply clone the repository and run `make`.
41+
You must have Golang installed on your system along with `make` and [`dep`](https://github.com/golang/dep). Then simply clone the repository and run `make`.
42+
43+
## Attribution
44+
Icons made by <a href="https://www.flaticon.com/authors/those-icons" title="Those Icons">Those Icons</a> from <a href="https://www.flaticon.com/" title="Flaticon">www.flaticon.com</a> is licensed by <a href="http://creativecommons.org/licenses/by/3.0/" title="Creative Commons BY 3.0" target="_blank">CC 3.0 BY</a>

0 commit comments

Comments
 (0)