vault不仅能对密码、剧本等敏感信息进行加密,而且还可以加密变量名称和变量值,从而确保数据不会被他人轻易阅读。使用ansible-vault命令可以实现内容的新建(create)、加密(encrypt)、解密(decrypt)、修改密码(rekey)及查看(view)等功能。
1.创建剧本,保存两个变量值。
[root@dsrw ~]# vim locker.yml
---
pw_developer: Imadev
pw_manager: Imamgr
2.新建一个用于保存密码值的文本文件,以便让ansible-vault命令自动调用。
为保证数据的安全性,在新建密码文件后将该文件的权限设置为600
[root@dsrw ~]# vim /root/secret.txt
helloiamdsrw.com
[root@dsrw ~]# chmod 600 /root/secret.txt
修改主配置文件
[root@dsrw ~]# vim /etc/ansible/ansible.cfg
140 vault_password_file = /root/secret.txt
4.对文件进行加密。
[root@dsrw ~]# ansible-vault encrypt locker.yml
Encryption successful
[root@dsrw ~]# cat locker.yml
$ANSIBLE_VAULT;1.1;AES256
30353266353861376137616361656530626337383734346561396336613237663433343265646530
6537636161303766633235663764376137653032333939310a613564313634373439353365636630
32326566383533333436626232333131366633346337373439633335383737393939626632643036
6263333538373833660a663166343133393963356632333035303161326662333136343232333132
31383636633931366236383835316332643961353736643130306566313936353465353439643339
3334363863616631666638623930653532383564313362333230
5.使用rekey参数手动对文件进行改密操作
同时应结合--ask-vault-pass参数进行修改,否则Ansible服务会因接收不到用户输入的旧密码值而拒绝新的密码变更请求
[root@dsrw ~]# ansible-vault rekey --ask-vault-pass locker.yml
Vault password:
New Vault password:
Confirm New Vault password:
Rekey successful
6.查看和修改加密文件中的内容
[root@dsrw ~]# ansible-vault edit locker.yml
---
pw_developer: Imadev
pw_manager: Imamgr
pw_production: Imaprod
[root@dsrw ~]# ansible-vault view locker.yml
---
pw_developer: Imadev
pw_manager: Imamgr
pw_production: Imaprod
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
请登录后查看评论内容