# От нуля до Pro DevSecOps

Добро пожаловать в учебный курс **DevSecOps** — практическое погружение в безопасную разработку и эксплуатацию программных систем. Курс рассчитан на людей с **минимальным опытом DevOps** и **нулевым опытом программирования**.

> **Как читать:** идите по разделам по порядку (`00` → `12`). Каждый раздел — папка с `README.md` (оглавление) и отдельными страницами. Время указано на чтение + базовую практику.

---

## Карта обучения (12 этапов)

Общая оценка: **200–400 часов** (6–12 месяцев при 8–10 ч/нед). Темп зависит от вашего бэкграунда и глубины практики.

| Этап | Раздел | Фокус | Часы (ориентир) |
|------|--------|-------|-----------------|
| 0 | [00 — Карта пути](00-karta-puti/README.md) | План, навыки, контрольные точки | 4–8 |
| 1 | [01 — Что такое DevSecOps](01-chto-takoe-devsecops/README.md) | Концепции, роли, культура | 8–12 |
| 2 | [02 — Минимум разработки](02-minimum-razrabotki/README.md) | Код, Git, API, БД, стек | 20–30 |
| 3 | [03 — DevOps-основа](03-devops-osnova/README.md) | Linux, Docker, K8s, CI/CD, IaC | 40–60 |
| 4 | [04 — Фундамент безопасности](04-fundament-bezopasnosti/README.md) | CIA, OWASP, auth, криптография | 30–40 |
| 5 | [05 — Secure SDLC](05-secure-sdlc/README.md) | Shift-left, threat modeling | 25–35 |
| 6 | [06 — Безопасность кода](06-bezopasnost-koda/README.md) | SAST, SCA, secrets, DAST | 30–40 |
| 7 | [07 — Инфраструктура](07-infrastruktura/README.md) | K8s, containers, Terraform, IAM | 35–45 |
| 8 | [08 — Runtime и мониторинг](08-runtime-monitoring/README.md) | Logging, SIEM, алерты | 25–35 |
| 9 | [09 — Compliance](09-compliance/README.md) | GDPR, ISO 27001, audit | 20–30 |
| 10 | [10 — Инструменты](10-instrumenty/README.md) | Trivy, Semgrep, Vault, CI | 25–35 |
| 11 | [11 — Практикум](11-praktikum/README.md) | Лабораторные работы | 40–60 |
| 12 | [12 — Pro-уровень](12-pro-uroven/README.md) | Портфолио, карьера, интервью | 15–25 |

```mermaid
flowchart LR
  A[00 План] --> B[01-02 Основы]
  B --> C[03 DevOps]
  C --> D[04 Security]
  D --> E[05-08 SDLC и runtime]
  E --> F[09-10 Compliance и tools]
  F --> G[11-12 Практика и Pro]
```

---

## Глоссарий (основные термины)

| Термин | Кратко |
|--------|--------|
| **DevOps** | Культура и практики совместной работы разработки (Dev) и эксплуатации (Ops) |
| **DevSecOps** | DevOps + встроенная безопасность на всех этапах жизненного цикла ПО |
| **CI/CD** | Непрерывная интеграция и доставка — автоматическая сборка, тесты, деплой |
| **Pipeline** | Цепочка автоматических шагов от коммита до продакшена |
| **Shift-left** | Перенос проверок безопасности «левее» — раньше в процессе разработки |
| **IaC** | Infrastructure as Code — инфраструктура описывается кодом (Terraform и др.) |
| **GitOps** | Управление деплоем через Git как единственный источник правды |
| **Container** | Изолированная «коробка» с приложением и зависимостями (Docker) |
| **Kubernetes (K8s)** | Оркестратор контейнеров: масштабирование, сеть, отказоустойчивость |
| **API** | Интерфейс для программного обмена данными между системами |
| **HTTP/HTTPS** | Протокол веб-запросов; HTTPS шифрует трафик |
| **JSON** | Текстовый формат обмена данными `{ "key": "value" }` |
| **SAST** | Static Application Security Testing — анализ исходного кода без запуска |
| **DAST** | Dynamic Application Security Testing — тесты работающего приложения |
| **SCA** | Software Composition Analysis — проверка зависимостей и CVE |
| **CVE** | Публичный идентификатор известной уязвимости |
| **OWASP Top 10** | Список наиболее критичных рисков веб-приложений |
| **CIA** | Confidentiality, Integrity, Availability — триада информационной безопасности |
| **AuthN / AuthZ** | Аутентификация (кто ты) / авторизация (что тебе можно) |
| **RBAC** | Role-Based Access Control — доступ по ролям |
| **Secret** | Пароль, ключ API, токен — данные, которые нельзя хранить в открытом виде |
| **TLS/SSL** | Шифрование канала связи (сертификаты) |
| **SIEM** | Сбор и анализ логов безопасности в одном месте |
| **Incident Response** | Процесс реагирования на инцидент безопасности |
| **Least privilege** | Минимально необходимые права для выполнения задачи |
| **SBOM** | Software Bill of Materials — список компонентов в сборке |
| **Threat modeling** | Систематический разбор угроз для системы или фичи |

---

## Как пользоваться tree viewer

После публикации документация доступна на **https://devsecops.nazeebo.site** (s3-md-browser).

| Действие | Как |
|----------|-----|
| Дерево разделов | Левая панель — папки `00-`…`12-`, внутри — `.md` страницы |
| Навигация по странице | Вверху каждой страницы: ссылка на раздел и на главную |
| Локально | Клонируйте репозиторий, открывайте `docs/` в IDE или md-viewer |
| Обновление на сайте | `make upload-docs` из корня проекта DevSecOps |

**Совет:** нумерация папок (`00`, `01`, …) задаёт порядок в дереве. Начните с [00 — Карта пути](00-karta-puti/README.md).

---

## Все разделы курса

| № | Раздел |
|---|--------|
| 00 | [Карта пути](00-karta-puti/README.md) |
| 01 | [Что такое DevSecOps](01-chto-takoe-devsecops/README.md) |
| 02 | [Минимум разработки](02-minimum-razrabotki/README.md) |
| 03 | [DevOps-основа](03-devops-osnova/README.md) |
| 04 | [Фундамент безопасности](04-fundament-bezopasnosti/README.md) |
| 05 | [Secure SDLC](05-secure-sdlc/README.md) |
| 06 | [Безопасность кода](06-bezopasnost-koda/README.md) |
| 07 | [Инфраструктура](07-infrastruktura/README.md) |
| 08 | [Runtime и мониторинг](08-runtime-monitoring/README.md) |
| 09 | [Compliance](09-compliance/README.md) |
| 10 | [Инструменты](10-instrumenty/README.md) |
| 11 | [Практикум](11-praktikum/README.md) |
| 12 | [Pro-уровень](12-pro-uroven/README.md) |

---

## С чего начать

1. Прочитайте [00 — Карта пути](00-karta-puti/README.md) и составьте личный план.
2. Пройдите [01 — Что такое DevSecOps](01-chto-takoe-devsecops/README.md).
3. Не пропускайте [02 — Минимум разработки](02-minimum-razrabotki/README.md) — без этого сложно понять pipeline и сканеры.

Удачи на пути к Pro DevSecOps.
