I’m thinking of joining the bitcoin network and looking for good guides for how to set up and launch a bitcoin node on a raspberry pi or similar hardware. I wanted to ask some pros here about affordable and easy-to-set-up solutions.
Some input infos:
I have a desktop machine at home but it can’t be online 24/7, plus it’s used by other people intensely.
I‘m a beginner in terms of bitcoin nodes/mining, but do have quite some experience with Linux/Unix
I look for affordable solutions, e.g., a small raspberry pi hanging in the back of my office 24/7 so that the electricity bill wouldn’t explode.
I also have a conceptual question: Does it make sense to run a bitcoin node if you’re not planning to mine bitcoin? What are the benefits for the community if a single guy runs a tiny piece of hardware somewhere on Earth? And what would be the immediate benefits for me?
Thanks a lot in advance!
Here I wrote several guides about:
Thanks man! This is gonna be a loooooog reading session tonight :)
DarthCoin’s Bitcoin Guides +1
BTC Sessions has many great tutorials. You should check out:
How To Run A Bitcoin Node - Parts, Assembly and Software Installation
UMBREL - How To Use Your Bitcoin and Lightning Node
Old thinkpad can be bought for a hundred bucks and upgraded with a 1TB SSD. Battery acts like a UPS and probably performs better and cheaper than raspi. As for why you should do it, you should do it so you can get privacy benefits using your node with Sparrow wallet to verify you own what you think you own and also to help make informed fee decisions running your own mempool instance. Eventually you should also have your own soverign lightning node connected to Zeus so you become your own bank and your own payments processor.
I run an old Acer budget laptop from 2015 and it screams compared to a Pi. Old laptop is definitely the way to go.
I removed the battery, though. I would rather it go down than have the battery explode and burn the house down while I am gone.
I would answer (for the benefits, not for the technical part) that if your don't use your own node, you are using the node of someone else. It means less privacy, it also means less sovereignty as you rely on someone to be able to broadcast your tx. Finally it also means less decentralization for the Bitcoin Ledger and the more it is (decentralized, resilient, censorship resistant), the more your stack is valuable.
Privacy, sovereignty, with a touch of (not so disinterested) altruism
Your node, your rules. And your node doesn't have to be online 24/7 (unless you plan to run a lightning node on top of the bitcoin node). I run my node on a VM as guest of a work-horse desktop PC (which is actually online most of the time anyway).
The real benefits come when you transact with your node and you connect your wallets to it, it gives you better privacy.
I'm not a big fan of that raspberry pi cheap hardware crap and ecosystem. Better use a old laptop and a ubuntu LTS OS and keep it updated.
I agree with everything except for the Ubuntu part. I rather use a lighter Linux distribution that takes freedom and security seriously, or better yet, use NetBSD or OpenBSD instead.
I‘m using debian without all this GUI crap. Should be also fine, shouldn’t it?
Not for me, really. I used Debian for 23 or 24 years, until they decided to to stop giving me the freedom to chose components and go with systemd.
I upgraded from Debian ascii to Devuan ascii and have been using Devuan in servers, desktops, and laptops since then.
Cool, I will look into it.
If you already like Debian, you'll certainly like Devuan, since it is actually the continuation of Debian but without systemd.
I currently run a prune BTC node and a full LTC node on a Pentium 4 desktop with 6GB RAM and two 512GB HDDs on BTRFS RAID-1 on Devuan chimaera. I got all the hardware for free, and it works very well.
I want to run a full node on this box (I do in others). so I'm planning to replace the HDDs with 1TB ones and rescan the BTC blockchain. :-)
Totally noob question: Does the node really have to run 24/7? What happens if I do some transactions, the switch it off and switch on in a few days?
I will still be able to do more transactions but only after it has synched the blockchain?
No, nodes don't need to run 24/7. For a while I've been running some nodes only at night and during the weekends, when electricity was cheaper.
Your wallet will still have your private keys, ready to sign transactions to expend your utxos. The node will synchronize the blockchain when you turn it back on. If it's been just a few days off, synchronization won't take too long.
What I usually do is having small amounts on LN or on-chain wallets on my phones ready for quick small transactions while my nodes are off.
Great! I got the point ;)
I'm glad I could help. It's all a little confusing at first, although not complicated.
Perhaps you could start running a testnet Bitcoin node. Synchronization takes much shorter, disk space is much less, and stress for the possibility of making a mistake is also reduced a lot.
Also, it's cool helping run the testnet and you can try any crazy thing you might think about. :-)
Also, are there special network security measures to undertake before running such a node? I mean Ethernet/WiFi settings, firewalls, etc.
In order for other peers to connect to your node, you should run behind tor as this allows inbound connections. But most "batteries inlcuded" nodes do that anyway. Run umbrel (I'm using citadel, a FOSS clone) together with electrum server and you're ready to go. Wallets can connect via onion address to your electrum server. You don't need to open any port on your router for you home network.
Thank you! This is a good point. Also good that the node doesn’t have to be online all the time (not planning to use lightning).
As for raspberry stuff, they claim it’s a „cheap“ piece of hardware, but I just checked the prices on amazon and it’s >$150. Insane.
My computer movement makes them and they don't use docker images! Most all other implementations use docker images. The Sovran Pro uses NixOS. And it does not use a Rasberry Pi! And it uses clearnet for services that need it. https://Sovransystems.com.