Free course

VPN Course

Learn how VPN tunnels, encryption, routing, DNS, and access control work, then build a WireGuard VPN and a Cloudflare private network.

7 modules · 35 lessons · No signup

Prerequisites: Shell Commands, Linux Basics, HTTP and DNS

~~~

Your progress

of lessons completed.

Course completed.

What you'll learn

Trace traffic through a VPN, build and verify a small WireGuard setup, and create a VPN replacement with Cloudflare Tunnel and the Cloudflare One Client.

Take this course offline

Subscribe to my newsletter to get every free book and course in PDF and EPUB format.

Get the downloads

Course contents

  1. VPN foundations

    Understand the problems VPNs solve, the paths they create, and the trust they move.

    1. What a VPN is
    2. Follow a packet through a VPN
    3. Understand the new trust boundary
    4. Recognize common VPN jobs
    5. Check your understanding: VPN foundations
  2. Tunnels and protocols

    Separate tunneling from encryption and compare the main protocol designs.

    1. Separate tunneling from encryption
    2. Compare IPsec, OpenVPN, and WireGuard
    3. Keys, handshakes, and peers
    4. Account for encapsulation and MTU
    5. Check your understanding: tunnels and protocols
  3. Routing, DNS, and privacy

    Control traffic paths, private ranges, name resolution, egress, and leak protection.

    1. Read private addresses and CIDR routes
    2. Choose full or split tunneling
    3. Understand forwarding, NAT, and egress
    4. Keep DNS on the intended path
    5. Check your understanding: routing, DNS, and privacy
  4. Build a WireGuard VPN

    Create keys, configure both peers, route traffic, verify the tunnel, and remove it safely.

    1. Plan the WireGuard lab
    2. Install WireGuard and create keys
    3. Configure the WireGuard peers
    4. Start, test, and remove WireGuard
    5. Check your understanding: building with WireGuard
  5. Cloudflare VPN replacement

    Understand how Cloudflare Tunnel, the Cloudflare One Client, identity, and policies fit together.

    1. Understand Cloudflare private access
    2. Separate the client, Tunnel, and Workers
    3. Add identity, devices, and policy
    4. Know what Cloudflare does not build here
    5. Check your understanding: Cloudflare VPN replacement
  6. Build a Cloudflare private network

    Connect a private network, enroll a remote device, restrict access, and test the complete path.

    1. Create the Zero Trust organization
    2. Create the Tunnel and private route
    3. Enroll the remote device and route traffic
    4. Restrict and verify Cloudflare access
    5. Check your understanding: building with Cloudflare
  7. Operate and choose

    Troubleshoot by layer, maintain access safely, and choose the right design for each job.

    1. Troubleshoot the path by layer
    2. Diagnose routes, DNS, and MTU
    3. Maintain access as a security system
    4. Choose and clean up the right design
    5. Check your understanding: operating and choosing