HTML Diff
0 added 0 removed
Original 2026-01-01
Modified 2026-03-10
1 <p>Теги: ansible-vault, шифрование файлов</p>
1 <p>Теги: ansible-vault, шифрование файлов</p>
2 <p>Если решение какой-нибудь задачи предполагает наличие конфиденциальной информации (к примеру, доступ в базу данных), неплохой практикой является хранение данной информации<strong>в зашифрованном виде</strong>. Создавать и управлять шифрованными файлами позволяет утилита командной строки<em>ansible-vault</em>, поставляемая вместе с Ansible.</p>
2 <p>Если решение какой-нибудь задачи предполагает наличие конфиденциальной информации (к примеру, доступ в базу данных), неплохой практикой является хранение данной информации<strong>в зашифрованном виде</strong>. Создавать и управлять шифрованными файлами позволяет утилита командной строки<em>ansible-vault</em>, поставляемая вместе с Ansible.</p>
3 <p>В результате применения<em>ansible-vault</em>вы сможете "коммитить" зашифрованный файл в систему управления версиями, а прочесть его смогут лишь доверенные пользователи, имеющие пароль дешифрования.</p>
3 <p>В результате применения<em>ansible-vault</em>вы сможете "коммитить" зашифрованный файл в систему управления версиями, а прочесть его смогут лишь доверенные пользователи, имеющие пароль дешифрования.</p>
4 <p>Давайте посмотрим, как это работает.</p>
4 <p>Давайте посмотрим, как это работает.</p>
5 <p>Команда ниже позволяет шифровать уже существующий файл, при этом вам необходимо будет лишь создать пароль шифрования:</p>
5 <p>Команда ниже позволяет шифровать уже существующий файл, при этом вам необходимо будет лишь создать пароль шифрования:</p>
6 <p>Если нужно создать новый зашифрованный файл:</p>
6 <p>Если нужно создать новый зашифрованный файл:</p>
7 <p>Если надо расшифровать файл, вводим пароль, который был задействован для шифрования:</p>
7 <p>Если надо расшифровать файл, вводим пароль, который был задействован для шифрования:</p>
8 <p>Также можно выполнить редактирование зашифрованного файла. По дефолту используется редактор vim, однако его можно переопределить переменной окружения $EDITOR.</p>
8 <p>Также можно выполнить редактирование зашифрованного файла. По дефолту используется редактор vim, однако его можно переопределить переменной окружения $EDITOR.</p>
9 <p>Когда нужно отобразить содержимое файла, который вы зашифровали:</p>
9 <p>Когда нужно отобразить содержимое файла, который вы зашифровали:</p>
10 <p>Когда вы будете выполнять импорт файла<em>secrets.yml</em>в ваш плейбук, Ansible "зафейлится", ведь он не будет знать, каким образом прочесть зашифрованный вами файл. Чтобы решить проблему, надо указать аргумент командной строки<em>--ask-vault-pass</em>, в результате чего будет предложено ввести пароль для зашифрованного вами файла.</p>
10 <p>Когда вы будете выполнять импорт файла<em>secrets.yml</em>в ваш плейбук, Ansible "зафейлится", ведь он не будет знать, каким образом прочесть зашифрованный вами файл. Чтобы решить проблему, надо указать аргумент командной строки<em>--ask-vault-pass</em>, в результате чего будет предложено ввести пароль для зашифрованного вами файла.</p>
11 <p>Есть и иной способ: он заключается в хранении пароля непосредственно в файле (файл не должен быть "закоммичен"), при этом потребуется указать путь к файлу с помощью аргумента<em>--vault-password-file</em>. Если файл является исполняемым, Ansible станет запускать его, применяя вывод в качестве пароля.</p>
11 <p>Есть и иной способ: он заключается в хранении пароля непосредственно в файле (файл не должен быть "закоммичен"), при этом потребуется указать путь к файлу с помощью аргумента<em>--vault-password-file</em>. Если файл является исполняемым, Ansible станет запускать его, применяя вывод в качестве пароля.</p>
12 <p>Если тема ansible-vault вам интересна, самую актуальную и более подробную информацию можно найти<a>в официальной документации</a>.</p>
12 <p>Если тема ansible-vault вам интересна, самую актуальную и более подробную информацию можно найти<a>в официальной документации</a>.</p>
13 <p><em>По материалам статьи "<a>15 Things You Should Know About Ansible</a>".</em></p>
13 <p><em>По материалам статьи "<a>15 Things You Should Know About Ansible</a>".</em></p>
14  
14