Dev-режим и первый запуск
Самый быстрый способ потрогать Vault руками — dev-режим, и почему его нельзя нести в прод.
Dev-режим — упрощённый режим запуска Vault, где он сразу инициализирован, распечатан и держит данные в памяти; предназначен только для обучения и локальной разработки.
Чтобы начать, не нужен ни кластер, ни TLS, ни ритуал с unseal-ключами. Одна команда поднимает готовый к работе Vault.
Запуск
vault server -dev
В консоли появится адрес и root-токен. Vault печатает их прямо в лог — это первый признак, что режим небезопасен:
==> Vault server configuration:
Api Address: http://127.0.0.1:8200
Storage: inmem
Unseal Key: 1+yv...
Root Token: hvs.devonlyXXXX
Что dev-режим делает за вас
- Инициализирует и распечатывает Vault автоматически — никаких
operator initиunseal. - Хранит данные в памяти (
inmem) — после остановки всё исчезает. - Слушает по HTTP без TLS на
127.0.0.1:8200. - Выдаёт root-токен и монтирует KV-движок на
secret/.
Настройка клиента
CLI vault — это тоже клиент по сети, ему нужно знать адрес и токен. Их передают через переменные окружения:
export VAULT_ADDR='http://127.0.0.1:8200'
export VAULT_TOKEN='hvs.devonlyXXXX'
vault status
После этого можно сразу работать:
vault kv put secret/hello name=world
vault kv get secret/hello
Как работает под капотом
Dev-режим — это обычный Vault с предустановленными «костылями для удобства»: backend inmem, авто-unseal встроенным фиктивным ключом и единый порог 1/1. Архитектурно это тот же Vault, поэтому всё, что вы изучите в dev, применимо и в проде — меняется лишь обвязка запуска и хранения.
Почему dev НЕЛЬЗЯ в прод
| Свойство dev | Чем грозит в проде |
| данные в памяти | перезапуск стирает все секреты |
| HTTP без TLS | секреты ходят по сети открыто |
| root-токен в логе | полный доступ виден всем, у кого есть лог |
| авто-unseal фикс-ключом | кража диска раскрывает всё |
Частые ошибки
- Запустить dev и забыть про него на сервере, доступном из сети — открытый Vault с root-токеном.
- Удивляться потере данных после рестарта — в dev так и задумано.
- Тащить root-токен из dev в скрипты — он временный и небезопасный.
Итог
- Dev-режим даёт готовый Vault одной командой — идеален для обучения.
- Клиент настраивается через
VAULT_ADDRиVAULT_TOKEN. - В прод dev-режим нести нельзя: память, отсутствие TLS и root-токен в логе.