The Complete Map: 200 Linux Server Tutorials by Goal (Start Here)

Two hundred tutorials is too many to read in order. This page is the map: the same posts, grouped by what you're trying to achieve, with a suggested path through each. Numbers are tutorial numbers. Bookmark this with the cheat sheet (40), the troubleshooting checklist (80) and the glossary (120).
The first weekend (do these in order)
1 Install Ubuntu Server · 2 SSH in · 3 SSH keys · 4 A sudo user · 5 Updates · 6 Firewall · 7 Fail2ban · 8 Static IP · 9 Hostname and time zone · 10 Basic commands · 12 nano · 13 systemctl · 14 Logs · 24 Docker · 25 Compose · 35 Uptime Kuma · 36 Automatic updates · 23 Backups.
After that, pick a goal below.
Files, photos and media for the household
- Files: 31 Samba · 32 Nextcloud · 52 Syncthing · 53 NFS · 114 Time Machine · 115 Windows backups · 193 Pingvin Share
- Photos: 46 Immich · 149 Takeout migration · 197 Wall tablet as a photo frame
- Film and TV: 42 Jellyfin · 186 Jellyseerr
- Music and audio: 84 Navidrome · 85 Audiobookshelf · 154 Snapcast
- Books and comics: 86 Calibre-Web · 187 Kavita · 128 Wallabag
- Documents: 76 Paperless-ngx · 152 Scanner · 112 Stirling PDF · 121 Collabora
Path: 22 Mount a drive → 31 → 42 → 46 → 76, then the rest as the household asks.
Leaving the cloud, service by service
| Instead of | Run |
|---|---|
| Google Photos | 46 Immich |
| Drive / Dropbox | 32 Nextcloud, 52 Syncthing |
| Docs | 121 Collabora, 184 HedgeDoc |
| Keep / Evernote | 132 Joplin, 183 Memos |
| Calendar / Contacts | 150 Radicale (or 32) |
| Password manager | 43 Vaultwarden |
| Feedly / news | 89 FreshRSS |
| 128 Wallabag | |
| Bookmarks | 113 Linkding |
| Spotify | 84 Navidrome, 154 Snapcast |
| YouTube's front end | 181 Invidious |
| Google search | 180 SearXNG |
| Trello / Todoist | 92 Planka, 131 Vikunja |
| Mint / YNAB | 129 Actual Budget |
| Alexa | 196 Local voice assistant |
| Twitter/Mastodon | 182 GoToSocial |
| WhatsApp (family) | 126 Matrix |
| Gmail | 138 — read it before deciding |
The migration itself: 149.
Reaching the server from outside
33 WireGuard · 47 Tailscale · 137 Headscale · 48 Dynamic DNS · 108 Site-to-site · 109 Cloudflare Tunnel · 62 SSH tunnels · 175 RustDesk · 176 Guacamole · 178 TURN for calls.
Path: 47 (five minutes) → 33 or 137 if you want it all yours → 109 only for public web things.
Web hosting
26 Nginx · 27 Let's Encrypt · 28 Reverse proxy · 57 Caddy · 58 Nginx Proxy Manager · 147 Wildcard certificates · 146 Local CA · 30 WordPress · 110 Hugo · 111 Umami · 191 Shlink · 161 PostgreSQL · 29 MariaDB · 162 MinIO.
Path: 26–28 (or 57 alone) → 147 for internal names → 110 for your site.
Smart home
41 Home Assistant · 96 Mosquitto · 122 Zigbee2MQTT · 123 ESPHome · 124 Node-RED · 91 Frigate · 195 OctoPrint · 196 Voice assistant · 197 Wall tablet · 143 IoT VLAN · 79 Wake-on-LAN.
Path: 41 → 96 → 122 → 143, then 91 and 196 when ready.
Running a small business from it
188 Invoice Ninja · 189 Cal.com booking · 190 FreeScout helpdesk · 194 Listmonk newsletter · 192 PrivateBin for secrets · 193 file transfers · 175 remote support · 45 Gitea · 88 BookStack · 121 Collabora · 111 analytics · 138 email (honestly).
Path: 43 → 88 → 188 → 189 → 190, with 27/109 for the public pieces and 159 before you rely on any of it.
Storage and backups
22 Mount · 21 Swap · 64 Extend a disk · 97 ZFS · 98 mdadm · 99 mergerfs + SnapRAID · 170 Btrfs · 167 LUKS · 56 SMART · 134 Scrutiny · 15 Disk space · 168 Recover deleted files.
Backups: 23 rsync/tar · 55 restic · 54 rclone off-site · 116 restic REST target · 169 USB cold backup · 65 Docker volumes · 114/115 client backups · 159 the drill.
Path: 97 (or 99 for mismatched drives) → 55 → 54 → 169 → 159.
Security
3 Keys · 6 UFW · 7 Fail2ban · 39 Checklist · 70 2FA SSH · 71 Login audit · 72 SFTP-only users · 95 Authelia SSO · 105 UFW + Docker · 106 Fail2ban for web · 107 CrowdSec · 166 Rootless Docker · 167 LUKS · 171 Vulnerability scans · 172 If you're hacked · 173 SSH certificates · 174 Honeypot · 59 Secrets in .env.
Path: 39 first, then 107, 95, 171; 172 before you need it.
Monitoring and knowing what's happening
35 Uptime Kuma · 66 Netdata · 90 Grafana + Prometheus · 155 Loki logs · 125 Dozzle · 104 Healthchecks · 134 Scrutiny · 179 ntopng · 156 Weekly report · 93 ntfy · 118 Telegram · 49 Email · 127 LibreSpeed · 157 Benchmarks.
Path: 35 → 93 → 104 → 156 → 90/155 when curious.
Admin skills
10 Commands · 11 Permissions · 12 nano · 13 systemctl · 14 journalctl · 16 htop · 17 Processes · 18 File transfer · 19 tmux · 20 cron · 69 systemd timers · 60 Bash scripting · 61 grep/sed/awk · 63 apt deeper · 148 Shell setup · 198 strace/lsof · 199 Python as a service · 102 Dockerfile · 101 Docker networking · 165 Compose health checks · 68 Container limits · 50 Watchtower · 163 Registry · 164 JupyterLab · 82 Cockpit · 125 Dozzle · 44 Portainer · 133 code-server.
Virtualisation and infrastructure as code
81 KVM · 141 Proxmox · 142 Incus · 139 Ansible · 140 The playbook · 103 etckeeper · 153 netboot.xyz · 74 New hardware · 73 LTS upgrade · 37 Recovery mode · 75 Won't boot · 117 Hardware faults · 119 Power and noise · 100 UPS · 158 Pi-hole failover · 38 Raspberry Pi.
Networking
8 Static IP · 34 Pi-hole · 83 Unbound · 144 Pi-hole DHCP · 158 Two Pi-holes · 143 VLANs · 145 IPv6 · 177 UniFi controller · 179 ntopng · 101 Docker networks · 127 Speed tests.
Reference pages
40 Cheat sheet · 80 Troubleshooting checklist · 120 Glossary · 160 Where next · 200 this page.
If you only do ten things
1–3 (install, SSH, keys) · 6 (firewall) · 25 (Compose) · 34 (Pi-hole) · 47 (Tailscale) · 55 (restic) · 93 (ntfy) · 159 (the drill). That's a server that's useful, reachable, backed up and tells you when it's unhappy — and everything else on this page is a weekend each.
Wrapping up
Pick the goal, follow the path, come back to the map. The series was written in the order the ideas arrived; this is the order they're used. Two hundred posts later, the thing in the cupboard runs most of your digital life, and the skills to keep it running are the same ones that keep the internet running.
