加密敏感的结构化数据

首先,创建一个密钥文件,例如 vault_pass_file,它理想地包含一长串随机字符。在 linux 系统中,你可以使用 pwgen 创建随机密码文件:

pwgen 256 1 > vault_pass_file

然后,使用此文件加密敏感数据,例如,groups_vars/group.yml

ANSIBLE_VAULT_PASSWORD_FILE=vault_pass_file ansible-vault encrypt group_vars/group.yml

从现在开始,为了运行剧本你需要 vault_pass_file

ANSIBLE_VAULT_PASSWORD_FILE=vault_pass_file ansible-playbook -i inventories/nodes my-playbook.yml 

注意,你也可以使用标志 --vault-password-file vault_pass_file 而不是设置 ANSIBLE_VAULT_PASSWORD_FILE 环境变量。

要编辑或解密磁盘上的密钥,你可以分别使用 ansible-vault editansible-vault decrypt