The Red Hat Certified Ansible Specialist Exam (EX407) requires an understanding of working with confidential data within Ansible. This hands-on lab goes over how you can use the `ansible-vault` command to encrypt sensitive files within a vault file and also how to work with those vault files in an Ansible playbook. The exercise assumes basic proficiency with several common ansible modules and general ansible playbook use. Upon completing the lab, you will have developed an improved understanding of `ansible-vault` and vault files.
*This course is not approved or sponsored by Red Hat.*
Learning Objectives
Successfully complete this lab by achieving the following learning objectives:
- Encrypt `/home/ansible/secret` using the `ansible-vault` command.
- Switch to the ansible user with
su ansible
- Run
ansible-vault encrypt /home/ansible/secret
and provide a simple password of your choosing. - Be sure to remember the password!
- Switch to the ansible user with
- Create */home/ansible/vault* as a vault password file that may be used to access the encrypted secret file without prompt.
- Run the command
echo '<Your_Vault_Password>' > /home/ansible/vault
. - Substitute <<Your_Vault_Password>Your_Vault_Password> with the password you chose in the previous task.
- Run the command
- Run the playbook */home/ansible/secPage.yml* using your *vault* password file to validate your work.
- Run the command
ansible-playbook --vault-password-file /home/ansible/vault /home/ansible/secPage.yml
. - If your encryption was configured correctly, you should get no errors.
- Run the command
- Verify that the secure page deployed correctly by attempting to access http://node1/secure/classified.html as the user *bond* with the password *james*.
- Run
curl -u bond http://node1/secure/classified.html
and supply the password james when prompted. - The command should return the contents of classified.html regarding the weather in a certain city.
- Run