
The CustodyCustodyThe custody of funds. See self-custody and custodial in the dedicated section below.See in the lexicon → article "A Bitcoin nodeNodeComputer that runs the Bitcoin software and takes part in the network by validating blocks and transactions. A « full node » keeps a complete copy of the blockchain.See in the lexicon → at home" covered the easy option : install UmbrelUmbrelEquivalent distribution for mini-PCs or Raspberry Pi, with a polished web interface and an app store (BTCPay, mempool.space, Sparrow Server, and so on).See in the lexicon →, Start9Start9 (StartOS)Umbrel alternative focused on sovereignty and privacy. More technically demanding, more rigorous on privacy.See in the lexicon →, RaspiBlitzRaspiBlitzReady-made software distribution that turns a Raspberry Pi into a Bitcoin and Lightning node. A pioneer of the genre, with an active German-speaking community.See in the lexicon → or MyNodeMyNodeAnother full-stack node distribution, with a commercial model and a paid Premium tier.See in the lexicon → on a Raspberry PiRaspberry PiSmall credit-card-sized computer at a low price (60 to 100 EUR). Lets you run a Bitcoin node at home.See in the lexicon → 5 or a mini-PCMini-PC (NUC)Small fanless computer such as Intel NUC, Beelink or Minisforum. More powerful than a Raspberry Pi, ideal for a serious node running Lightning and BTCPay.See in the lexicon →, follow the wizard, enjoy a clean web interface. That path suits most. But it hides the mechanics under an abstraction layer, and the day something drifts, one is left helpless.
Running Bitcoin CoreBitcoin CoreReference implementation of the Bitcoin software, written in C++ and maintained by an open-source community. This is the software that most nodes run.See in the lexicon → bare, that is the bitcoind daemon directly on a minimal Linux, is the operator's path for those who want to understand. It is rougher at first, but it teaches everything : the bitcoin.conf configuration, the RPCRPC (Remote Procedure Call)Standard protocol for calling functions on a remote program. Bitcoin Core exposes more than 200 RPC commands.See in the lexicon → driving the daemon, the debug.log logs, the optional indexes, the benefits and costs of pruning, the walletWalletSoftware or device that manages your Bitcoin keys and lets you sign transactions. A wallet does not really « hold » your bitcoins, it holds the keys that prove you own them.See in the lexicon →.dat and chainstate backup, the Bitcoin Core update, the connection to an external Sparrow or Specter wallet.
This article follows that path. It covers installation on a Debian/Ubuntu Linux, the archival vs pruned choice, indexes configuration, RPC, Tor access, version-by-version updates, debug via bitcoin-cli, and backup. Reading for those who want to keep a Bitcoin node on a rented server or a mini-PC, without depending on a community distribution.
Hardware and system : what is enough in 2026
Bitcoin CoreBitcoin CoreReference implementation of the Bitcoin software, written in C++ and maintained by an open-source community. This is the software that most nodes run.See in the lexicon → is surprisingly frugal on CPU. An Intel N100, an AMD Ryzen 5500U, a Raspberry PiRaspberry PiSmall credit-card-sized computer at a low price (60 to 100 EUR). Lets you run a Bitcoin node at home.See in the lexicon → 5 or a 250 EUR mini-PCMini-PC (NUC)Small fanless computer such as Intel NUC, Beelink or Minisforum. More powerful than a Raspberry Pi, ideal for a serious node running Lightning and BTCPay.See in the lexicon → are largely enough, even to validate at full speed during initial sync. The limiting factor is elsewhere : the RAM (8 GB minimum, 16 GB comfortable) and especially storage.
On the storage side, two options. Full archival : the full chain since 2009, ~620 GB in May 2026, growing by ~80 GB per year. Pruned : Bitcoin Core keeps only the last N blocks (typically 5 to 50 GB depending on the prune=N in MB), discards old ones over time. Pruned lets you run on a 256 GB SSD. Archival needs 1 TB minimum to have headroom over 3-4 years.
The recommended OS is Debian stable or Ubuntu LTS, minimally installed (no graphical desktop). Bitcoin Core also runs on FreeBSD and NixOS for those who want. macOS and Windows are supported but discouraged for a 24/7 nodeNodeComputer that runs the Bitcoin software and takes part in the network by validating blocks and transactions. A « full node » keeps a complete copy of the blockchain.See in the lexicon → : the Linux stack is more predictable. Avoid Arch or rolling-release distributions for a node : stability beats freshness of packages.
Bitcoin Core install from official binaries
Clean installation goes through the official binaries published on bitcoincore.org, never through a non-official apt repoRepo (repository)Code repository on GitHub or an equivalent platform. The Bitcoin Core repo is github.com/bitcoin/bitcoin.See in the lexicon →. Binaries come with GPG signatures from Bitcoin CoreBitcoin CoreReference implementation of the Bitcoin software, written in C++ and maintained by an open-source community. This is the software that most nodes run.See in the lexicon → contributors who deterministically reproduced the compilation (Guix builds). Verifying these signatures before execution is the first good operational habit.
Typical procedure : download the bitcoin-X.Y.Z-x86_64-linux-gnu.tar.gz archive, the SHA256SUMS archive, and the SHA256SUMS.asc file. Import the GPG keys of the release signers from the bitcoin/bitcoin repository on GitHubGitHubWeb platform that hosts most of the world's open-source projects, including Bitcoin Core, electrs, BDK and LDK. Lets you read the code, browse change history and submit contributions.See in the lexicon →. Check that SHA256SUMS.asc validates SHA256SUMS (gpg --verifyDon't trust, verifyBitcoiner mantra. Trust no one (bank, government, exchange, influencer), verify on your own through your own node.See in the lexicon →), then that the downloaded archive matches the listed hashHashFunction that turns data of any size into a fixed-size fingerprint. The same input always yields the same output, but you cannot go back from output to input.See in the lexicon → (sha256sum -c). If any of these steps fails, do not execute the binary. Tar -xzf, then copy bitcoind and bitcoin-cli to /usr/local/bin.
Create a dedicated user (adduser --system bitcoin), create the data directory (mkdir /home/bitcoin/.bitcoin, chown bitcoin:bitcoin), write a systemd unit file launching bitcoind as that user (User=bitcoin, ExecStart=/usr/local/bin/bitcoind -datadir=/home/bitcoin/.bitcoin -conf=/home/bitcoin/.bitcoin/bitcoin.conf -daemon). The service then runs via systemctl start bitcoind, starts at boot, logs into journalctl.
Base configuration : bitcoin.conf
The bitcoin.conf file in the datadir contains all bitcoind options. A typical 2026 configuration looks like : dbcache=4000 (memory cache in MB, speeds initial sync), maxconnections=40 (max peers), maxuploadtarget=5000 (upload cap in MB per day, useful on limited connections), txindex=1 if you want to query any historical transaction, prune=0 for archival or prune=10000 to keep only the last 10 GB.
For the RPCRPC (Remote Procedure Call)Standard protocol for calling functions on a remote program. Bitcoin Core exposes more than 200 RPC commands.See in the lexicon → : server=1 enables the RPC interface, rpcauth=... or rpcuser=... / rpcpassword=... defines authentication (prefer rpcauth to store the hashHashFunction that turns data of any size into a fixed-size fingerprint. The same input always yields the same output, but you cannot go back from output to input.See in the lexicon → rather than the plain password), rpcbind=127.0.0.1 / rpcallowip=127.0.0.1 binds listening to local loopback (security must if the nodeNodeComputer that runs the Bitcoin software and takes part in the network by validating blocks and transactions. A « full node » keeps a complete copy of the blockchain.See in the lexicon → is on an exposed server). To expose the RPC to an external walletWalletSoftware or device that manages your Bitcoin keys and lets you sign transactions. A wallet does not really « hold » your bitcoins, it holds the keys that prove you own them.See in the lexicon → on the local network, cautiously open via rpcallowip toward a precise IP.
For Tor : proxy=127.0.0.1:9050 routes outgoing connections through the local Tor daemon, listenonion=1 publishes an onion v3 service for incoming connections. onlynet=onion enforces Tor only (interrupts if Tor is down, so not for a beginner). Tor must be installed separately : apt install tor, check the SOCKS5 socket of the daemon listens on 9050.
Pruning and indexes : tuning to needs
Pruning lets you keep Bitcoin CoreBitcoin CoreReference implementation of the Bitcoin software, written in C++ and maintained by an open-source community. This is the software that most nodes run.See in the lexicon → useful on small storage. With prune=10000, the nodeNodeComputer that runs the Bitcoin software and takes part in the network by validating blocks and transactions. A « full node » keeps a complete copy of the blockchain.See in the lexicon → still fully validates the chain during initial sync (so the Initial Block Download remains long, ~620 GB to download and validate), but then keeps only the last 10 GB of blocks. It can serve queries on recent UTXOs and send or receive transactions, but cannot answer a query on an old historical block.
Optional indexes enrich capabilities. txindex=1 indexes all transactions by TXID, letting an external walletWalletSoftware or device that manages your Bitcoin keys and lets you sign transactions. A wallet does not really « hold » your bitcoins, it holds the keys that prove you own them.See in the lexicon → or explorer fetch any historical transaction (incompatible with pruned). coinstatsindex=1 lets you query getutxos quickly without rescan. blockfilterindex=1 enables BIPBIP (Bitcoin Improvement Proposal)Standard document that describes a proposed improvement to the Bitcoin protocol. Numbered (BIP 32, BIP 39, BIP 174, and so on). Open, public process on GitHub.See in the lexicon → 157/158 compact block filters (useful for light SPV wallets connecting to your node).
Typical 2026 choices. Case 1 : archival node with txindex to serve Sparrow/Specter, 1 TB SSD, ~620 GB used. Case 2 : pruned node at 50 GB with blockfilterindex to serve a mobile wallet (Sparrow Server, Electrum personal server), 256 GB SSD largely enough. Case 3 : archival node without indexes for pure validation and peer-to-peer (running the network), 1 TB SSD, no external wallet. Choose based on what you do with it, not based on the coolness of options.
RPC and connecting an external wallet
Bitcoin CoreBitcoin CoreReference implementation of the Bitcoin software, written in C++ and maintained by an open-source community. This is the software that most nodes run.See in the lexicon →'s RPCRPC (Remote Procedure Call)Standard protocol for calling functions on a remote program. Bitcoin Core exposes more than 200 RPC commands.See in the lexicon → is the APIAPI (Application Programming Interface)Interface that lets one program query another program or service. mempool.space exposes a public API for querying the chain.See in the lexicon → that lets you drive the daemon from outside. bitcoin-cli is just a command-line client speaking JSON-RPC to bitcoind. Once the RPC is configured, any tool (Sparrow WalletWalletSoftware or device that manages your Bitcoin keys and lets you sign transactions. A wallet does not really « hold » your bitcoins, it holds the keys that prove you own them.See in the lexicon →, Specter Desktop, Lightning lnd, BTCPay Server) can connect to the nodeNodeComputer that runs the Bitcoin software and takes part in the network by validating blocks and transactions. A « full node » keeps a complete copy of the blockchain.See in the lexicon → to get the chain status, read transactions, broadcast transactions, watch addresses or an xpubxpub (extended public key)Extended public key. Lets a read-only wallet see addresses and balances without being able to sign. Used for tracking and observation.See in the lexicon →.
To connect Sparrow Wallet : Settings, Server, Bitcoin Core, fill in host (the node's IP), port (8332 by default), user/password (those of bitcoin.conf), test the connection. Sparrow then starts querying the node to track configured xpubs, without depending on a third-party server. For Specter Desktop : same principle via Connect Node.
If Bitcoin Core and Sparrow run on the same machine, rpcallowip=127.0.0.1 is enough. If Sparrow runs on a separate laptop on the LAN, open rpcallowip=192.168.1.0/24 (your local subnet) and rpcbind=0.0.0.0 (listen on all interfaces) or more precisely rpcbind=192.168.1.X. If the node is on a remote VPSVPS (Virtual Private Server)Virtual server rented from a hosting provider (Hetzner, DigitalOcean, OVH), accessed via SSH. Typical price 5 to 30 EUR per month.See in the lexicon →, exposing the RPC is very risky : prefer an SSHSSH (Secure Shell)Protocol for connecting to a remote server's command line in an encrypted way.See in the lexicon → tunnel (ssh -L 8332:127.0.0.1:8332 vps) rather than opening port 8332 on the Internet.
Debug, update, backup
Debug. Bitcoin CoreBitcoin CoreReference implementation of the Bitcoin software, written in C++ and maintained by an open-source community. This is the software that most nodes run.See in the lexicon → writes debug.log in the datadir. It is the first thing to check when something drifts : tail -f ~/.bitcoin/debug.log gives a real-time stream. For ad hoc queries, bitcoin-cli getblockchaininfo, getnetworkinfo, getmempoolinfo, getpeerinfo give the global state. bitcoin-cli help lists the ~200 available RPCRPC (Remote Procedure Call)Standard protocol for calling functions on a remote program. Bitcoin Core exposes more than 200 RPC commands.See in the lexicon → commands. The rule : before googling an error, read 50 lines of debug.log and try 3 bitcoin-cli commands.
Update. Bitcoin Core publishes about one major release per year (24 in 2022, 25 in 2023, etc.) and more frequent minor releases. Procedure : systemctl stop bitcoind, download the new archive, verifyDon't trust, verifyBitcoiner mantra. Trust no one (bank, government, exchange, influencer), verify on your own through your own node.See in the lexicon → GPG signatures, replace binaries in /usr/local/bin, systemctl start bitcoind. Read release notes ahead, notably any chainstate or walletWalletSoftware or device that manages your Bitcoin keys and lets you sign transactions. A wallet does not really « hold » your bitcoins, it holds the keys that prove you own them.See in the lexicon →.dat format migrations. A minor version bump passes in minutes ; a major one may require partial re-validation (5-30 minutes depending on hardware).
Backup. wallet.dat (if you use Bitcoin Core's built-in wallet) must be backed up off the server at creation, and after any key import. The chain and chainstate (the UTXOUTXO (Unspent Transaction Output)« Chunk » of bitcoin received and not yet spent. A wallet does not have a single balance, it has a collection of UTXOs whose sum makes up the balance.See in the lexicon → set, ~10 GB) need no backup : they rebuild from the network if lost. To migrate a nodeNodeComputer that runs the Bitcoin software and takes part in the network by validating blocks and transactions. A « full node » keeps a complete copy of the blockchain.See in the lexicon → to a new server, copy the whole datadir via rsync, launch bitcoind on the new machine, wait a few minutes of re-validation, that is all. The wallet itself must be treated with the same care as a seed phraseSeed phraseSequence of 12 or 24 words (usually in English) that encodes your master key. Universal wallet backup : with these words, you can restore your funds on any compatible software.See in the lexicon → : encrypted backup off the server, ideally with a BIP39BIP39Standard defining the list of 2,048 words used for seed phrases. Lets every wallet brand generate seeds that are compatible with each other.See in the lexicon → passphrasePassphraseExtra word or phrase you add to your seed phrase to create a hidden wallet. Optional security layer, independent of the seed.See in the lexicon → in a hardware walletHardware walletSmall dedicated device (Ledger, Trezor, Coldcard, BitBox, etc.) that keeps the private key away from a potentially compromised computer. Signs transactions inside the device itself.See in the lexicon → rather than via wallet.dat.
Disclaimer
Educational and informational content only: not investment, tax or legal advice. Bitcoin carries significant risks, including high volatility and the possible loss of invested capital. Each reader remains responsible for their decisions; when in doubt, consult a qualified professional in your jurisdiction.
See also
For the easy option with web interface (UmbrelUmbrelEquivalent distribution for mini-PCs or Raspberry Pi, with a polished web interface and an app store (BTCPay, mempool.space, Sparrow Server, and so on).See in the lexicon →, Start9Start9 (StartOS)Umbrel alternative focused on sovereignty and privacy. More technically demanding, more rigorous on privacy.See in the lexicon →, RaspiBlitzRaspiBlitzReady-made software distribution that turns a Raspberry Pi into a Bitcoin and Lightning node. A pioneer of the genre, with an active German-speaking community.See in the lexicon →), see A Bitcoin node at home. For advanced Lightning topics built on the nodeNodeComputer that runs the Bitcoin software and takes part in the network by validating blocks and transactions. A « full node » keeps a complete copy of the blockchain.See in the lexicon →, see Advanced Lightning Network. For the overview of technical topics, see the guide Advanced Bitcoin.