ansible-vault create でファイルを暗号化する
Secrets ファイルを完全に保護します。
「ansible-vault create でファイルを暗号化する」はCoddyKit上の無料DevOps Bootcampレッスンです。 これはレッスン1/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはDevOps Bootcamp学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 DevOps Bootcampコースには全4レッスンが含まれています。
平文のYAMLにシークレット?
プレイブックはGitに保存されるため、データベースのパスワードを平文のvarsに置くと、いつ漏えいしてもおかしくありません。保存時の暗号化が必要です。🔒
Ansible Vaultの紹介
Ansible Vaultはファイルや変数を暗号化するため、シークレットを安全にコミットできます。Ansibleは実行時にのみ復号します。
暗号化ファイルを作成する
ansible-vault createコマンドを使うと、最初の入力から暗号化される新しいファイルを作成できます。
ansible-vault create secrets.ymlVaultのパスワードを設定する
作成時に、Vaultはパスワードの入力を2回求めます。この1つのパスフレーズで、ファイルをロックし、後からロックを解除します。
New Vault password:
Confirm New Vault password:エディターで編集する
パスワードを入力すると、Vaultは$EDITORを開き、平文のバッファーを表示します。ここでは通常のYAMLとしてシークレットを入力してください。
db_password: s3cr3t
api_key: AKIA123EXAMPLE保存時に暗号化される
保存して終了すると、Vaultはバッファー全体を暗号化します。ディスク上のファイルは暗号文になり、入力した平文が残ることはありません。
ファイルの見た目
暗号化されたファイルは$ANSIBLE_VAULTヘッダーで始まり、その後にバージョン、暗号方式、16進数のデータが続きます。このヘッダーによって、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ファイルを整理する
よくある構成では、シークレットをgroup_vars内のvault.ymlに置き、その隣に参照先を示す平文のvars.ymlを配置します。
group_vars/
all/
vars.yml
vault.ymlクイックチェック
最初から暗号化された新しいシークレットファイルが必要です。
まとめ
ansible-vault createを使って、AES256で暗号化されたシークレットファイルを作成しました。ファイルには$ANSIBLE_VAULTヘッダーが付いており、安全にコミットできます。✨
よくある質問
「ansible-vault create でファイルを暗号化する」レッスンは無料ですか?
はい。「ansible-vault create でファイルを暗号化する」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、DevOps Bootcampコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 DevOps Bootcampコースには全4レッスンが含まれています。
「ansible-vault create でファイルを暗号化する」で何を学びますか?
Secrets ファイルを完全に保護します。 ブラウザで直接実行するハンズオンコードでDevOps Bootcampを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
DevOps Bootcampを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのDevOps Bootcampは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン1/4です。
「ansible-vault create でファイルを暗号化する」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このDevOps Bootcampレッスンでコードを書いて実行できますか?
はい。すべてのDevOps Bootcampレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- ansible-vault create でファイルを暗号化する
- Vault ファイルの編集・表示・再暗号化
- 単一の変数をインラインで暗号化する
- --ask-vault-pass で実行時に復号する