A proxy pool service based on the Tor network that rotates IP addresses from multiple Tor instances to provide a stable proxy service.
- 🔄 Automatic rotation of multiple Tor instances (10 by default)
- 🔒 SOCKS5 proxy protocol support
- 🚀 Simple Docker deployment
- ⚡ Automatic IP address switching
- Build the image
docker build -t tor-proxy-pool .
- Run the container
docker run -d \
--name tor-proxy-pool \
--restart unless-stopped \
-p 10086:10086 \
tor-proxy-pool
# Check current IP
curl --socks5 127.0.0.1:10086 https://api.ipify.org/?format=json
# Format output with jq
curl --socks5 127.0.0.1:10086 https://api.ipify.org/?format=json | jq '.'
# Tor SOCKS port range: 38801-38810
SOCKSPort 38801
...
SOCKSPort 38810
# Access Control
SOCKSPolicy accept 127.0.0.1
SOCKSPolicy reject *
# Circuit Update Settings
NewCircuitPeriod 30 # Create new circuit every 30 seconds
CircuitBuildTimeout 10 # Circuit build timeout is 10 seconds
- Default listening port: 10086
- Proxy protocol: SOCKS5
- Number of Tor instances: 10 (can be modified in src/proxy.js by updating TOR_PORTS array)
- Modify SOCKSPort configuration in
config/torrc
- Update TOR_PORTS array in
src/proxy.js
- Rebuild and run the container
Modify the following parameters in config/torrc
:
NewCircuitPeriod
: Adjust the interval for automatic circuit switchingCircuitBuildTimeout
: Adjust the timeout for circuit establishment
- This project is for learning and research purposes only
- Using the Tor network may result in slower network access
- Additional security measures are recommended for production environments
- Support for more protocols
- HTTP proxy
- HTTPS proxy
- Support for more configurations
- Custom number of Tor instances
- Custom circuit update frequency
- Custom listening port