Preparations
Let’s get all the necessary hardware parts and prepare some passwords.
Computer
This guide builds on the readily available personal computer.
While a personal computer is the best choice for most, this guide also works with other computing platforms, cloud servers, or virtual machines that run Alpine Linux. It only uses standard Linux instructions.
Hardware requirements
You need the following:
- CPU: >2010 gen processor
- RAM: >2GB (Bitcoin client only), >4GB (everything else)
- Internal storage: >=2TB HDD, an SSD is recommended
- USB/SD drive: >=1GB
- Temporary monitor screen
- Temporary keyboard USB/PS2
You might also want to get this optional hardware:
- UPS (uninterruptible power supply)
Write down your passwords
You will need several passwords, and it’s easiest to write them all down in the beginning, instead of bumping into them throughout the guide. They should be unique and very secure, at least 12 characters in length. Do not use uncommon special characters, spaces, or quotes (‘ or “).
[ A ] Master user password
[ B ] Bitcoin RPC password
[ C ] LND wallet password
[ D ] BTC-RPC-Explorer password (optional)
[ E ] ThunderHub password
If you need inspiration for creating your passwords: the xkcd: Password Strength comic is funny and contains a lot of truth. Store a copy of your passwords somewhere safe (preferably in an open-source password manager like KeePassXC), or whatever password manager you’re already using, and keep your original notes out of sight once your system is up and running.
The command line
We will work on the command line of the PC, which may be new to you. Find some basic information below. It will help you navigate and interact with your PC.
You enter commands and the PC answers by printing the results below your command.
To clarify where a command begins, every command in this guide are contained in a highlight box:
example command # don't use me on real terminal
The system response is marked with the output
title on the box:
example output # i'm the result of the `example command`
Some boxes have the path to the file we need to edit, with the desired changes
also highlighted:
# Comment
config_variable="desired changes"
- Auto-complete commands: You can use the
<Tab>
key for auto-completion when you enter commands, i.e., for commands, directories, or filenames. - Command history: by pressing ⬆️ (arrow up) and ⬇️ (arrow down) on your keyboard, you can recall previously entered commands.
- Use admin privileges: Our regular user has no direct admin privileges. If
a command needs to edit the system configuration, we must use the desired
root privileged tool command as a prefix. Instead of editing a system file
with,
$EDITOR /path/to/config/file
, we use$SU $EDITOR /path/to/config/file
.
For security reasons, service users like bitcoin
cannot use the $SU
command
and are not able to login.
-
Copy / Paste: Copy usually works with
<Ctrl><c>
or<Ctrl><Shift><c>
. Paste usually works with<Ctrl><v>
or<Ctrl><Shift><v>
. -
Using your favorite text editor: We do not assume the text editor you want to use. Here are examples of how to use a couple of popular text editors:
If you use the vi
editor (installed by default) to create new text files or
edit existing ones, you might know that it’s not complicated, but saving and
exiting are not intuitive.
Insert: hit <i>
, write/delete/edit/paste text, and hit the <Esc>
key
when you’re done editing
Save: hit <:><w>
, and hit the <Enter>
key
Exit: hit <:><q>
, and hit the <Enter>
key
Secure your home network and devices
While the guide will show you how to secure your node, you will interact with it from your computer and mobile phone and use your home internet network. Before building your Microbolt, it is recommended to secure your home network and devices. Follow Parts 1 and 2 of this “How to Secure Your Home Network Against Threats” tutorial by Heinrich Long, and try to implement as many points as possible (some might not apply to your router/device).