1

网络家伙假装“编码”......(在此处插入笑声/耻辱)。我正在尝试创建一个充满 STIG 要求的剧本。我希望能够在网络设备上运行这个剧本,然后轻松地将结果复制到我们的 .ckl 文件中。

如果它不完全和完全明显,我使用 Ansible 不到一周。

*首先,我要对命令的输出进行 ansible 注册。*然后我想验证某些单词或短语是否在寄存器的输出中。*然后当然有一个调试消息状态“Not a Finding {insert register here}”或“Open {insert register here}”

我似乎无法让“当{this pharse}(是(或不)在)register.stdout”工作。

使用 Ansible 2.9

    - hosts: ios
  connection: network_cli
  gather_facts: no
  tasks:
    - name: Gather Username Configuration Lines
      ios_command:
        commands: show run | i username localadmin
      register: output
    - debug:
        msg:  "{{ output.stdout }}"
    - name: Username has correct privilege level
      block:
        - debug:
            msg: "{{ output.stdout }}"
      when: "'privilege 15' in output.stdout"

输出:

$ ansible-playbook ciscouserprivcheck.yml -u localadmin -k
SSH password: 

PLAY [ios] *************************************************************************************************************************************

TASK [Gather Username Configuration Lines] *****************************************************************************************************
ok: [Cisco1]

TASK [debug] ***********************************************************************************************************************************
ok: [Cisco1] => 
  msg:
  - username localadmin privilege 15 secret 5 $1$o1t2$VoZhNwm3bMfsTJ6e8RIdl1

TASK [debug] ***********************************************************************************************************************************
skipping: [Cisco1]

PLAY RECAP *************************************************************************************************************************************
Cisco1                     : ok=2    changed=0    unreachable=0    failed=0    skipped=1    rescued=0    ignored=0 
4

0 回答 0