需求: 要求使用ansible创建一个名为private.yml加密文件
[student@workstation ansible]$ ansible-vault create private.yml
提示输入密码并确认
New Vault password: pqowitalskg
Confirm New Vault password: pqowitalskg
[student@workstation ansible]$ ansible-vault view private.yml
提示输入密码
Vault password: pqowitalskg
把密码存到一个文件里面
[student@workstation ansible]$ echo ‘pqowitalskg’ > secret.txt
查看的时候使用--vault-password-file参数跟上密码文件
[student@workstation ansible]$ ansible-vault view private.yml --vault-password-file=secret.txt
在ansible.cfg中指定密码文件
[student@workstation ansible]$ vim ansible.cfg
[defaults]
vault_password_file=/home/student/ansible/secret.txt
直接查看,不要输入密码也不需要跟上密码文件参数
[student@workstation ansible]$ ansible-vault view private.yml
默认情况下是直接找配置文件里的面,如果配置文件里面的密码与当前加密文件的密码不匹配,会导致解密失败
可以使用--ask-vault-pass,来提示输入当前密码
[student@workstation ansible]$ ansible-vault rekey up_install.yml --ask-vault-pass
提示输入当前密码
Vault password:
输入新密码并且确认
New Vault password:
Confirm New Vault password:
编辑一个现有的加密yml文件
[student@workstation ansible]$ ansible-vault edit up_install.yml --ask-vault-pass
加密一个现有文件
[student@workstation ansible]$ ansible-vault encrypt phpinfo.yml --ask-vault-pass
加密一个现有文件,源文件不更改,加密的数据输出到一个新的文件中
[student@workstation ansible]$ ansible-vault encrypt balancer.yml --output=se_balancer.yml
加密一个字符串
[student@workstation ansible]$ ansible-vault encrypt_string "shenqi" --ask-vault-pass
解密yml文件
[student@workstation ansible]$ ansible-vault decrypt se_phpinfo.yml --ask-vault-pass
同样的也可以输出到一个新文件中
--output=balancer.yml
默认,Ansible
使用python-crypto
包提供的工具加密和解密文件。
如果有很多加密的文件需要解密,那么解密开始时候会有延迟,为了解决这个问题,安装python-cryptography
包。
[student@workstation ansible]$ sudo yum install python-cryptography -y
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。