「コード」のふりをしているネットワークの男...(ここに笑い/恥を挿入してください). STIG 要件が満載のプレイブックを作成しようとしています。この Playbook をネットワーク デバイスに対して実行し、結果を .ckl ファイルに簡単にコピーできるようにしたいと考えています。
完全かつ完全に明らかでない場合のために、私は Ansible を使用してから 1 週間未満です。
*最初に、コマンドの出力をansibleに登録しています。*次に、特定の単語またはフレーズがレジスタの出力に含まれていることを検証するために ansible を使用したいと思います。*もちろん、デバッグ メッセージの状態は、"Not a Finding {insert register here}" または "Open {insert register here}" です。
「いつ {this pharse} (is (or not) in) register.stdout」が機能しないようです。
アンシブル 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