Monero Node Setup (2026)

Run monerod — verify your own transactions, support the network
TL;DR: Download from getmonero.org. Run ./monerod. Wait 12-48h for sync. Connect your wallet. Full node = maximum privacy + network support. Pruned node = 65GB instead of 180GB. Add Tor for IP privacy. Required for solo mining and P2Pool.

Requirements

ResourceFull NodePruned Node
Storage~180GB~65GB
RAM4GB min, 8GB recommended4GB min
CPUAny modern CPUAny modern CPU
Bandwidth~15-50GB/month~10-30GB/month
Initial sync12-48h (SSD)8-24h (SSD)
VerificationFullFull

SSD is essential. HDD sync takes 3-14 days. Don't try it. Even a cheap SATA SSD cuts sync time to under 48 hours.

Install & Run (Linux)

# Download latest from getmonero.org
wget https://downloads.getmonero.org/cli/linux64
tar -xjf linux64
cd monero-x86_64-linux-gnu-*

# Run the daemon
./monerod --data-dir ~/.bitmonero \
  --log-level 0 \
  --block-sync-size 10

That's it. monerod starts syncing the blockchain. Leave it running. On first run, it downloads and verifies every block since 2014.

Pruned Node (Save Space)

# 65GB instead of 180GB — still verifies everything
./monerod --prune-blockchain --data-dir ~/.bitmonero

A pruned node keeps only 1/8 of the blockchain data but still verifies all transactions. You sacrifice nothing in security — only other nodes can't sync the full chain from you. This is the recommended setup for most users.

Configuration File

# ~/.bitmonero/monerod.conf
#
# Network
p2p-bind-port=18080
rpc-bind-port=18081
rpc-bind-ip=127.0.0.1
confirm-external-bind=0
restricted-rpc=1

# Performance
db-sync-mode=safe
block-sync-size=10
prep-blocks-threads=4

# Pruning (uncomment to enable)
# prune-blockchain=1

# Tor (uncomment to enable)
# proxy=127.0.0.1:9050
# anonymous-inbound=YOUR_ONION.onion:18083,127.0.0.1:18083,64
# pad-transactions=1

# Logging
log-level=0
max-log-file-size=10485760

Run Over Tor

# Install Tor
sudo apt install tor    # Debian/Ubuntu
brew install tor        # macOS

# Start Tor
sudo systemctl start tor

# Run monerod through Tor
./monerod --proxy 127.0.0.1:9050 \
  --pad-transactions \
  --no-igd

--proxy routes all P2P connections through Tor. --pad-transactions adds padding to prevent traffic analysis. --no-igd disables UPnP (unnecessary over Tor).

For a hidden service (so other Tor nodes can connect to you), add your .onion address with --anonymous-inbound.

Connect Your Wallet

# Feather Wallet: Settings → Node → Add custom node
# Address: 127.0.0.1   Port: 18081

# CLI wallet:
./monero-wallet-cli --daemon-address 127.0.0.1:18081

# GUI wallet: Settings → Node → Local node
# monerod path: /path/to/monerod

Once your node is synced, point your wallet at 127.0.0.1:18081. No remote node needed. Maximum privacy — your transaction data never leaves your machine.

Run as System Service (Linux)

# /etc/systemd/system/monerod.service
[Unit]
Description=Monero Daemon
After=network.target

[Service]
User=monero
ExecStart=/opt/monero/monerod --config-file /etc/monerod.conf \
  --non-interactive --detach 0
Restart=always
RestartSec=30

[Install]
WantedBy=multi-user.target
# Enable and start
sudo systemctl enable monerod
sudo systemctl start monerod
sudo journalctl -u monerod -f  # Watch logs

Full Node vs Pruned vs Remote

AspectFullPrunedRemote
PrivacyMaximumMaximumIP exposed*
Storage~180GB~65GB0
Network supportFull relayPartialNone
Sync time12-48h8-24hNone
VerificationAll TXAll TXTrust node
MiningSolo + PoolSolo + PoolPool only

*Remote node IP exposure mitigated by using Tor (Feather/Cake default).

Should You Run a Node?

If you use Monero regularly: yes. A pruned node needs 65GB and runs silently in the background. You get maximum privacy and help the network.

If you mine: required. Solo mining and P2Pool need a local node. Pool mining benefits from one too (faster share submission).

If you just want to receive XMR occasionally: a remote node over Tor (Feather Wallet default) is fine. But consider running a node anyway — more nodes = stronger network.

Need XMR? arnoldnakamura — 683 trades, 100% feedback.