Ansible est un outil de gestion de configuration. Lorsque vous travaillez avec Ansible, vous pouvez créer divers playbooks, fichiers d'inventaire, fichiers variables, etc. Certains fichiers contiennent des données sensibles et importantes telles que des noms d'utilisateur et des mots de passe. Ansible fournit une fonctionnalité nommée Ansible Vault qui empêche l'exposition de ces données. Il conserve les mots de passe et autres données sensibles dans un fichier chiffré plutôt que dans des fichiers texte brut. Il fournit une authentification basée sur un mot de passe.
[ Note de l'éditeur : Ansible Vault est un outil que l'on peut utiliser, mais pas nécessairement celui que la plupart des administrateurs système exécutent en production. Red Hat Ansible Automation Platform est conçu pour les entreprises et peut également fonctionner avec les outils existants dont disposent la plupart des entreprises. ]
[ Vous pourriez également apprécier : Gérer les secrets dans vos playbooks Ansible ]
Ansible Vault effectue diverses opérations. Plus précisément, il peut
- Chiffrer un fichier
- Décrypter un fichier
- Afficher un fichier crypté sans casser le cryptage
- Modifier un fichier chiffré
- Créer un fichier chiffré
- Générer ou réinitialiser la clé chiffrée
Créer un fichier chiffré
La création de ansible-vault create
La commande est utilisée pour créer le fichier crypté.
# ansible-vault create vault.yml
Après avoir tapé cette commande, il vous demandera un mot de passe, puis vous demandera où placer votre contenu. Pour vérifier que le fichier a bien été chiffré, utilisez le cat
commande.
La commande suivante est utilisée pour créer des fichiers chiffrés avec --vault id
.
# ansible-vault create --vault-id password@prompt vault.yml
Modification du fichier crypté
Si le fichier est chiffré et que des modifications sont nécessaires, utilisez la commande edit
commande.
# ansible-vault edit secure.yml
Décrypter un fichier
Le ansible-vault decrypt
La commande est utilisée pour décrypter le fichier crypté.
# ansible-vault decrypt secure.yml
Décrypter un playbook en cours d'exécution
Pour déchiffrer le playbook pendant son exécution, vous demandez généralement son mot de passe.
# ansible-playbook --ask-vault-pass email.yml
Réinitialiser le mot de passe du fichier
Utilisez le ansible-vault rekey
commande pour réinitialiser le mot de passe du fichier crypté.
Voici le contenu du fichier 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
[ Besoin d'en savoir plus sur Ansible ? Suivez un cours de présentation technique gratuit de Red Hat. Ansible Essentials :Présentation technique de la simplicité dans l'automatisation. ]
Récapitulez
Dans cet article, vous avez découvert Ansible Vault, une fonctionnalité Ansible qui vous aide à chiffrer des informations confidentielles dans un fichier sans compromettre la sécurité. Vous avez également appris à décrypter des fichiers, à modifier des fichiers cryptés et à réinitialiser les mots de passe Ansible Vault. Cette fonctionnalité est particulièrement utile si vous avez des données confidentielles que vous souhaitez sécuriser et empêcher d'être exposées publiquement.
N'oubliez pas qu'Ansible Vault est généralement considéré comme un outil pour les administrateurs système de niveau junior et n'est pas considéré comme un outil de niveau entreprise. Pour une solution d'entreprise, reportez-vous à Red Hat Ansible Automation Platform.