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
Lançamento de Curso de Automação DevOps na The Developer’s Conference
Lançamento acontecerá no evento The Developer’s Conference. Aproveitando a sua participação no evento The Developer’s Conference (TDC) com 2 palestras e apoio a 5 trilhas, a 4LInux estará lançando o curso “Ferramentas
Guia Rápido: Como Fazer Deploy de uma API Python na Cloud Usando Containers
Está aprendendo a programar e gostaria e publicar sua primeira aplicação? Neste post faremos o deploy de uma API python em cloud de maneira simples e rápida utilizando containers!
Avaliando a Segurança em Ambientes Kubernetes com Kubeaudit
Essa é a segunda parte falando de segurança em ambientes Kubernetes. Caso você ainda não tenha visto a Parte 1, fique a vontade para clicar no link abaixo: No post