Ansible Vault: Criptografando Playbooks e Variáveis

Ansible Vault: Criptografando Playbooks e Variáveis

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:

"Estrutura

É 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>

Creando Arquivo CriptografadoApós a solicitação de confirmação de senha, é a aberto um editor para adicionar o conteúdo ao arquivo novo.

Conteúdo Criptgrafado

  • Visualizando o Arquivo Criptografado

ansible-vault view <nome_do_arquivo>

Visualizando Arquivo

  • Editando o Arquivo Criptografado

ansible-vault edit <nome_do_arquivo>

Editando 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.

CURSOSCONSULTORIA    CONTATO

Anterior Virtualização com Vagrant
Próxima Criando Pipelines no Jenkins com Jenkinsfile

About author

Yago Ésquines
Yago Ésquines 3 posts

Yago Ésquines, atua como Consultor de TI Pleno em Software Livre, formado em Ciência da Computação pela Universidade Paulista (UNIP) e em progresso na formação em Segurança da Informação pela FATEC São Caetano. Atua com foco em Linux, Cloud, DevOps e DevSecOps, possuindo mais de 5 anos de experiência profissional em Tecnologia da Informação. Detém expertise como instrutor de cursos voltados ao Sistema Operacional Linux, Infraestrutura Ágil, DevSecOps e Kubernetes, além ser Certificado Linux Engineer(LPIC-2) e DevOps Essentials.

View all posts by this author →

Você pode gostar também

Segurança

Segurança de software código aberto versus fechado.

Resumo: Este post visa esclarecer a importância da segurança de software e como a auditoria de código e melhorias nos processos são itens fundamentais para a qualidade. A auditabilidade de

Negócios

Qual o nível de maturidade DevOps da sua empresa?

Medir o nível de maturidade dos processos DevOps é o melhor caminho para direcionar novos esforços e investimentos. A 4Linux idealizou e criou um serviço de consultoria na qual ela

DevOps

Devops no dia a dia do diego fernando

No último dia 3 de setembro aconteceu a prova beta test na sede da 4Linux em SP. Foram mais de 150 inscritos que fizeram a prova de seleção na plataforma