Legal & Compliance Notice
HashRelay is a general-purpose network infrastructure tool. You are solely responsible for ensuring that your use of cryptocurrency mining and this software complies with the laws and regulations of your country or jurisdiction. Mining and related activities are restricted or prohibited in some regions — please review and follow your local rules before downloading or deploying.
System Requirements
| Component | Minimum Requirement |
|---|---|
| Relay Server | Linux x86_64/ARM, 1 core / 512 MB RAM, public IP, ports 8555/9555 open |
| Client | Linux or Windows, same LAN as miners |
| Miners | Any Stratum-compatible miner (BTC/ETH/LTC/KAS…) |
| Database (optional) | SQLite (built-in, no extra install needed); MySQL/PostgreSQL supported |
Step 1 — Deploy Server
Run the one-line installer (recommended) — it downloads hr-server, writes the config, installs the Web UI, and registers a service. Or run a binary from the Downloads page manually.
# Recommended — one-line installer.
# Downloads the latest hr-server binary, writes /etc/hash-relay/server.toml,
# installs the Web UI, and registers a systemd / procd service.
curl -fsSL https://hashrelay.net/releases/scripts/install-server.sh | sudo sh
# Or run a binary downloaded from the Downloads page manually:
./hr-server --config server.tomlConfiguration notes
- •Config lives at /etc/hash-relay/server.toml — set ports, database URL, and the API jwt_secret
- •TLS defaults to a self-signed cert; switch [server.enc].tls to "acme" or "file" for a real domain
- •Open TCP 8555 and UDP 9555 in your firewall (API/Web UI on 8080)
- •Web admin UI: open http://YOUR_SERVER:8080, default password hash — you must change it on first login
Step 2 — Install Client
Install the client on a machine in the same LAN as your miners. Create a client node on the server first (Web UI → Client Nodes) to obtain client_id and token.
# Create a client node on the server first (Web UI → Client Nodes).
# Replace YOUR_* values below with your own before running.
curl -fsSL https://hashrelay.net/releases/scripts/install-client.sh | \
sudo env \
SERVER_ADDR=YOUR_SERVER_IP \
TCP_PORT=8555 \
QUIC_PORT=9555 \
CLIENT_ID=YOUR_CLIENT_ID \
TOKEN=YOUR_ACCESS_TOKEN \
sh
# OpenWrt / already root: omit sudo — pipe to "env ... sh" insteadAlternative: install first, configure later
# Install first, edit config, then restart:
curl -fsSL https://hashrelay.net/releases/scripts/install-client.sh | sudo sh
# OpenWrt / already root: omit sudo on the line above
# Edit /etc/hash-relay/client.toml — set server_addr, tcp_port, quic_port, client_id, token
sudo nano /etc/hash-relay/client.toml
# Restart — Linux (systemd):
sudo systemctl restart hash-relay-client
# Restart — OpenWrt (procd):
/etc/init.d/hash-relay-client restartConfiguration notes
- •Create a client node on the server (Web UI → Client Nodes) before installing — client_id and token must match.
- •Config lives at /etc/hash-relay/client.toml — set server_addr, tcp_port, quic_port, client_id, and token
- •Local listen ports and transport are pushed automatically by the server via ConfigSync — no manual port setup
- •The installer registers a systemd / procd / Windows service for auto-start
- •After editing client.toml, restart: sudo systemctl restart hash-relay-client
Step 3 — Configure Port Mapping
Open the server's web admin panel and create a pool and a port mapping — no command line needed.
- 1
Open the server web admin panel at http://YOUR_SERVER:8080 and sign in. The default password is hash — you must change it on first login.
- 2
Go to Pools → Add Pool, enter a name, coin, and the pool address (e.g. stratum.f2pool.com:3333), then save.
- 3
Go to Port Mappings → Add Mapping, pick a local port (e.g. 13333) and select the pool you just created, then save.
- 4
The mapping goes live instantly — no restart required.
What just happened
- •Point your miners at CLIENT_IP:13333 instead of the pool directly
- •Verify in the admin panel's Dashboard or Status page
- •The tunnel encrypts all traffic automatically from this point on
You're Live!
Your mining relay is active. Here's what to check:
- Client online (heartbeat active)
- Miner shares submitting successfully
- Server logs show no errors
What's Next?
View hashrate stats
Monitor per-worker performance in real time
Enable request aggregation
For large farms — reduce connections 99.8%
Configure alerts
Get notified instantly on anomalies