Skip to content

Labs

Hands-on troubleshooting exercises. Each lab states its starting conditions explicitly, gives you instructions rather than answers, and ends with a cleanup procedure so you can run it again or tear it down cleanly.

Isolation

Every lab here is designed to be run in a disposable VM or container, never against a production system. Where a lab involves breaking something on purpose, that's the point — do it somewhere a mistake costs you nothing.

Available labs

Lab Pairs with
SSH Troubleshooting SSH Hardening
DNS Troubleshooting DNS Resolution
TCP/IP Diagnostics TCP/IP Networking
systemd Failures Understanding systemd
Nginx 502/504 Troubleshooting Nginx Reverse Proxy
Docker Networking Docker Networking Fundamentals

More labs (firewall rules, disk/inode exhaustion, high CPU/memory, conntrack exhaustion, Linux routing, Bash automation) are planned — see the editorial plan — but aren't published yet. We'd rather ship six complete labs than twelve half-written ones.

Supporting files

The two Docker-based labs (Nginx 502/504 and Docker Networking) include their docker-compose.yml and nginx.conf inline, in a collapsible block near the top of each lab. Every other lab runs on a plain VM and needs no extra files.