在运行playbook之前,Ans Ansible可以检查密码是否正确吗?

时间:2018-05-28 09:04:48

标签: ansible

是否有任何机制可以检查SSH / SUDO密码是否正确?在整个环境中部署Playbook时,在输入错误的密码后,ansible在密码错误的所有主机上运行,​​失败并且我的LDAP / AD帐户被锁定。

2 个答案:

答案 0 :(得分:0)

事实证明,Ansible似乎没有这个功能,我决定自己创建一个解决方法: 在site.yml中,我添加了一个只在一台服务器上运行且在其中有1个或可选2个任务的角色。第一个检查登录本身是否有效,第二个检查sudo是否有效。

- name: Check ssh password first
  command: echo "ssh password correct"
  changed_when: false

- name: Check sudo password first
  command: echo "sudo password correct"
  become: yes
  changed_when: false

答案 1 :(得分:0)

作为一个好的解决方法,我通常将其放在site.yml中:

- hosts: all
  gather_facts: false
  tasks:
   - name: site.yml | Check if Password is correct
  become: true
  command: echo "PW is correct"
  run_once: true
  tags:
    - always

该任务将始终运行,无论您使用哪个标签开始播放剧本,并且都会先检查ssh / sudo密码是否在一台主机上运行,​​然后再对所有服务器发出登录请求。