Ansibleは構成管理ツールです。 Ansibleを使用しているときに、さまざまなプレイブック、インベントリファイル、変数ファイルなどを作成できます。一部のファイルには、ユーザー名やパスワードなどの機密性の高い重要なデータが含まれています。 Ansibleは、このデータが公開されないようにするAnsibleVaultという名前の機能を提供します。パスワードやその他の機密データは、プレーンテキストファイルではなく暗号化されたファイルに保存されます。パスワードベースの認証を提供します。
[編集者注 :Ansible Vaultは、使用する可能性のある1つのツールですが、必ずしもほとんどのシステム管理者が本番環境で実行しているものとは限りません。 Red Hat Ansible Automation Platformはエンタープライズグレードであり、ほとんどの企業が持っている既存のツールとも連携できます。 ]
[次のこともお楽しみいただけます:Ansibleプレイブックでの秘密の処理]
AnsibleVaultはさまざまな操作を実行します。具体的には
- ファイルを暗号化する
- ファイルを復号化する
- 暗号化を破ることなく暗号化されたファイルを表示する
- 暗号化されたファイルを編集する
- 暗号化されたファイルを作成する
- 暗号化されたキーを生成またはリセットします
暗号化されたファイルを作成する
ansible-vault create
コマンドを使用して暗号化されたファイルを作成します。
# ansible-vault create vault.yml
このコマンドを入力すると、パスワードの入力を求められ、コンテンツを配置する場所が求められます。ファイルが暗号化されていることを確認するには、cat
を使用します コマンド。
次のコマンドは、--vault id
で暗号化されたファイルを作成するために使用されます 。
# ansible-vault create --vault-id password@prompt vault.yml
暗号化されたファイルの編集
ファイルが暗号化されていて変更が必要な場合は、edit
を使用してください コマンド。
# ansible-vault edit secure.yml
ファイルの復号化
ansible-vault decrypt
コマンドは、暗号化されたファイルを復号化するために使用されます。
# ansible-vault decrypt secure.yml
実行中のプレイブックを復号化する
実行中にプレイブックを復号化するには、通常、パスワードを要求します。
# ansible-playbook --ask-vault-pass email.yml
ファイルのパスワードをリセット
ansible-vault rekey
を使用します 暗号化されたファイルのパスワードをリセットするコマンド。
email.ymlファイルの内容は次のとおりです:
---
- hosts: localhost
vars_files: secret.yml
tasks:
- name: Sending an email using Ansible
mail:
host: smtp.gmail.com
port: 587
username: [email protected]
password: "{{ p }}"
to: [email protected]
subject: Email By Ansible
body: Test successful
delegate_to: localhost
[Ansibleについてもっと知りたいですか? RedHatから無料の技術概要コースを受講してください。 Ansible Essentials:自動化の技術概要のシンプルさ。 ]
まとめ
この記事では、セキュリティを損なうことなくファイル内の機密情報を暗号化するのに役立つAnsible機能であるAnsibleVaultについて学習しました。また、ファイルの復号化、暗号化されたファイルの編集、AnsibleVaultパスワードのリセットについても学びました。この機能は、保護して公開されないようにしたい機密データがある場合に特に便利です。
Ansible Vaultは通常、ジュニアレベルのシステム管理者向けのツールと見なされており、エンタープライズグレードとは見なされないことに注意してください。エンタープライズソリューションについては、Red Hat AnsibleAutomationPlatformを参照してください。