El uso de Ansible Vault garantiza la confidencialidad de los datos sensibles. Incluso si el repositorio es interceptado o publicado en GitHub, los secretos permanecen inaccesibles gracias al cifrado AES-256. Esto permite una integración segura en flujos de GitOps y CI/CD.
🤫 Operativa con Secretos (Vault File)
En este proyecto, hemos optado por cifrar archivos completos de variables para mantener una organización limpia dentro de la jerarquía de Ansible.
Creación Inicial:ansible-vault create group_vars/all/vault.yml
En mi caso quería ocultar el puerto que usamos para el servicio SSH en el servidor remoto. Para ello la variable que queremos “esconder” es ansible_port. Es la variable predeterminada para el uso del puerto SSH del servidor remoto.
Para ello añadí la variable ansible_port al archivo group_vars/all/vault.yml, con el comando ansible-vault create group_vars/all/vault.yml.
Y gracias a eso no tengo que hacer referencia a la variable.
Como podemos ver en el desglose de información sobre el nodo webservers. La variable está siendo descifrada y entendida a la correctamente, aún sin hacer referencia a ella en el inventario o roles.