Proteja sua infraestrutura com Ansible Vault: segurança e simplicidade
Automatize sua infraestrutura sem correr riscos de segurança
O Ansible foi um dos responsáveis pela popularização da automação de configurações por meio das suas playbooks (scripts no formato YAML, onde é possível definir de forma estruturada configurações para um determinado ambiente). Hoje, milhares de empresas, com a utilização do Ansible, conseguem fazer com que sua infraestrutura esteja totalmente em formato de código e versionada, basicamente, como um software.
As facilidades que o Ansible trás são inquestionáveis, porém, atualmente, é perceptível que cada informação sobre a infraestrutura de uma empresa é muita valiosa e sensível. Dessa forma é comum que as playbooks que geram toda a infraestrutura de uma empresa deixa dados sensíveis, como senhas e usuários, expostos.
O Ansible Vault vem como solução para esses problemas, já que essa funcionalidade do Ansible possibilita que as playbooks sejam criptografas e permitam que somente pessoas autorizadas possam visualizar e modificar o seu conteúdo.
Arquitetura da Criptografia
Para o Ansible Vault conseguir criptografar e manter a mínima segurança, ele utiliza a chave simétrica AES(Symmetrical Key Advanced). A chave AES provê um caminho simples de utilização já que utiliza a mesma informação de chave de criptografia para chave de decriptografia, conforme abaixo:
É necessário observar que o Ansible Vault permite a criptografia apenas arquivos, sejam playbooks ou não, e variáveis.
Ansible Vault na prática
Então, vamos aprender como é utilizá-lo:
Criando um Arquivo Criptografado
ansible-vault create <nome_do_arquivo>
Após a solicitação de confirmação de senha, é a aberto um editor para adicionar o conteúdo ao arquivo novo.
Visualizando o Arquivo Criptografado
ansible-vault view <nome_do_arquivo>
Editando o Arquivo Criptografado
ansible-vault edit <nome_do_arquivo>
Criptografando um arquivo já existente
ansible-vault encrypt <nome_do_arquivo>
Decriptografando o Arquivo
ansible-vault decrypt <nome_do_arquivo>
Criptografando Variáveis do Ansible
ansible-vault encrypt_string -n <nome_da_variável> <conteúdo_da_variável>
Esse comando fornece um resultado criptografado que é adicionando, geralmente, em vars/main.yml de um role ansible.
O exemplo mostrado acima é uma forma de proteger o conteúdo da sua variável. Pois, não permite que o conteúdo da variável fique no histórico da linha de comando.
Para executar uma playbook que esteja utiliza um arquivo ou variável criptografada é necessário passar o comando da seguinte formar:
Finalizando, percebemos que o Ansible Vault é perfeito para proteger informações e implementar Segurança no mundo DevOps de forma simples.
About author
Você pode gostar também
Guia Prático: Como Instalar e Configurar o K3D para Kubernetes
Este post tem como objetivo apresentar um guia para instalação e configuração do K3D. A solução independe de sistemas operacionais pois todas as tecnologias serão utlilizadas em containers. Introdução Montar
Segurança e Boas Práticas na Criação e Geração de Imagens Docker: Do Dockerfile ao Deploy com Hadolint, SonarQube e Trivy
A conteinerização revolucionou a forma como desenvolvemos e implantamos aplicações, oferecendo consistência e escalabilidade. No entanto, com essa evolução, a segurança se torna uma preocupação crucial. Neste post, vamos explorar as melhores práticas para criar imagens Docker seguras, desde a elaboração do Dockerfile utilizando boas práticas e ferramentas como Hadolint e SonarQube, até a implementação de uma pipeline de deploy com Trivy. Por Que a Segurança em Imagens Docker é Essencial? Imagens Docker comprometidas podem expor aplicações a vulnerabilidades, afetando a integridade dos sistemas e a confidencialidade dos dados. Implementar medidas de segurança desde a concepção do Dockerfile até o deploy é fundamental para mitigar riscos. Boas Práticas na Criação do Dockerfile 1. Utilize Imagens Base Oficiais e
Guia completo: Implantação de MongoDB resiliente no Google Kubernetes Engine
Este guia aborda a implantação de um MongoDB resiliente no GKE, incluindo etapas para configurar um StatefulSet, serviço headless e inicializar o conjunto réplica. Aprenda a utilizar recursos do GKE















