Multi-Cloud IAM Zero-Trust, Pipeline CI/CD Scanning, Falco eBPF & Runtime Hardening
6 modules, 28 lessons: Multi-Account Cloud Architecture & Isolation; Cloud Identity & Zero-Trust Governance; CI/CD Security & Shift-Left Automation; Container & Kubernetes Runtime Defense; Infrastructure as Code & Policy-as-Code; Cloud Detection, Encryption & Compliance. Advanced level, about 4 hours.
This repository holds the labs of the free lessons of the LearnSome.tech course Cloud Security & DevSecOps Engineering: each lab's starter files, a README with the goal, the steps and the expected output, and ./check, which tests your work the way the site does.
-
Codespaces: the badge opens this repository in a dev container with Python 3.14.7, Terraform 1.16.4, kubeconform 0.8.0, hadolint 2.15.1, actionlint 1.7.12, ansible-core and yamllint and Git 2.34 (Ubuntu 22.04's), as in the site's lab sandbox.
-
On your machine:
git clone https://github.com/learnsome-tech/cloudsecurity-free-labs.git cd cloudsecurity-free-labs ./check m01l01-05You need Python 3 for
./check, and for the labs themselves Python 3.14.7, Terraform 1.16.4, kubeconform 0.8.0, hadolint 2.15.1, actionlint 1.7.12, ansible-core and yamllint and Git 2.34 (Ubuntu 22.04's). Other versions mostly work, but only the sandbox's versions are sure to print what the site prints. VS Code's Dev Containers extension builds the same container as Codespaces (x86-64).
- Open the lesson on LearnSome.tech and the lab folder beside it:
labs/<lesson>/<lab>/. The lab README has the goal, the steps and the expected output. - Work in the lab's
starter/folder. - From the repository root, run
./check <lab>(for example./check m01l01-05), or./check <lesson>for all labs of a lesson, or./check --all../check --listshows every lab and how it is checked.
./check runs your starter the way the site's lab sandbox does: in a scratch copy that is its working directory and HOME, with LANG=C.UTF-8, TZ=UTC, input.txt on standard input, 10 seconds and 256 KiB of output per stream. It then compares the output with the site's own rules, so a pass here is a pass on the site.
| Check | What ./check does |
Labs |
|---|---|---|
| Graded | Runs the program and compares its output with expected.txt. |
10 |
| Checker | Validates the file with the checker the site uses (hadolint, kubeconform, actionlint, yamllint, ansible-playbook --syntax-check or terraform validate); passes when it finds no errors. |
2 |
| Runs, not graded | Runs the program and shows its output; the site gives no pass or fail, and the lab README says why. | 1 |
| Read along | Nothing to run here: the site shows the listing read-only, and the lab README says honestly what it needs (Docker, a cluster, a cloud account...). | 7 |
This is the free edition: the labs of the course's free lessons, the ones anyone with a free LearnSome.tech account can watch. Each lab's starter is the code the lesson shows on screen. There are no reference solutions, no Pro lessons' labs or expected outputs, no narration and no quiz or exercise answers.
The labs of the Pro lessons are on the course page, where LearnSome.tech runs and grades them in its sandbox with a Pro membership. The full labs repository is private and stays private.
| # | Lesson | Labs | Access |
|---|---|---|---|
| 1.1 | Shared Responsibility Model & Cloud Threat Landscapes | 3 labs | Free |
| 1.2 | AWS Organizations, Account Hierarchies & Azure Management Groups | 3 labs | Free |
| 1.3 | Service Control Policies & Guardrail Architecture | 5 labs | Free |
| 1.4 | Security Landing Zones & Centralized Egress Inspection | 4 labs | Free |
| 1.5 | Cloud Network Isolation: VPC Peering & PrivateLink | 4 labs | Free |
Free lessons are open to anyone with a free LearnSome.tech account. The rest of the course is on LearnSome.tech with Pro.
- Code (starter files,
checkand.learnsome/, the dev container and the workflows) is under the MIT licence. - Written text (the READMEs and lab instructions) is under CC BY-NC-SA 4.0: share and adapt it with attribution to LearnSome.tech, not commercially, under the same licence.
- The LearnSome.tech name and logo are not covered by either licence.
This repository is generated from the course. Report a broken lab or a content error as an issue; see CONTRIBUTING.md. Security reports go to SECURITY.md.
© 2026 LearnSome.tech