Learning route
Tracks
Each stage builds on the previous ones; within a stage, tracks can be taken in any order.
- 13 tracks
- 145 stages
- 93 labs
Where to start
First steps
From system basics and command input to navigation, files, text, and pipelines.
Track map
Phase 1 Foundations
Phase 2 The system
Phase 3 Admin craft
3.1 Networking
From addresses and routes to ports, filtering, DNS, SSH, multi-host connectivity and packets in tcpdump.
15 stages
3.2 Storage
From space diagnosis and mounting, through preparing a new disk and a RAID 1 mirror, to logical volumes and data recovery.
12 stages
3.3 Bash: text processing and scripts
Searching and editing text with grep, sed and awk, your own scripts with arguments and checks, exit codes and scheduled runs with a log and a lock.
9 stages
Phase 4 Server in production
4.2 Web stack
Sites and reverse proxy on nginx, certificates and HTTPS, PostgreSQL access and restoring from a dump — up to a site and a database on two machines.
9 stages
4.3 Server security
What a server exposes and what it keeps running after an update, password policy and fail2ban, a service with least privilege, AppArmor and auditd — up to getting a new server ready for publication.
10 stages
4.4 Containers: Docker and compose
Image and container, ports, environment and restart, your own Dockerfile, volumes, container networking and a compose stack, memory limits and the user inside a container.
11 stages
4.1 Inside the system: resources, kernel, processes
Load average and the CPU, memory and the OOM killer, process limits and kernel parameters, disk load, strace and /proc, kernel messages, the system boot and emergency mode, time synchronisation — up to triaging a slow server.
13 stages
4.5 Automation: Git and Ansible
Configuration under git: who changed what, how to get the working version back and update a server from a repository; Ansible: inventory, ad-hoc commands, an idempotent playbook, roles, variable precedence and secrets in a vault — up to configuring a second machine from the first.
8 stages
4.6 Observability: metrics, alerts, logs
Machine and application metrics in Prometheus and PromQL queries; alert rules and notification delivery through Alertmanager; logs from several machines on one collector and investigating with logs — up to watching a second machine from the first.
9 stages