◉ Config

bitcoin.conf field manual

Safe defaults for home and VPS operators. Conservative first. Sharp edges labeled. Pair with the setup guide and commands.

Edit while stopped

Stop Core cleanly before changing conf (bitcoin-cli stop / systemctl stop bitcoind). Mistyped RPC or datadir lines are easier to fix when you are not mid-write.

Settings that matter

Setting Effect Risk / note
dbcache RAM for UTXO cache; speeds IBD Too high starves the OS; leave headroom
prune Discard old blocks after validation Does not skip IBD download; limits history serve
listen Accept inbound P2P when network allows May need port 8333; advertises a node
rpcallowip Who may call RPC Keep 127.0.0.1 unless you fully harden LAN auth
datadir Chain location Use when OS disk is tiny; preserve permissions
proxy / listenonion Tor integration Optional; see Tor guide

Do not

  • Do not set rpcbind=0.0.0.0 “temporarily”
  • Do not port-forward 8332
  • Do not paste random conf packs from chat groups
  • Do not disable security to chase a dashboard
  • Do not assume prune = tiny IBD bandwidth

Why RPC hygiene matters: security basics.

Example — home pruned

home pruned
dbcache=2048
listen=1
rpcallowip=127.0.0.1
prune=550

Example — home full

home full
dbcache=4096
listen=1
rpcallowip=127.0.0.1
# no prune= line — requires ~1TB class disk in mid-2026

Example — VPS pruned

vps pruned
dbcache=1024
listen=1
rpcallowip=127.0.0.1
prune=550
# Optional: datadir=/mnt/volume/bitcoin
# Provider sees the VM — see /vps/ and Tor guide

Pi-oriented note

On Raspberry Pi 5 8GB, start nearer dbcache=1024 and prune unless you attached large NVMe for full history. Details: Pi node guide.

After changes

verify
$ sudo systemctl start bitcoind
$ bitcoin-cli getblockchaininfo
$ ss -tlnp | grep 8332
# expect 127.0.0.1:8332 — not 0.0.0.0

Indexer / wallet stacks are separate — read Electrum server vs full node before enabling txindex or extra services. Maintenance rhythm: maintenance checklist.

FAQ

Where does bitcoin.conf live?

Usually ~/.bitcoin/bitcoin.conf for the user running bitcoind, or under the datadir you set. Match the path your systemd unit uses.

What is the safest RPC setting?

Keep RPC on 127.0.0.1 only (rpcallowip=127.0.0.1). Do not bind RPC to all interfaces or forward port 8332.

Does prune speed up initial sync?

No. Prune reduces retained block files after validation. IBD still downloads history once.

Need install order, not just conf?

Verified download → conf → systemd → upgrade.

Open setup guide