https://github.com/tdex-network/tor-proxy
Tor2Web HTTP/1.x reverse proxy to consume onion endpoints without installing a tor client
https://github.com/tdex-network/tor-proxy
onion reverse-proxy tor tor-proxy tor2web
Last synced: 5 months ago
JSON representation
Tor2Web HTTP/1.x reverse proxy to consume onion endpoints without installing a tor client
- Host: GitHub
- URL: https://github.com/tdex-network/tor-proxy
- Owner: tdex-network
- License: mit
- Created: 2021-02-15T17:43:54.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2022-09-26T16:54:57.000Z (over 3 years ago)
- Last Synced: 2024-06-20T15:56:17.188Z (almost 2 years ago)
- Topics: onion, reverse-proxy, tor, tor-proxy, tor2web
- Language: Go
- Homepage: https://pkg.go.dev/github.com/tdex-network/tor-proxy
- Size: 84 KB
- Stars: 14
- Watchers: 2
- Forks: 4
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# đ§
tor-proxy
HTTP/1.x reverse proxy to consume onion endpoints without installing a tor client
## TL;DR
Everything that comes to proxy.tdex.network/ is redirected to .onion
## đŠ Install
1. [Download the latest release for MacOS or Linux](https://github.com/tdex-network/tor-proxy/releases)
2. Move it into a folder in your PATH (eg. `/usr/local/bin`) and rename as `torproxy`
3. Give executable permissions. (eg. `chmod a+x /usr/local/bin/torproxy`)
## âšī¸ Usage
### `start` command
By default you should have a Tor client running on the canonical `9050` port. You can change that with `--socks5-hostname` and `--socks5-port` or use the embedded tor client with `--use-tor`
* Run *cleartext* on default port :7070
```sh
$ torproxy start --insecure --registry '[{"endpoint": "http://somewherefaraway.onion:80"}]'
```
* Run *with SSL*
```sh
$ torproxy start --domain mywebsite.com --registry '[{"endpoint": "http://somewherefaraway.onion:80"}]'
```
* Load registry from a remote URL
```sh
$ torproxy start --domain mywebsite.com --registry https://raw.githubusercontent.com/tdex-network/tdex-registry/master/registry.json
```
With a URL, the proxy will refetch the registry every 12 hours in order to auto-update the set of endpoints to redirects.
* Load registry from local path to file
```sh
$ torproxy start --domain mywebsite.com --registry ./registry.json
```
* Use embedded tor client
```sh
$ torproxy start --domain mywebsite.com --registry ./registry.json --use-tor
```
## đ Docker
* Build
```sh
$ docker build -t ghcr.io/tdex-network/torproxy .
```
* Run
```sh
$ docker run -it -d -p 443:443 -p 80:80 --name proxy --restart unless-stopped ghcr.io/tdex-network/torproxy start --use-tor --domain proxy.tdex.network --email myemail@domain.com --registry https://raw.githubusercontent.com/tdex-network/tdex-registry/master/registry.json
```