Skip to content
TLDBunker

Use case

Run your own Monero node on a VPS

The short answer

Running your own Monero node means your wallet talks to a daemon you control instead of a public remote node that can log your requests. Put monerod on a disk-heavy VPS, verify the signed binary, prune the blockchain to save space, bind the RPC to localhost or Tor, and let it sync. You strengthen the network and stop leaking wallet metadata.

Recommended plan: Pro — 4 vCPU / 8 GB / 120 GB NVMe

Your wallet stops trusting a public remote node that can see your requests

Pruning keeps the disk footprint down while still validating every block

Bind the RPC to localhost or reach it over Tor — never expose it wide open

You add a validating peer to the Monero network, not just consume it

No-KYC host, orderable with a 32-character ID and paid in Monero

Why self-host a Monero node

When you open most Monero wallets, they connect to a public remote node run by someone else. That node can’t steal your funds and can’t break Monero’s on-chain privacy — ring signatures, stealth addresses and RingCT still do their job. But the node does see the requests your wallet makes and the IP they come from. That is a metadata seam worth closing.

Running your own monerod removes the middleman. Your wallet queries a daemon you control, so no third party learns which outputs you’re scanning for or when you’re online. You also stop being a pure consumer of the network: a synced node validates every block and relays transactions, adding one more independent verifier to Monero. A VPS is the natural home for it — always on, on a fixed connection, and paid for in Monero with no KYC on our end.

Download and verify monerod

Never run a coin daemon you haven’t verified. The Monero project publishes a signed hashes.txt; check the archive against it before you extract anything.

# on a fresh Ubuntu VPS
cd /tmp
# download the CLI tarball + the signed hashes file from getmonero.org/downloads
# import the maintainer signing key, then:
gpg --verify hashes.txt        # must say: Good signature from the Monero key
sha256sum -c <(grep 'monero-linux-x64' hashes.txt)   # OK = archive matches
tar -xvf monero-linux-x64-*.tar.bz2
sudo install monero-x86_64-linux-gnu-*/monerod /usr/local/bin/

If the GPG line doesn’t say Good signature or sha256sum doesn’t print OK, stop and re-download. A tampered daemon defeats the entire point of self-hosting.

Run it pruned, with the RPC locked down

Pruning is the single biggest disk saver. A pruned node still checks every block — it just drops most historical ring data it doesn’t need to keep — so it’s the right default for a wallet backend. Bind the RPC to localhost so nothing on the public internet can poke it.

monerod \
  --prune-blockchain \
  --data-dir /srv/monero \
  --rpc-bind-ip 127.0.0.1 \
  --rpc-bind-port 18081 \
  --no-igd \
  --detach
# watch progress:
tail -f /srv/monero/bitmonero.log

The P2P port (18080) is what lets your node talk to peers and pull blocks; it’s fine to allow it. The RPC port is the sensitive one — that’s what your wallet talks to, and it must never be open to the world. Keep it on 127.0.0.1, and if you need to reach it from your laptop, tunnel over SSH or expose it as a Tor onion service rather than opening the port in your firewall.

Let it sync, then point your wallet at it

The first sync is the slow part: the node downloads and validates the full chain from genesis, which is CPU- and disk-bound. Let it run to completion — it’s a one-time cost. Once monerod reports it’s synchronised, connect a wallet:

# CLI wallet talking to your local daemon
monero-wallet-cli --daemon-address 127.0.0.1:18081

# or the same daemon reached over an SSH tunnel from your laptop:
ssh -N -L 18081:127.0.0.1:18081 user@your-vps
monero-wallet-cli --daemon-address 127.0.0.1:18081

Running over Tor

To keep your node’s IP out of the peer-to-peer gossip, route its outbound traffic through Tor. Install tor on the box and start monerod with a transaction proxy so broadcasts don’t reveal your originating address:

monerod \
  --prune-blockchain \
  --data-dir /srv/monero \
  --rpc-bind-ip 127.0.0.1 \
  --tx-proxy tor,127.0.0.1:9050 \
  --no-igd --detach

For inbound reachability over Tor you can also publish an --anonymous-inbound onion address, which lets other privacy-conscious nodes connect to you without either side learning a clearnet IP. If you’re already comfortable with hidden services, the same pattern that hosts a Tor relay applies here.

Sizing

The Monero blockchain is large and still growing, so disk is the constraint, not CPU or RAM. That’s why this use case maps to the Pro plan: a pruned node wants tens of GB today and steadily more over time, and a full archival node wants considerably more. Give yourself headroom so an unattended daemon never runs the volume to zero mid-block. A modest core count and a few GB of RAM are plenty; the disk is what you’re paying for.

What this page is and isn’t

This is a guide to hosting your own validating node for your own wallet. It isn’t financial advice, and running a node doesn’t anonymise a transaction that was already deanonymised elsewhere. We rent you a private, no-KYC server with the disk to hold the chain; the node, the keys, and the wallet stay entirely yours.

Get started

Plans that fit this workload

Nano

Tor relay, WireGuard, small nodes

$5 /mo

  • CPU 1 vCPU
  • RAM 2 GB
  • SSD 25 GB NVMe
  • NET 2 TB transfer
Choose Nano
Most popular

Standard

Self-hosting, Nextcloud, trading bots

$12 /mo

  • CPU 2 vCPU
  • RAM 4 GB
  • SSD 60 GB NVMe
  • NET 4 TB transfer
Choose Standard

Pro

Monero/Bitcoin nodes, heavier workloads

$24 /mo

  • CPU 4 vCPU
  • RAM 8 GB
  • SSD 120 GB NVMe
  • NET 8 TB transfer
Choose Pro

Max

Seedbox, multi-service, teams

$48 /mo

  • CPU 8 vCPU
  • RAM 16 GB
  • SSD 240 GB NVMe
  • NET 16 TB transfer
Choose Max

Prices are per month billed monthly. Commit longer and save — 10% off 6 months · 20% off 12 months.

Pay with XMR · BTC · BTC-LN · USDT · LTC. No email required to order.

Frequently asked questions

Pruned node or full archival node — which do I need?

For a personal wallet backend, a pruned node is the right default. It validates every block and keeps all of its own transaction outputs, but discards about seven-eighths of other rings' historical data, cutting disk use sharply. Run a full archival node only if you serve other wallets, build a block explorer, or need the complete history.

How much disk does the blockchain need?

The Monero blockchain is large and grows continuously — think tens of GB for a pruned node, more for full archival, both trending up over time (tens of GB, and growing). Provision the Pro (disk) plan and leave clear headroom so an unattended node doesn't fill the volume mid-sync.

How long does the initial sync take?

The first sync downloads and verifies the whole chain, so it is CPU- and I/O-bound and can run for hours to more than a day depending on the host, the disk, and whether you sync over Tor. It is a one-time cost; after that the node only fetches new blocks as they arrive.

Why run my own node instead of using a public remote node?

A public remote node sees which transactions your wallet asks about and can correlate them with your IP. Monero's ring signatures hide amounts and mix your spends, but the node you query is still a metadata vantage point. Your own node removes that third party and gives you a peer you fully control.

Spin up a VPS with no email in minutes

A 32-character ID, a Monero payment, and you are online. No name, no email, no KYC.