Private Monero mining · self-hosted

Own the whole operation.

We built this to mine Monero on a stack you own outright — no operator taking a cut, no custodian, and Tor-first networking by default. Choose Pithead OS for a dedicated machine with browser setup, or Docker Compose on your own Linux host.

Pithead OS

Flash. Boot. Make it yours.

A complete operating system for a machine dedicated to your mine. No Linux setup needed.

  1. Download the image and verify its checksum.
  2. Flash a USB stick and boot your machine.
  3. Pick a role and finish setup in your browser.

x86-64 · UEFI · wired ethernet. Installing erases the selected disk.

Docker Compose

Your Linux. Your stack.

Keep the host you manage. One guided setup brings up the same stack and dashboard.

you@home: ~
$ curl -fsSL https://github.com/p2pool-starter-stack/pithead/releases/latest/download/pithead.tar.gz | tar xz
$ cd pithead
$ ./pithead setup
█

Ubuntu Server 24.04 · have your Monero payout address ready.

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

// why we built this

Why it exists — and where to see it.

It started with wanting a Monero mine I owned outright: private, and free of middlemen. None of this is a slogan — each belief is a decision you can see in the defaults, the containers, and the docs.

Own the whole stack.

Your node, your P2Pool, your dashboard — the entire operation runs on hardware you control, from config you can read. Nothing rented and nothing hosted for you.

Tor-first, by default.

Monero, Tari, and P2Pool run as Tor hidden services by default — no port forwarding, no home IP advertised to inbound peers. Runtime egress rides Tor by default, and a host firewall drops direct clearnet dials; the privacy guide lists the opt-in exceptions and the one-time install downloads. P2Pool payout addresses are public, so mine to a dedicated wallet.

Keep what you earn.

P2Pool pays block rewards straight to your wallet — no pool operator, no cut, no account. XMRig has a separate 1% developer donation by default.

And it shouldn't take an expert.

A browser wizard on Pithead OS, or a guided command on your Linux host, sets up the node, Tor, payouts, RandomX tuning, and dashboard. Start with Monero; Tari and the XvB raffle are optional and off for new installs. Preview disruptive changes and use Service Diagnostics when something looks off. The first Monero sync can take hours to days; you keep the control.

// 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 not advertised to inbound peers — RPC stays localhost-bound, and all runtime egress routes over Tor by default. The opt-in clearnet exceptions are documented in the privacy guide.

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, guided setup in a browser or terminal, and docs treated as a first-class deliverable.

2 install paths: OS or Compose
1 dashboard for the operation
0% P2Pool fee
:3333 one endpoint for every rig
0 ports forwarded

// how it fits together

One coordinator. One machine or a fleet.

Pithead coordinates the nodes, privacy, payouts, and dashboard. Mine on the same machine, connect separate RigForge or XMRig workers, or do both. Add optional Tari merge mining and the XvB raffle when you want them.

RigForge / XMRig Miners local CPU or separate rigs
hashrate · :3333
Pithead Coordinator nodes · privacy · payouts · :3333 ↘ XMRvsBeast · optional raffle · off by default
mine · over Tor
Monero + optional Tari mining over Tor

// the projects

Two open-source projects. One private operation.

Both projects are MIT-licensed and built in the open; the upstream software they run, such as P2Pool and XMRig, keeps its own licenses.

RigForge

the miners

Provision a hardware-tuned XMRig miner in one command.

Turn an Ubuntu/Debian machine into a tuned mining worker (macOS support is deprecated and untested). RigForge compiles stock, commit-pinned XMRig from source, applies CPU- and kernel-level tuning aimed at 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.
  • 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 with no wallet in the miner, or at any RandomX Stratum pool with your wallet as the pool user. Workers pointed at Pithead don't need Tor.
  • Stock XMRig, verified Compiles upstream XMRig pinned to a verified commit — no custom binary, no curl | bash. Keeps XMRig's standard 1% dev fee (it funds the upstream XMRig project, not us); one line turns it off. Idempotent re-runs.

// the roadmap

Built for the whole life of a mine.

From private networking and fleet management to installing, updating, and recovering your machine — these capabilities have shipped. Follow the repositories for current work, release notes, and known issues.

the foundation · shipped

1.1

Privacy, by default

Shipped

All runtime egress moved behind Tor with a fail-closed host firewall, every container dropped to non-root, and a Stack Topology panel maps every hop — Tor or clearnet — at a glance.

1.2

Operator alerts

Shipped

An opt-in Telegram bot pings the moment a node or worker drops — and when it recovers — plus a Healthchecks dead-man's switch for the one failure a monitor on the box can never report: the box itself going dark.

1.3+

Trends & insight

Shipped

Persistent telemetry, pool cadence and luck, and earnings estimates after power costs. Optional view-only payout confirmation is beta; Tari confirmation has a known reporting limitation documented in the release notes.

1.4+

Control & fleet

Shipped

Configuration previews and confirmations, signed upgrades, per-rig inspection, stratum TLS with per-rig pinning, and warm failover to a backup stack. Remote rig control is an optional beta feature.

1.12+

Deploy anywhere

Shipped

Co-host behind an existing reverse proxy, let one stack's synced nodes serve others, and point the stack at a remote Monero or Tari node instead of running your own.

A stack you can verify.

LIVE

Pinned components, signed releases, and a public changelog. Updates are checked against the release key before installation, and each release documents its components and known issues.

the appliance experience · shipped

01

Flash a drive, boot a mine

Shipped

Write Pithead OS to USB, boot a dedicated machine, and finish setup in a browser. Pick a coordinator, add mining on its own CPU, or make it a rig for an existing coordinator. Installing to an internal disk erases that disk; the wizard asks you to confirm.

02

Updates that fall back on failure

Shipped

Update from the dashboard or CLI. The signed image is installed on the spare system copy and checked at boot. Chain services start after that copy commits, so a one-way database migration cannot begin on a system still awaiting its boot decision. Rollback covers the system, not data migrations or a failing disk.

03

Back up, restore, start again

Shipped

Export an encrypted backup and restore it from the setup wizard. Config reset keeps synced chains, wallets, and Tor keys while you re-enter settings; factory reset erases the data area. A damaged data partition is repaired before reinitialization is considered.

04

Headless setup and recovery

Shipped

Put a setup token or configuration file on the USB stick to prepare a machine without a monitor. A configuration stick can also recover settings when you cannot sign in. Internal-disk installation still requires you to choose and confirm the disk to erase.

Tuned for a dedicated machine.

LIVE

Pithead OS sizes HugePages to installed RAM, selects the performance CPU governor, and uses a hardware watchdog where available. The Tor-only egress firewall fails closed for IPv6 too. Prefer managing the host yourself? Docker Compose remains a supported install path.

// 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?

Install Pithead OS on a dedicated machine, or use the Docker Compose setup on your Linux host. Both run your Monero node, P2Pool, and a single mining endpoint with Tor-first networking. Your home IP is not advertised to inbound peers and you don't forward a port. After Monero syncs, use the appliance's built-in miner or connect XMRig or RigForge workers. Payouts go straight to your wallet, with no account or custodian. Use a dedicated mining wallet: P2Pool payout addresses are public.

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, and all runtime egress routes over Tor by default behind a fail-closed firewall. The privacy guide maps the exceptions: opt-ins like a faster clearnet initial sync, a remote node you choose (dialled directly), and the one-time install downloads, which reveal your IP to the download host.

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 pays you whenever the pool finds a block while you hold shares in its PPLNS window, with no operator and no fee. Payouts still swing with mining luck, so quiet stretches are normal; the default mini sidechain lets a typical home rig find shares far more often than main, and nano suits a single low-power rig. Pithead runs P2Pool for you and can also enter the XMRvsBeast raffle, which picks winners at random.

What hardware do I need to mine Monero?

For a coordinator with both chains local, allow 16 GB+ RAM and a 600 GB+ SSD, with more room for growth. Pithead OS needs a dedicated x86-64 UEFI machine, wired ethernet, and a 16 GB+ USB stick; installation erases the selected disk. DIY targets Ubuntu Server 24.04. Remote nodes or Monero-only operation reduce storage needs. A worker-only rig holds no chains: size it for CPU mining, not the coordinator's storage budget.

Compare hardware requirements

Should I choose Pithead OS or Docker Compose?

Choose Pithead OS for a machine dedicated to mining: boot from USB, install, and use the browser wizard without setting up Linux yourself. It can coordinate your mine, also mine on its own CPU, or act as a worker for another Pithead. Choose Docker Compose if you already manage a Linux host and want to keep that OS. Both coordinator installs share the same stack, dashboard, and configuration; Compose users maintain their own host OS.

Read the appliance setup guide

What is Monero + Tari merge mining?

Tari merge mining is beta and off for new installs. Enable it to let one unit of proof-of-work secure two chains at once. Through P2Pool, your P2Pool hashrate also merge-mines Tari on the same work, at no cost to the Monero side. It does need a Tari base node — run on this host, with its own RAM and disk, or one you run on another machine — and a Tari payout address. Tari is merge-mined solo, so its reward lands all at once when your hashrate finds a Tari block, and that can be months apart.

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

Yes — Pithead and RigForge are free and MIT-licensed (the upstream software they run, such as P2Pool and XMRig, keeps its own licenses), and P2Pool charges no pool fee. RigForge keeps XMRig's standard 1% dev fee — that funds the upstream XMRig project, not us — and makes it one line to turn off before setup (an already-built worker needs a rebuild to lower it). Electricity and hardware are your own running costs; the dashboard can estimate profit after power. The only optional extra is a 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. Plain XMRig rigs mine and show up on the dashboard; retuning a rig from the dashboard is beta and needs RigForge control, a token, and adoption. For more hashrate, RigForge provisions a kernel-tuned XMRig worker in one command; its published benchmark of a single Ryzen 7800X3D, mining live, measured +3.5% hashrate and +7.6% efficiency versus stock. Results vary by hardware.

Provision with RigForge

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

The XvB raffle is beta and off for new installs. XMRvsBeast runs bonus 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 — and routes the rest to your own P2Pool payouts. The raffle picks winners at random, so donating above a tier's threshold earns nothing extra.

How do updates, backups, and recovery work?

Pithead OS installs signed updates onto a spare system copy and falls back if the new system fails its boot checks. This protects the system image, not one-way database migrations. Save encrypted backups and their passphrases off the machine, then restore from the setup wizard if hardware needs replacing. Config reset keeps synced chains and identity data; factory reset erases the data area. Check release notes for known issues before updating.

Release notes and known issues

Can I upgrade an existing 1.x install?

Upgrades from 1.x are best-effort and may need a fresh setup. Back up with chains first and read the migration guide: Tari's database migration is one-way, needs extra disk space, and must finish without a restart. Upgrades retain your choices but migrate legacy settings and remove retired SSH and Telegram control options. The Monero-only and raffle-off defaults apply to new installs.

Read the 1.x upgrade instructions

// start here

Stand up the whole operation.

Pick a dedicated appliance or your own Linux host. Start with Monero, connect your miners, and add optional features when you need them. Allow hours to days for the first sync, depending on your hardware, disk, and network.