Ansible教程(9)vault加密功能

TangLu 系统运维 2023-11-15 196 0

一、Ansible Vault介绍

在工作环境中,编写playbook难免会遇到敏感信息的存在,这部分信息本身是不应该让所有人能看到的,比如数据库密码。为了保护这类数据,可以通过ansible的vault功能实现加密,加密后的文件在查看和使用的时候都需要传递密码,这样保障了密码的安全性


二、Ansible Vault用法

1、使用 ansible-vault encrypt 命令加密文件,加密后的文件无法直接打开

ansible-vault encrypt /tmp/test.yml

vault1.jpg


2、使用ansible-vault decrypt命令可以对加密后的文件进行解密,解密后该文件就有了正常查看和修改权限

ansible-vault decrypt /tmp/test.yml


3、使用ansible-vault rekey命令修改密码,修改时需要输入之前的密码

ansible-vault rekey /tmp/test.yml

vault2.jpg


4、通过--vault-password-file选项可以指定一个密码文件,避免每次运行都需要输入密码,该文件需要注意权限,不能让所有人都可以看到

echo "123" > file_pass
ansible-playbook /tmp/yml --vault-password-file=file_pass


5、在 ansible.cfg 里通过 vault_password_file 参数指定密码文件路径,这样运行命令的时候可以省去--vault-password-file选项

vi ansible.cfg
[defaults]
vault_password_file = file_pass


评论