Ansible for iOS network_cli-如何使用用户名和密码进行身份验证?

时间:2019-03-01 18:27:49

标签: ansible

这是我的剧本,收到身份验证失败的消息(是的,我的信是正确的)

---
- name: CHECK VERSION
  hosts: all
  gather_facts: no
  vars:
    creds:
      hosts: all
      username: "{{ ios_username }}"
      password: "{{ ios_password }}"
  vars_prompt:
    - name: "ios_username"
      prompt: "Your Username"
      private: no
    - name: "ios_password"
      prompt: "Your Password"
      private: yes


  tasks:
    - name: RUN SHOW VERSION  
      connection: network_cli
      ios_command:
        provider: "{{ creds }}"
        commands: show version
        host: "{{ inventory_hostname }}"

我真的不希望对这些设备(或任何设备)启用ssh密钥身份验证,以便对用户操作进行审核。有没有办法通过剧本来传递我的凭据?

1 个答案:

答案 0 :(得分:0)

我认为您的麻烦是因为您在使用network_cli连接,但同时也在使用ios_command: provider。这是多余的,并且会造成混乱。只需使用network_cli,因为provider已过时。如果您使用network_cli连接,则需要将这些变量传递到here列出的network_cli插件变量中。

ansible_user: "{{ ios_username }}" 
ansible_ssh_pass: "{{ ios_password }}"