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:

output
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:

/path/to/config/file
# 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).