问题标签 [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.

0 投票
1 回答
1280 浏览

ansible - 如何使用 Vault 在 Ansible v2 中运行 playbook api

这是我所拥有的,我知道这无需加密即可运行,我可以运行

ansible-vault 编辑 common.yml

ANSIBLE_VAULT_PASSWORD_FILE=~/.vault_pass.txt

在环境中设置。

无法解密 common.yml

0 投票
1 回答
2253 浏览

jenkins - 在 Jenkins 中运行 Ansible playbook 解密失败

在我的开发机器上,一切都很好。只是当 Jenkins 尝试运行与保管库加密文件关联的剧本时,我看到了错误:

从 Jenkins 作业执行的命令是:

已确认保管库密码文件存在于具有以下权限的位置:

如果我运行相同的命令但要求输入密码(以交互方式),一切运行正常。然而,这不是所需的工作流程:我希望 Jenkins 自己运行这些剧本,无需用户交互。

我应该提一下,剧本是为了在本地运行任务,本质上是为 Maven 测试准备环境(创建预期的资源,例如属性文件)。

0 投票
1 回答
289 浏览

ansible-vault - 从 ansible 创建 ansible-vault

我可以从 ansible 中创建 ansible-vault 文件吗?我正在从 ansible 为另一台服务器(要在本地运行)创建部署包,并且我想加密敏感数据(密钥本身通过不同的通道传输)。

ansible-vault 是否有非交互模式来创建 vault 文件?还是有一些可靠的内在方式?

0 投票
3 回答
3448 浏览

vagrant - 将保管库密码传递给 vagrants ansible_local 供应商

我正在ansible_local为我的流浪者盒子使用供应商。我的一些变量应该存储在保险库文件中。

虽然 ansible 供应商提供ask_vault_pass了配置选项(https://www.vagrantup.com/docs/provisioning/ansible.html#ask_vault_pass),ansible_local但没有。

有什么解决方法吗?

0 投票
2 回答
4448 浏览

ansible - 变量中的 Ansible Vault 密码

有没有办法将保险库密码作为 Ansible 剧本中的变量访问?我正在寻找这样的东西:

0 投票
2 回答
3679 浏览

ansible - Ansible Vault - 最佳实践文件夹结构

我正在尝试找出最佳实践文件夹结构来组织我的 Vault 变量。

目前它看起来像这样:

但是,这样我总是必须include_vars在我的角色内部使用来获取特定的加密文件。

是否有任何我可以应用的命名约定和文件夹结构,Ansible 会像使用and一样自动获取正确的Vaulted变量?host_varsgroup_vars

我有这样的想法:

有什么我可以做的,所以我不必明确包含保险库变量吗?

0 投票
19 回答
85058 浏览

ansible - 如何使用 ansible-vault 2.3.0 解密字符串

我一直在等待 ansible 2.3,因为它将引入 encrypt_string 功能。

不幸的是,我不确定如何读取加密的字符串。

我确实尝试了 decrypt_string解密(文件),查看(文件),但没有任何效果。

我得到的错误是ERROR! input is not vault encrypted data for test.yml

如何解密字符串以便我知道它的价值而不需要运行播放?

0 投票
2 回答
6849 浏览

hash - Ansible:如何在 ansible_vault 文件中创建密码集的 pw 哈希?

我想在实例初始化时在我的操作系统上使用 Ansible te create user。为此,我有一个剧本,我在其中定义了一个角色。在这个角色中,我有以下内容:

  名称:将用户添加到本地系统
  用户:
   名称:“{{ item.username }}”
   密码:“{{ item.password }}”
   uid:“{{ item.uid }}”
   组:“{{ item.group }}"
 with_items: "{{ Ansible_Vault_SecretsFile }}"

这样,我可以在不同环境的不同机密文件中指定用户的详细信息(用户名、密码、uid 和组)。秘密文件中的密码是纯文本的。由于它被写入 /etc/shadow ,因此需要对其进行哈希处理。有没有办法在这个角色中自动散列密码变量?

编辑:为了进一步澄清,我知道秘密文件是加密的,但是在这种情况下,用户名和密码的内容在存储到 /etc/shadow 文件之前被解密。

我的秘密文件如下所示:

Ansible_Vault_SecretsFile:
 用户名:user1
 密码:MyPassword
 uid:100
 组:用户

 用户名:user2
 密码:MyPassword2
 uid:101
 组:用户

该角色遍历秘密文件,在这种情况下创建两个用户。在 /etc/shadow 文件中,密码存储为 MyPassword 和 Mypassword2,但为了登录这些明文密码,需要对这些密码进行哈希处理。我正在寻找一种自动执行此操作的方法。

0 投票
7 回答
18200 浏览

python - 如何从 Python 脚本中查看/解密 Ansible 保险库凭据文件?

我试图弄清楚如何为 Python 脚本提供以下设施,以便它可以:

  1. 导入 Ansible Python 模块
  2. 打开我定义ansible.cfg和读取的vault_password_file变量
  3. 读取vault_password_file并临时存储在 Python 变量中
  4. 解密引用的 Ansible 保管文件

通过谷歌找到了这段代码,但是当我尝试它时它似乎不起作用:

引发此错误:

当我对此进行调查时,我在任何 Ansible 相关文件中都没有看到此功能的迹象,这使我相信此方法不再适用于某些较新版本的 Ansible。

底线是我想要一些从 Python 脚本导入 Ansible 库/模块的方法,这样我就可以ansible-vault从 Python 以编程方式与托管文件进行交互。

0 投票
1 回答
34 浏览

ansible - 在同一个ansible项目中处理对不同库存文件的不同访问权限的最佳实践是什么?

我们有两个团队的一个 ansible 项目,有 3 个库存文件:inventory-all inventory-teamA inventory-teamB

TeamA 拥有所有和teamA 的权限,B 拥有所有和teamB 的权限。处理此问题的最佳做法是什么?我们使用 ansible-vault 来加密这些库存文件。

我认为由于 ansible-vault 中一个密码的限制,目前不可能开箱即用,请参阅https://github.com/ansible/ansible/issues/13243