问题标签 [ansible-vault]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ansible - 在剧本中使用保险库
您好我正在尝试使用保险库运行以下剧本,但我似乎无法让它工作。
使用以下命令创建了一个 ansible Vault 文件:
在那里我有以下条目:
然后我有以下剧本:
当我尝试使用此 cli 命令运行它时
我每次都收到以下错误
更新
如果我将连接更改为 network_cli,现在我会收到以下错误:
ansible - Ansible Vault:加密以“-”开头的密码
我正在尝试使用 ansible-vault 加密密码“-abc”。它错误地说“没有这样的选择”。
错误如下,
版本:ansible 2.7.7;Ubuntu 18
它是我们系统中使用的合法密码,以“-”开头。
好心提醒。
encryption - 将加密变量与 Ansible-Vault 一起用于网络自动化
我在网络和 Youtube 上搜索了很多教程,但没有运气。
我想通过 Ansible 配置 Cisco 交换机,我已经设置好了,可以完美运行.. 但我想将密码(用于 vty 行、控制台、启用机密...)理想地存储在通过 Ansible-Vault 加密的主机文件中作为变量所以在我的 .yml 文件中我可以访问它们。我希望它们在 hosts 文件中,因为我们为 ASW、DSW 和 CSW 设置了不同的密码,因此更易于管理。
我在 CLI 中生成了加密变量:
我将值复制到/etc/ansible/hosts 中的变量:
在config.yml 中:
现在,密码将设置为“!vault |” 我不确定这是否是最佳实践,我阅读了有关此的建议,但我能找到的只是服务器自动化,而不是网络。
我正在运行 Ansible 2.8.0
任何帮助表示赞赏,谢谢。
ansible - ansible-vault 可以用来向 vault 添加新的秘密吗
形成 ansible 文档 https://docs.ansible.com/ansible/latest/user_guide/vault.html 看来我们只能使用 ansible-vault 加密/解密文件。它不能向我的保管库实例添加新的秘密吗?
ansible - Ansible http get 请求不起作用,但手动 curl get 有效
我的 ansible playbook 中有以下任务:
此任务失败并显示:
然而,当我卷曲时,我得到了正确的价值:
看起来像 ansible 不考虑标题。这里有什么遗漏吗?
我也试过:
我遇到了一些问题,它说标题可能会自动大写。所以也试过
与卷曲配合得很好。还尝试了邮递员,并注意到在邮递员中自动添加了一个授权标头,并带有值Basic Og==
因此尝试添加该附加标头。但没有任何效果。
也尝试了 hash_vault 但得到了同样的错误:
ansible - 如何使用 Ansible Vault 加密变量?
我正在尝试对我的敏感信息(例如密码等)使用加密。
问题是:如何使用ansible-vault
来加密变量并在剧本中使用它们?
我知道如何加密字符串(如下所示),但我不知道如何在剧本中成功使用它。
原因是:我需要一些东西来“解密”变量,以便 ansible 可以理解。这些在哪里定义?
我努力了:
提示我的地方:
结果:
定义保险库变量vault_db_password
正在使用的 Vault 变量:
结果:
ansible - 调试http post请求ansible
我的 ansible playbook 中有以下任务:
此任务不断失败:
同样的任务在另一台主机(kubernetes POD)上运行良好。我在一个新系统(docker容器)上运行它。客户端令牌已正确生成。我可以通过 curl 进行 POST,因此容器上没有网络问题。有什么方法可以调试正在传递的标头、正在命中的 url 等?我不知道缺少什么。
我没有使用 Vault cli。它都是基于 HTTP 的。
添加 -vvvv 后,这里是日志:
我尝试从同一个 pod 运行带有上述所有细节的 curl,它运行良好。
ansible - Ansible - 将变量指向 Vault 中的变量的语法
尝试使用 ansible-vault 来保存敏感密码,但我在剧本中找不到正确的语法来检索它。
文档提到(强调我的):
接下来,将所有敏感变量复制到 Vault 文件中,并为这些变量添加前缀 vault_。您应该使用 jinja2 语法调整 vars 文件中的变量以指向匹配的 vault_ 变量,并确保 vault 文件是 vault 加密的。
我创建了 Vault,但我对 yml 中的 jinja2 真的不够熟悉,无法为 vars.yml 文件找到正确的语法。
任何人都可以提供有关如何在剧本中指向变量“X”以获取保险库文件中变量“vault_X”的值的语法帮助?
ansible - 是否可以对 vault_password_file 中的密码进行哈希处理以获取 ansible?
我担心密码保险库文件以纯文本形式存储解密密码,但一直找不到任何解决方案。
今天我使用 ansible-vault encrypt 命令来加密我所有的变量。然后我创建了一个密码文件用于保管库密码,并将 ansible.cfg 中的 vault_password_file 行指向它。我不希望 ansible 系统上的用户每次运行 playbook 时都被提示输入 vault 密码,这就是我们选择这种方法的原因。
这一切正常,但我担心文件中的密码以纯文本形式存储。对我来说,它打败了加密其他信息的练习。我试图找到解决方案,但我找不到任何答案。
我想知道是否有任何方法可以在文件中散列密码,仍然允许 ansible 使用它进行解密?
有没有人有任何我可以探索的解决方案?
ansible - ansible Vault 加密字符串
我正在尝试加密一些密码,但只想加密部分字符串而不是整个文件。所以有一个命令 ansible-vault encrypt_string 为您提供加密的输出,但是当我将它添加到我的 .yaml 剧本时,它无法解密。
用于加密简单密码的命令:
ansible-vault encrypt_string 'Test123!' --name 'ansible_password'
结果:
ansible_password: !vault | $ANSIBLE_VAULT;1.1;AES256 30333733643939646130396638646138636338636162316536313236666334656338306634353434 3132326265313639623039653261336265343733383730340a663565323932636138633365386332 36363534326263326633623238653464376637646632363839313464333830363436643561626534 6338613837393539350a383962663766373466376138376666393639373631313861663866333663 6137 Encryption successful
^
长字符串的格式有点笨拙
所以我试图将这个值放入我的剧本中,如下所示:
然后我想用命令执行剧本:
ansible-playbook copy.yaml -i hosts.ini
结果:
当我使用参数--ask-vault-password 运行剧本时:
ansible-playbook copy.yaml -i hosts.ini --ask-vault-pass
我试图以各种方式将输出加密,但每次由于此问题或语法问题而失败。
当从输出传递的方式输入时,我收到如下语法错误:
当所有内容都在同一行时,删除“|” 得到这个错误:
有任何想法吗?