Private Monero mining · self-hosted

Run the whole operation yourself.

The P2Pool Starter Stack is open-source infrastructure for private, optimized Monero + Tari mining on hardware you own — an orchestrator and the miners that feed it. No custodians. No exposed home IP. No hand-tuning.

you@home: ~/pithead
$ curl -fsSL https://github.com/p2pool-starter-stack/pithead/releases/latest/download/pithead.tar.gz | tar xz
$ cd pithead && cp config.json.template config.json
$ ./pithead setup
✓ Tor provisioned · kernel tuned · stack live over HTTPS

MIT-licensed · built in the open · zero third-party requests

9 services, one compose file
2 chains, merge-mined
1 command to set up
:3333 one endpoint for every rig
0 ports forwarded · IP exposed

// how it fits together

An orchestrator, and the miners that feed it.

Point as many RigForge miners as you like at a single Pithead. The stack handles the nodes, privacy, payouts, and optimization — the miners just hash.

RigForge Miners many machines · just hash
hashrate · :3333
Pithead Orchestrator nodes · privacy · payouts · :3333 ↘ XMRvsBeast · algorithmic hashrate split
merge-mine · over Tor
Monero + Tari Merge-mined over Tor

// the projects

Two open-source projects. One private operation.

Everything is MIT-licensed and built in the open.

RigForge

the miners

Provision a hardware-tuned XMRig miner in one command.

Turn any Ubuntu/Debian — or macOS — machine into a tuned mining worker. RigForge compiles stock, commit-pinned XMRig from source, applies CPU- and kernel-level tuning for maximum RandomX hashrate, and runs it as a managed service — then points it at your stack, or any RandomX pool.

  • One command, bare metal to mining Installs the toolchain, compiles commit-pinned upstream XMRig, and starts it as a managed service — on Ubuntu/Debian or macOS.
  • Measurably faster, and cooler +3.5% hashrate and +7.6% efficiency on a Ryzen 7800X3D, measured live against stock XMRig — and +6.6% on a 48-core EPYC.
  • Hardware-aware tuning Detects your CPU (EPYC, Ryzen X3D, …), applies a matching profile, then live-A/Bs the hardware prefetcher to keep the fastest.
  • Kernel-tuned (Linux) HugePages (1 GB / 2 MB), MSR access, NUMA binding, and a performance governor — configured for you.
  • Plug-and-play Points at Pithead, or any RandomX Stratum pool. No wallet in the miner; workers don't need Tor.
  • Stock XMRig, verified Compiles upstream XMRig pinned to a verified commit — no custom binary, no curl | bash, a 0% dev fee (XMRig's donate-level pinned to 0), and idempotent re-runs.

// the roadmap

v1.0 — feature-complete, at the release gate.

Built in the open, issue by issue — no vaporware, no roadmap-for-sale. RigForge's v1.0 is done; Pithead's is feature-complete and through its release gate. Then the appliance era: flash a drive, boot, and mine.

v1.0 · the launch, wave by wave

01

Correctness & data-safety

Shipped

Killed the silent-failure bugs that burn early adopters — no surprise re-syncs, no no-op applies, no stale generated config, no vanished share history.

02

Privacy & security

Shipped

Closed every clearnet DNS and stats leak, added optional stratum + dashboard auth, made the proxy fail closed on an empty token, and shut the SSRF door — with a privacy guide mapping every connection.

03

The dashboard

Shipped

The thing people screenshot — routed hashrate everywhere, an honest tier, explicit VIP status, a toggleable averaging window, and an operator-first layout.

04

CI & test hardening

Shipped

Every container image built in CI with hadolint, every script linted, and backup/restore plus host helpers under an expanded test suite.

05

Release gate & launch

The finish line

A full end-to-end test on a real Ubuntu server — passed. Left: the GHCR release pipeline and refreshed launch assets, then tag v1.0.

v1.0 — the whole operation, on real hardware.

SHIP

End-to-end tested on a real Ubuntu server, packaged, and versioned in the open — RigForge's v1.0 is already done.

beyond v1.0

v1.1

Control & insight

Change any setting from the dashboard, one-click upgrades, an interactive Telegram bot, operator alerting (node/worker-down + an external dead-man's switch), a pool cadence & luck panel, and persistent time-series telemetry — plus privacy on by default, routing the P2Pool sidechain and the XvB upstream through Tor. RigForge adds guided BIOS tuning and a richer stats API.

v2

The appliance era

Flash a USB, boot, and mine. Self-provisioning appliance images for the stack host and RigForge miners, an immutable Podman/Quadlet runtime, and standalone Monero & Tari node-starter stacks.

// how we build

The XMR ethos, in the architecture.

01

Privacy is the default, not a setting

Inbound rides Tor hidden services — no port forwarding, your home IP never shown to a peer — and RPC stays localhost-bound. The few clearnet outbound paths left in v1.0 are documented, and go Tor-by-default in v1.1.

02

Least privilege, everywhere

Capability-scoped containers, a read-only Docker-socket proxy kept separate from a start/stop-only one, owner-only secrets.

03

Verifiable and pinned

Third-party binaries are SHA256-checked and version-pinned. No curl | bash trust.

04

The why lives in the code

Non-obvious decisions are documented inline with their reasoning and the issue that drove them.

05

Small, reversible, issue-driven

Config changes are previewed and warn before anything disruptive; failures degrade gracefully.

06

Respect the operator's time

Sensible auto-tuning, one-command setup, and docs treated as a first-class deliverable.

// questions, answered

How to mine Monero privately, answered.

Everything people ask before they start — and what to tell anyone who asks you.

How do I mine Monero privately at home?

Run the P2Pool Starter Stack. One command stands up a private Monero full node, P2Pool, and a single mining endpoint behind Tor — your home IP is never advertised to an inbound peer and you never forward a port. Point any XMRig rig (or a RigForge worker) at it and you're mining straight to your own wallet, no account and no custodian.

Start with Pithead

Do I have to forward ports or expose my home IP to mine Monero?

No. Pithead runs Monero, Tari, and P2Pool as Tor hidden services, so inbound peers reach you over an onion address and your router stays shut. RPC is bound to localhost. A couple of outbound yield paths still touch clearnet in v1.0 — every connection is mapped in the privacy guide, and they move to Tor-by-default in v1.1.

What is P2Pool, and why mine to it instead of a centralized pool?

P2Pool is a decentralized, peer-to-peer Monero mining pool. There's no operator, no account, and no pool fee — the network pays block rewards straight to your own wallet. The P2Pool Starter Stack runs your own P2Pool node, so you get decentralized, zero-fee payouts without the fiddly setup.

Is solo Monero mining worth it, or should I use a pool?

Solo mining only pays when you personally find a block, which can take a very long time on home hardware. P2Pool gives you steady, proportional payouts with no operator and no fee — the best of both. Pithead runs P2Pool for you and can also grab XMRvsBeast bonus rounds to lift your effective yield.

What hardware do I need to mine Monero?

For the stack host: Ubuntu Server 24.04, 16 GB+ RAM, and an SSD (~300 GB pruned; 2–4 TB for set-and-forget). Mining itself is CPU-bound — Monero's RandomX runs on any modern AMD or Intel CPU, and chips with large L3 cache (Ryzen X3D, EPYC) shine. RigForge auto-detects your CPU and tunes the miner for you.

What is Monero + Tari merge mining?

Merge mining lets one unit of proof-of-work secure two chains at once. Through P2Pool, every hash you submit mines Monero and merge-mines Tari at the same time — a second payout for zero extra power, hardware, or configuration.

Is it free? Are there any pool fees or a dev fee?

Yes — it's free and MIT-licensed. P2Pool charges no pool fee. RigForge compiles stock XMRig with the dev-fee pinned to 0%. No token, no premine, no VC — just an optional Monero donation address if a stack saves you time.

Can I point my existing XMRig miners at it?

Yes. Any XMRig or RandomX rig connects to the stack's single endpoint at host:3333 — no wallet in the miner, no per-rig pool config. For maximum hashrate, RigForge provisions a kernel-tuned XMRig worker in one command and measured +3.5% hashrate and +7.6% efficiency on a Ryzen 7800X3D versus stock.

Provision with RigForge

What is XMRvsBeast (XvB), and how does the optimizer use it?

XMRvsBeast runs bonus raffle rounds for miners who lend a little hashrate. Pithead's algorithmic optimizer watches XvB and shifts just enough hashrate to hold your tier — donating the minimum — then hands every spare cycle back to your own P2Pool payouts. No manual tuning, no over-donating.

// start here

Stand up the whole operation.

A private, multi-rig, merge-mining stack — running before your coffee gets cold.