md formatting

This commit is contained in:
anarsec 2023-07-08 18:09:30 +00:00
parent 0dc607247e
commit b6bbc36b6f
No known key found for this signature in database
8 changed files with 141 additions and 79 deletions

View file

@ -43,19 +43,21 @@ The best way to learn command line basics is to interact with it. We recommend t
Some commands will require elevated permissions, equivalent to 'Open as Administrator' in Windows. For example, installing software typically requires this. Prepending `sudo` to a command will run it as the administrative user, named root (note: the root user is not the same as the root directory, and the two should not be confused). A root prompt will display `#` rather than `$`. Be especially careful with any command you run while using these elevated permissions, as you'll have the permissions necessary to wipe your entire disk or modify important files. It is helpful to know that text in the Terminal is pasted with Ctrl+Shift+V (i.e. the Shift key must also be pressed).
Most Linux users will rarely need to use the CLI. For using [Tails](/tags/tails/), it shouldn't be required at all, although you will need the following commands for the [more secure installation](https://tails.boum.org/install/expert/index.en.html):
* `wget`: this downloads files from the Internet over the Command Line (rather than through a web browser)
* `gpg`: this handles [GPG encryption](/glossary#gnupg-openpgp) operations. It is how the integrity and authenticity of the Tails download is verified.
* `apt`: this manages packages on Debian.
* `dd`: this copies a file from one disk to another.
The [Qubes](/tags/qubes/) installation requires the same commands (during the [verification](https://www.qubes-os.org/security/verifying-signatures/) stage). The Command Line Interface is otherwise only required to install software:
* `apt install <PACKAGE_NAME>`: this installs packages on Debian
* `dnf install <PACKAGE_NAME>`: this installs packages on Fedora
If you ever don't understand what a command is meant to do, try searching [explainshell](https://explainshell.com/) for it.
#### GPG Explanation
## GPG Explanation
Using `gpg` during the installation of Tails or Qubes OS will be less confusing if you understand how it works.
First, some points of clarification. PGP and GPG are terms that can be used interchangeably; PGP (Pretty Good Privacy) is the encryption standard, and GPG (GNU Privacy Guard) is a program that implements it. PGP/GPG is also used for encrypted email communication ([though we don't recommend it](/posts/e2ee/#pgp-email)), but we are using it here exclusively to verify the integrity and authenticity of files.
@ -69,9 +71,11 @@ Tails and Qubes OS sign their releases, and only they can do this because only t
**Step: Create a Key-Pair**
Tails recommends this [Riseup guide](https://riseup.net/en/security/message-security/openpgp/gpg-keys#using-the-linux-command-line) to generate a key-pair.
* `gpg --gen-key` will prompt you for some configuration options and then generate your key-pair.
**Step: Verify the Tails public key**
* `gpg --import < tails-signing.key` imports the Tails public key into your keyring, so that it can be used.
* `gpg --keyring=/usr/share/keyrings/debian-keyring.gpg --export chris@chris-lamb.co.uk | gpg --import` imports a Debian developer's public key into your keyring, so that it can be used.
* `gpg --keyid-format 0xlong --check-sigs A490D0F4D311A4153E2BB7CADBB802B258ACD84F` allows you to verify the Tails public key with the Debian developer's public key, by examining the output as instructed. This is so that if the source of the Tails public key (tails.boum.org) is compromised, you have an external source of truth to alert you of this.
@ -87,6 +91,7 @@ Now we know that we have a genuine version of the Tails .img file, so can procee
# Going Further
If you'd like to learn more about Linux, we recommend:
* The rest of the Tech Learning Collective's [Foundations](https://techlearningcollective.com/foundations/) exercises will give you a much more comprehensive foundation than what you need to use Qubes or Tails.
* [Linux Fundamentals on Hack The Box Academy](https://academy.hackthebox.com/course/preview/linux-fundamentals) is another interactive learning environment, with a less comprehensive overview.