Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

0-1: Introduction

Welcome! This course is for anyone interested in creating their own private networks using Wireguard. In just a few short modules, we’ll dive into the essentials of the Wireguard technology: how it works, why it matters, and how to deploy it correctly. We’ll also demonstrate multiple deployment strategies, from a fully manual network, all the way to a managed mesh ready to use for secure community-building.

Learning Objectives

As always with TTI Courses, we break down our learning objectives into Skills and Concepts.

Skills

By the end of this course, learners will be able to:

  • Create and connect Wireguard peers
  • Establish Wireguard networks across NAT boundaries
  • Manage complex Wireguard networks using Netbird

Concepts

By the end of this course, learners will understand:

  • Wireguard tunnel design
  • Wireguard asymmetric cryptography usage
  • Wireguard networking strategies
  • Basic mesh networking principles
  • Netbird deployment considerations

Prerequisites

To succeed in this course, learners should have experience with:

  • The Linux command line (start here)
  • Basic IP networking concepts, including:
    • Subnets
    • Network Address Translation (NAT)
    • Firewall rules

Materials

To fully participate in this course, you will need:

  • A computer you can install things on—Linux is ideal, but Windows will work
  • A recent version of Podman
  • The Just command runner
  • A cloud server for the final deployment

The cloud server will cost real money, but will become an asset for you in the long-term. We will demonstrate with Digital Ocean, but other providers (Hetzner, AWS, Azure, GCP, Vultr) will work as well, if you’re familiar with them.

Self-Directed Learning

Taking a course like this on your own time, without direct guidance from an instructor, can be a daunting challenge. Self-directed learning requires time, discipline, and commitment in order to be successful. To help you along the way, TTI has a short course dedicated to the how and why of self-directed learning. We encourage all new TTI students to first complete The Learning Journey

How to Use This Course

At TTI, we don’t waste our time with multiple choice questions. Guessing isn’t learning. Instead, at the end of each lesson, we provide Checks for Understanding. These are questions that you should be able to answer yourself, in detail. We will not grade them: you will. It works like this:

  1. Read the question carefully. It is usually a “How” or “Why” question that requires a thoughtful response.
  2. Craft the response in writing or out loud—to yourself, or someone else. If speaking aloud, consider recording the answer.
  3. Think about how it felt to answer. Were you sure? Were there gaps in your explanations? If so, you have work to do. If not, you’re ready to move on to the next lesson.

Join our Community

Learning is a social undertaking. Connect with other learners taking this course, or on similar paths, by joining the TTI Discord! We hope to see you there.

The Exhibition of Mastery

The end of every TTI course comes with a recommended “capstone” project that we call the Exhibition of Mastery. It’s an opportunity to prove to yourself and others that you have gained the skills and understandings you hoped from this course. We do not grade these—only you can assess whether you think you’ve accomplished your goals—but we encourage you to share them with our community!

Statement on AI

no AI logo

No generative models were used in the creation of the text or code of this course. Everything you see here was created by the author.