【问题标题】:Prompting for password during Ansible playbook running在 Ansible playbook 运行期间提示输入密码
【发布时间】:2021-08-24 06:58:19
【问题描述】:

我正在尝试编写一个 ansible 剧本发送给新同事,这将自动化他们在获得新笔记本电脑后需要执行的一些任务(安装标准程序并连接到 OpenVpn 等)我被困在我如何让他们在启动 VPN 服务时输入密码。如果我在运行它的 playbook 开头使用 --ask 或 -k 选项(密码)可能会在 playbook 启动服务之前超时。密码使用 2FA 类型的密码,他们在其中输入 PIN 码,然后使用令牌生成密码的后半部分,以便在设定的时间段后超时。我想到了 vars_prompt 但不确定它会在哪里传递以及它是否会起作用。我正在使用这样的东西:

- name: start and enable openvpn
  ansible.builtin.service:
    name: "{{ openvpn_service }}"
    state: started
    enabled: yes

但当然它会超时,因为没有提示输入密码。很高兴获得任何建议或帮助

【问题讨论】:

    标签: ansible passwords vpn openvpn


    【解决方案1】:

    您可以在执行特定任务的脚本期间要求输入密码:

    - name: "Ask for credentials"
      pause:
        prompt: "Enter VPN 2FA: "
        echo: no
      register: 2fa_password
    

    然后在 VPN 连接任务中,您可以将结果与2fa_password.user_input 一起使用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-11-01
      • 2018-10-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-05
      • 1970-01-01
      相关资源
      最近更新 更多