Шифрование файла с ansible-vault create
Полностью защитите файл с секретами
«Шифрование файла с ansible-vault create» — бесплатный урок DevOps Bootcamp на CoddyKit. Это урок 1 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения DevOps Bootcamp, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс DevOps Bootcamp содержит 4 уроков всего.
Секреты в открытом YAML?
Плейбуки хранятся в Git, поэтому пароль базы данных, лежащий в открытых vars, — это утечка, которая только ждёт своего часа. Вам требуется шифрование данных при хранении. 🔒
Знакомство с Ansible Vault
Ansible Vault шифрует файлы и переменные, чтобы секреты можно было безопасно зафиксировать в репозитории. Ansible расшифровывает их только во время выполнения.
Создайте зашифрованный файл
Команда ansible-vault create создаёт совершенно новый файл, который шифруется уже с самого первого введённого символа.
ansible-vault create secrets.ymlЗадайте пароль хранилища
При создании Vault дважды запрашивает пароль. Эта единственная парольная фраза блокирует файл и впоследствии разблокирует его.
New Vault password:
Confirm New Vault password:Редактируйте в своём редакторе
После ввода пароля Vault открывает Ваш $EDITOR с буфером открытого текста. Введите здесь секреты как обычный YAML.
db_password: s3cr3t
api_key: AKIA123EXAMPLEСохранение в зашифрованном виде
После сохранения и выхода Vault шифрует весь буфер. Файл на диске теперь содержит шифротекст, а не введённый Вами открытый текст.
Как выглядит файл
Зашифрованный файл начинается с заголовка $ANSIBLE_VAULT, за которым следуют версия, шифр и шестнадцатеричный блок. По этому заголовку Ansible понимает, что файл нужно расшифровать.
$ANSIBLE_VAULT;1.1;AES256
66386439653...
3935613...Что происходит внутри AES256
Vault использует симметричное шифрование AES256. Надёжность полностью зависит от Вашего пароля, поэтому выберите длинный уникальный пароль.
Зашифруйте существующий файл
У Вас уже есть файл с открытым текстом? Используйте ansible-vault encrypt, чтобы зашифровать его на месте, вместо создания нового файла.
ansible-vault encrypt vars/prod.ymlМожно безопасно зафиксировать
Поскольку содержимое является шифротекстом, Вы можете зафиксировать secrets.yml в Git. Без пароля любой увидит только бессмыслицу.
git add secrets.yml
git commit -m "Add vaulted secrets"Организуйте файлы хранилища
Обычно секреты хранятся в vault.yml внутри group_vars, рядом с открытым vars.yml, который ссылается на них.
group_vars/
all/
vars.yml
vault.ymlБыстрая проверка
Вам нужен новый файл секретов, зашифрованный с самого начала.
Итоги
Вы использовали ansible-vault create, чтобы создать файл секретов, зашифрованный с помощью AES256. Он содержит заголовок $ANSIBLE_VAULT, и его безопасно фиксировать в репозитории. ✨
Часто задаваемые вопросы
Урок «Шифрование файла с ansible-vault create» бесплатный?
Да — полный текст урока «Шифрование файла с ansible-vault create» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс DevOps Bootcamp, подпишись на CoddyKit PRO. Курс DevOps Bootcamp содержит 4 уроков всего.
Чему я научусь в уроке «Шифрование файла с ansible-vault create»?
Полностью защитите файл с секретами Ты практикуешь DevOps Bootcamp с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать DevOps Bootcamp?
Предыдущий опыт не требуется. DevOps Bootcamp на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 1 из 4.
Сколько времени занимает урок «Шифрование файла с ansible-vault create»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке DevOps Bootcamp?
Да. Каждый урок DevOps Bootcamp включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Шифрование файла с ansible-vault create
- Редактирование, просмотр и смена ключа файлов хранилища
- Шифрование одной переменной в строке
- Расшифровка во время выполнения с --ask-vault-pass