在游戏过程中以编程方式更改 ansible_ssh_user

在游戏过程中以编程方式更改 ansible_ssh_user

我目前正在为 Ubuntu 创建一个通用的 ansible 剧本。

在强化过程中​​,我禁用了 root 用户并创建一个新的 sudo 用户来运行未来的剧本(称为ansible)。

第一次运行这个剧本时我已将ansible_ssh_user其设置为root第二次我必须手动将ansible_ssh_uservar 更改为ansible

有没有办法让 ansible 跟踪哪些主机已完成此步骤并与新创建的ansible用户建立连接,甚至回退到第二次用户名尝试。如果可能的话,我希望这个过程是无人值守的。

编辑: 我正在尝试在建立新连接时更正用户。例如,我在一台服务器上运行了强化剧本。现在我想运行它来配置新服务器并对现有服务器进行一些更新。因此我有两个用户名 root 和 ansible。我希望脚本尝试两者而不是设置主机变量,主机变量是我在这里唯一的选择吗?

答案1

使用您的库存脚本可以查询的元数据,然后根据目标框的组选择用户。

例如,使用 AWS,hardened在设置 ansible 用户后设置一个标签,然后当您运行其他游戏时,您可以在设置了强化标签的主机上使用 ansible 用户。这将使用 AWS 清单自动显示为一个组。

相关内容