node

Running a Bitcoin Node on a Cloud Server in 2026: Full Setup Guide

Running a Bitcoin node on a cloud server is the easiest way to verify your own transactions without dedicated hardware. Here's the complete 2026 setup guide.

bitcoin nodefull nodeVPScloud serverbitcoin coreself-sovereignty

A Bitcoin full node independently validates every transaction and block against the Bitcoin rules. You don't have to trust Coinbase or any other service about your balance — your node checks for itself.

Running a node on a cloud server is the simplest path: no dedicated hardware, accessible from anywhere, and no space requirement in your home.

Why Run a Node?

Verification: Your wallet queries your own node instead of third parties. You verify your balance directly, not through someone else's data.

Privacy: Blockchain queries reveal which addresses you care about. When you use someone else's node, they see your addresses. Your own node sees only your own traffic.

Network health: Every node strengthens the network. Nodes enforce the consensus rules — a higher node count makes it harder for any party to push through a protocol change without widespread adoption.

Lightning Network: If you run a Lightning node (LND, CLN), it needs a Bitcoin full node underneath it. Your own node means your Lightning node is fully independent.

Cloud Server Requirements (2026)

Bitcoin's blockchain is now over 600 GB and growing. Requirements:

ComponentMinimumRecommended
RAM2 GB4 GB
CPU2 vCPUs4 vCPUs
Storage700 GB SSD1 TB SSD
Bandwidth500 GB/month1 TB/month
OSUbuntu 22.04Ubuntu 24.04

Storage is the main cost driver. SSDs are required — hard drives are too slow for the initial block download.

Recommended Cloud Providers

Provider4 GB RAM / 2 vCPU / 800 GB SSDNotes
Hetzner (Germany)~€15/monthBest price, fast SSDs, European servers
DigitalOcean~$48/monthEasy UI, good bandwidth
Vultr~$40/monthWorldwide locations
Linode (Akamai)~$48/monthGood reliability
AWS Lightsail~$40/monthEasy billing integration

Hetzner is the price winner by a large margin. The main downside: European server location increases latency for US users slightly, which rarely matters for a node.

Note: Some cloud providers restrict high-bandwidth Bitcoin traffic on residential/shared plans. Check terms before committing. Hetzner and Vultr are known to be Bitcoin-friendly.

Step-by-Step Setup Guide

1. Create Your Server

Deploy Ubuntu 24.04 LTS on your chosen provider. Choose a 4 GB RAM instance with at least 800 GB SSD storage.

During setup:

  • Add your SSH public key for authentication
  • Disable password authentication
  • Note your server's public IP address

2. Initial Server Configuration

# SSH into your new server
ssh root@YOUR_SERVER_IP

# Update system packages
apt update && apt upgrade -y

# Create non-root user
adduser bitcoin
usermod -aG sudo bitcoin

# Switch to bitcoin user for everything below
su - bitcoin

3. Install Bitcoin Core

# Download latest Bitcoin Core (check bitcoincore.org for current version)
wget https://bitcoincore.org/bin/bitcoin-core-27.1/bitcoin-27.1-x86_64-linux-gnu.tar.gz

# Download and verify signatures
wget https://bitcoincore.org/bin/bitcoin-core-27.1/SHA256SUMS
wget https://bitcoincore.org/bin/bitcoin-core-27.1/SHA256SUMS.asc

# Verify the checksum
sha256sum --check SHA256SUMS --ignore-missing

# Extract and install
tar -xzf bitcoin-27.1-x86_64-linux-gnu.tar.gz
sudo install -m 0755 -o root -g root -t /usr/local/bin bitcoin-27.1/bin/*

Always verify the download signatures. Never run binaries you haven't verified.

4. Configure Bitcoin

mkdir ~/.bitcoin
cat > ~/.bitcoin/bitcoin.conf << EOF
# Enable server mode (required for RPC)
server=1
daemon=1

# Reduce memory usage
dbcache=512

# Limit connections
maxconnections=40

# Enable RPC (for your wallet or Lightning node to connect)
rpcallowip=127.0.0.1
rpcbind=127.0.0.1
rpcuser=bitcoinrpc
rpcpassword=CHANGE_THIS_TO_STRONG_PASSWORD

# Transaction index (needed for Lightning and some wallets)
txindex=1

# Enable pruning (optional - see section below)
# prune=10000
EOF

5. Set Up systemd Service

sudo cat > /etc/systemd/system/bitcoind.service << EOF
[Unit]
Description=Bitcoin daemon
After=network.target

[Service]
User=bitcoin
Group=bitcoin
Type=forking
PIDFile=/home/bitcoin/.bitcoin/bitcoind.pid
ExecStart=/usr/local/bin/bitcoind -pid=/home/bitcoin/.bitcoin/bitcoind.pid
ExecStop=/usr/local/bin/bitcoin-cli stop
Restart=always
RestartSec=30
TimeoutStartSec=infinity
TimeoutStopSec=600

[Install]
WantedBy=multi-user.target
EOF

sudo systemctl enable bitcoind
sudo systemctl start bitcoind

6. Monitor Initial Block Download

# Watch sync progress
watch bitcoin-cli getblockchaininfo

# Or just check progress
bitcoin-cli getblockchaininfo | grep -E "blocks|headers|verificationprogress"

Initial sync takes 1-3 days on a fast server. During this time, your node downloads and verifies every block since 2009.

Pruning: Cut Storage by 90%

If you don't need the full blockchain history, enable pruning to reduce storage from 600 GB to ~10 GB.

In bitcoin.conf:

prune=10000

This keeps only the last 10 GB of blockchain data (about 10,000 MB), discarding older block data after validation.

What you lose with pruning:

  • Cannot scan historical transactions for old addresses
  • Cannot serve historical blocks to other nodes (you become a non-archival node)

What you keep:

  • Full verification of all new transactions
  • Complete UTXO set (all unspent outputs)
  • All Lightning Network functionality

For most users, pruning is acceptable. For serious infrastructure, run an unpruned node.

Securing Your Node

# Configure UFW firewall
sudo apt install ufw
sudo ufw default deny incoming
sudo ufw default allow outgoing

# Allow SSH
sudo ufw allow 22/tcp

# Allow Bitcoin P2P (required for node connectivity)
sudo ufw allow 8333/tcp

# Enable firewall
sudo ufw enable

# Do NOT open RPC port (8332) to the internet
# RPC should only be accessible locally or through SSH tunnel

Important: Never expose Bitcoin RPC to the internet. The RPC interface controls your node and any wallet associated with it.

Connecting Your Wallet

To connect your wallet to your node securely:

Electrum (using SSH tunnel):

# On your local machine, create SSH tunnel
ssh -L 50001:localhost:50001 bitcoin@YOUR_SERVER_IP

Then configure Electrum to use localhost:50001 as the server.

Bitcoin Core wallet: Already uses your node by default if running on the same machine.

BTCPay Server: Self-hosted payment processor that uses your full node — install on the same server.

Monthly Cost vs. Running at Home

ApproachSetup CostMonthly CostTradeoffs
Cloud VPS (Hetzner)$0~€15Always on, no hardware, less sovereign
Raspberry Pi 4 + SSD~$150~$3 electricityFully sovereign, home bandwidth usage
Dedicated mini PC (NUC)~$300~$10 electricityFastest, most capable
myNode / Umbrel box$350-500~$8 electricityEasy UI, purpose-built

Cloud is the cheapest to start and requires no hardware knowledge. Home hardware is more sovereign (your Bitcoin node, on your hardware, on your network) but requires the initial investment.

Frequently Asked Questions

Do I earn anything from running a Bitcoin node? No. Bitcoin full nodes do not earn block rewards or transaction fees. Only miners earn these. Running a node supports the network but provides no direct financial reward.

Can I run a Lightning node on the same server? Yes. LND or Core Lightning can run alongside Bitcoin Core on the same VPS. You need the full node, not pruned, for Lightning to work optimally.

Is my node IP address public? Yes. When your node connects to peers, your IP address is visible on the network. Use Tor if you want to obscure it: add proxy=127.0.0.1:9050 and onlynet=onion to bitcoin.conf with Tor installed.

What happens if my server goes down? Bitcoin Core resumes from where it stopped on restart. No funds are at risk from downtime — only functionality is interrupted.

How much bandwidth does a Bitcoin node use? A typical node uses 200-500 GB per month. Most VPS plans include 1-5 TB per month, so bandwidth is rarely an issue.

Bottom Line

A cloud Bitcoin node costs €15-40/month, takes 2 hours to set up, and runs indefinitely without maintenance. You get full transaction verification, better wallet privacy, and independence from third-party services.

For anyone serious about Bitcoin self-sovereignty, running your own node is the logical next step after hardware wallet self-custody.

Set it up once. It runs forever.

Stay Up to Date on Bitcoin

Get our free Beginners Guide to Buying Bitcoin plus weekly insights for long-term holders.

Related Posts