Como usar o Ansible Vault em Playbooks para proteger dados sensíveis - Parte 10

Como usar o Ansible Vault em Playbooks para proteger dados sensíveis - Parte 10

À medida que você usa Ansible, você pode ser obrigado a digitar algumas informações confidenciais ou secretas em playbooks. Isso inclui chaves, senhas e certificados SSL privados e públicos ssh para mencionar apenas alguns. Como já sabemos, é uma prática ruim para salvar essas informações confidenciais em texto simples por razões óbvias. Essas informações precisam ser mantidas sob bloqueio e chave, porque só podemos imaginar o que aconteceria se hackers ou usuários não autorizados conseguissem.

Felizmente, Ansible nos fornece um recurso útil conhecido como Ansible cofre. Como o nome sugere, o Ansible cofre ajuda a garantir informações secretas vitais, como discutimos anteriormente. Ansible cofre pode criptografar variáveis, ou mesmo arquivos inteiros e manuais da YAML, como demonstraremos mais tarde. É uma ferramenta muito útil e fácil de usar que requer a mesma senha ao criptografar e descriptografar arquivos.

Vamos agora mergulhar e ter uma visão geral das várias operações que podem ser realizadas usando Ansible cofre.

Como criar um arquivo criptografado em Ansible

Se você quiser criar um criptografado Livro de cantadas Arquivo Basta usar o Ansible-Vault Criar comando e forneça o nome do arquivo como mostrado.

# Ansible-Vault Create FileName 

Por exemplo, para criar um arquivo criptografado MySecrets.yml execute o comando.

# Ansible-Vault Crie MySecrets.yml 

Posteriormente, você será solicitado a uma senha e, depois de confirmá -la, uma nova janela será aberta usando o editor VI, onde você pode começar a escrever suas peças.

Crie um arquivo criptografado em Ansible

Abaixo está uma amostra de algumas informações. Depois de terminar, basta salvar e sair do manual. E isso é exatamente isso ao criar um arquivo criptografado.

Arquivo criptografado em Ansible

Para verificar a criptografia de arquivo, use o comando CAT como mostrado.

# gato mysecrets.yml 
Verifique o arquivo criptografado em Ansible

Como ver um arquivo criptografado em Ansible

Se você deseja ver um arquivo criptografado, basta passar o Vista Ansible-Vault comando como mostrado abaixo.

# Ansible-Vault View MySecrets.yml 

Mais uma vez, você será solicitado a uma senha. Mais uma vez, você terá acesso às suas informações.

Veja o arquivo criptografado em Ansible

Como editar um arquivo criptografado em Ansible

Para fazer alterações em um arquivo criptografado, use o Editar Ansible-Vault comando como mostrado.

# Ansible-Vault Edit MySecrets.yml 

Como sempre, forneça a senha e depois prossiga editando o arquivo.

Editar arquivo criptografado em Ansible

Depois de terminar a edição, salve e saia do editor Vim.

Como alterar a senha do cofre Ansible

Caso você sinta a necessidade de alterar a senha do cofre Ansible, você pode fazê -lo facilmente usando o Ansible-Vocal Rekey comando como mostrado abaixo.

# Ansible-Vault Rekey MySecrets.yml 
Alterar senha do cofre Ansible

Isso solicita a senha do cofre e mais tarde solicita que você insira a nova senha e depois a confirme.

Como criptografar um arquivo não criptografado em Ansible

Suponha que você queira criptografar um arquivo não criptografado, você pode fazê -lo executando o Ansible-vocal Encrypt comando como mostrado.

# Ansible-Vault Crypt Classificado.TXT 
Criptografar um arquivo não criptografado

Você pode mais tarde visualizar o arquivo usando o comando CAT, conforme indicado abaixo.

Exibir arquivo criptografado

Como descriptografar um arquivo criptografado

Para visualizar o conteúdo de um arquivo criptografado, simplesmente descriptografar o arquivo usando o Ansible-vocal Encrypt conforme ilustrado no exemplo abaixo.

# Ansible-Vault descriptografar.TXT 
Descriptografar um arquivo criptografado

Como criptografar variáveis ​​específicas em Ansible

Além disso, o Ansible Vault concede a você a capacidade de criptografar certas variáveis. Isso é feito usando o Ansible-Vault Encrypt_String comando como mostrado.

# Ansible-Vault Encrypt_String 
Variáveis ​​específicas criptografadas em Ansible

O Ansible Vault solicitará a senha e mais tarde exigirá que você a confirme. Em seguida, digite o valor da string que deseja criptografar. Finalmente, pressione Ctrl + d. Depois disso, você pode começar a atribuir o valor criptografado em um manual.

Isso pode ser alcançado em uma única linha, como mostrado abaixo.

# Ansible-Vault Encrypt_string 'String'--name 'variable_name' 
Atribuir valor criptografado no manual Ansible

Como descriptografar um arquivo de manual durante o tempo de execução

Se você tem um arquivo de manual e deseja descriptografá -lo durante o tempo de execução, use o --Ask-Vault-Pass opção como ilustrado.

# Ansible-playbook implantar.yml --kask-vault-pas 
Decriprypt Playbook File durante o tempo de execução

Isso descriptografa todos os arquivos usados ​​no manual, desde que eles tenham sido criptografados usando a mesma senha.

Os avisos de senha podem ser irritantes às vezes. Esses avisos tornam a automação insustentável, especialmente quando a automação é fundamental. Para otimizar o processo de descriptografar os manuais durante o tempo de execução, é recomendável ter um arquivo de senha separado que contenha a senha do Ansible Vault. Este arquivo pode ser passado durante o tempo de execução, como mostrado.

# Ansible-playbook implantar.YML-Vault-Password-File/Home/Tecmint/Vault_pass.TXT 

Isso nos leva à conclusão deste tópico e à série Ansible Automation. Esperamos que os tutoriais tenham infundido algum conhecimento útil sobre como você pode automatizar tarefas em vários servidores de um sistema central.