Vault от нулата
Контейнери и облакСредно ниво
От Dorian Chávez · основател и главен изпълнителен директор на Hábil. Така обучаваме тези, които изграждат системи, които не могат да се провалят.
Пароли, които не живеят в кода, ключове, които никой не притежава, и идентификационни данни, които изтичат сами.
За кого е: студенти по информатика и хора, които вече програмират или администрират сървъри и искат да спрат да пазят пароли във файлове; и хора от бизнес администрацията, които искат да разберат какво да питат, когато се проверява кой има достъп до какво. Курсът е от средно ниво: не обяснява какво е терминал или контейнер, но всяка нова дума се обяснява, когато се появи. Всяка сесия има каре „Ако идваш от бизнес администрацията“ със същата идея, пренесена към вътрешния контрол на една компания.
Какво ще умееш накрая:
- Да откриваш пароли, записани във файлове, и да доказваш с
git, че изтриването им не ги премахва от историята. - Да стартираш Vault в сървърен режим, да премахнеш печата му (unseal) с 3 от 5 ключа и да пазиш тайни (secrets) с права и одитен журнал.
- Да шифроваш и дешифроваш данни с механизма Transit (secrets engine), без ключът да стига до програмата ти, и да ротираш този ключ, без да губиш нищо.
- Да искаш потребители на PostgreSQL и MariaDB, които се създават, когато ги поискаш, и изтичат сами, и да свързваш програма на Python, без да пишеш нито една парола.
Какво ти трябва, преди да започнеш: да работиш с терминала, основи на git (add, commit, status) и основи на Docker (какво
е образ и какво е контейнер). За сесия 1 стигат терминал и git 2.28 или по-нов. От сесия 2 нататък: Docker
с Compose, curl, jq 1.6 или по-нов и openssl. Изпробвано на Linux Mint 22.3 с официалния образ
hashicorp/vault:2.2.0 и на macOS; на Windows не е изпробвано.
Четирите сесии
Четири сесии от около 2 часа всяка: горе-долу един час за четене и следване на примера и още един за упражнения. Всички следват една и съща история: магазин, парола, качена в GitHub в петък в 18:04, и някой, който влезе в базата данни в 3:17 сутринта.
| Сесия | Какво научаваш | |
|---|---|---|
| 1 | Проблемът с тайните | шестте начина, по които изтича една тайна; как да ги търсиш с grep и git; какво е Vault и какво не е |
| 2 | Стартиране на Vault и съхраняване на тайни | Docker Compose, печатът (seal) и ключовете на Шамир, тайни с curl, политики (policies) и одитен журнал |
| 3 | Шифроване, без да държиш ключа | механизмът Transit: шифроване, дешифроване, ротация, обвързване на шифрирането с неговия собственик и изтриване чрез унищожаване на ключа |
| 4 | Пароли, които се сменят сами | динамични идентификационни данни (dynamic secrets) в PostgreSQL и MariaDB, автоматична ротация, бутонът за паника и Python без пароли |
Лабораторията
Всичко, което се използва от сесия 2 нататък, е в корена на това хранилище: compose.yaml, скриптът iniciar.sh,
политиките, ролите и програмата на Python. Няма нито една вградена парола: лабораторията ги генерира при стартиране. Как
се стартира, е описано в основния README.
Къде се публикува
По една сесия седмично в „En construcción“, Substack-а на Hábil, в събота в 8:00, от 7 до 28 ноември 2026: https://enconstruccionmx.substack.com