This project provides a secure, containerized anonymity pipeline using:
- 🔄 Tor cluster (replicated, containerized, pluggable obfs4 bridges supported)
- 🧰 Privoxy (per-Tor exit)
- 🌐 NGINX stream proxy (to chain Tor→Privoxy→ProtonVPN)
- 🛡️ ProtonVPN outproxy via tunnel-based Privoxy
- 📈 Optional: Prometheus, Grafana, Watchtower
\[User] → \[NGINX Proxy] → \[Tor Cluster] → \[Privoxy Cluster] → \[Privoxy (ProtonVPN)] → \[Internet]
All services run through docker-compose
, replicating Tor + Privoxy nodes and chaining ProtonVPN as a secured egress tunnel.
git clone https://github.com/Axle-Bucamp/chain_proxy_server
cd chain_proxy_server
Create a .env
file in the root folder:
EMAIL=you@example.com
OR_PORT=9001
PT_PORT=9002
NICKNAME=BridgeObfs4Node
GF_SECURITY_ADMIN_USER=admin
GF_SECURITY_ADMIN_PASSWORD=changeme
WATCHTOWER_CLEANUP=true
WATCHTOWER_LABEL_ENABLE=true
ProtonVPN credentials must also be created as a Docker secret named
protonvpn
.
docker compose up -d --scale tor=3 --scale privoxy=3
This runs:
- 3x Tor nodes (
dockurr/tor
) - 3x Privoxy nodes (each mapped to a Tor exit)
- 1x ProtonVPN tunnel (
genericmale/protonvpn
) - 1x final Privoxy egress via VPN
- 1x NGINX stream proxy chaining everything
Test that your IP is not leaking:
curl --proxy http://localhost:8888 https://api.ipify.org
✅ This should return your ProtonVPN IP — not your ISP or Tor IP.
- IP Leak Prevention: Always run this with
--network host
or DNS-secured Docker bridge - Zero Trust Tunnel: ProtonVPN adds exit encryption after multiple Tor circuits
- Obfs4 Support: Deploy obfs4-bridge to bypass censorship
- DNS Hardened: Internal DNS disabled; relies on Tor-resolved or VPN-secured
You can optionally enable:
These services monitor uptime, restarts, and connectivity across your chain.
.
├── docker-compose.yml
├── nginx/
│ └── nginx.conf
├── privoxy/
│ ├── config1
│ ├── config2
│ └── config3
├── torrc.d/
│ ├── tor1.conf
│ ├── tor2.conf
│ └── tor3.conf
├── .env
└── README.md
- Tor replication
- Privoxy routing per Tor node
- NGINX chaining
- Final ProtonVPN tunnel
- Leak tested