Как запустить проверку соответствия с помощью ansible playbooks - PullRequest
0 голосов
/ 13 января 2020

У меня есть книга игр, разработанная для обеспечения соответствия на брандмауэре. Однако мои знания ansible не распространяются на настройку переменных и условных выражений ..

Это моя текущая пьеса:

---
- name: Juniper SRX configuration compliance checks 
  hosts: juniper
  gather_facts: false
  tasks:
  - name: Syslog server check
    junos_config:
      src: files/syslog_config
      comment: Appropriate Syslog server configured 
  - debug:
      var: task

  - name: print success
    debug:
      msg: Syslog server check - OK
    when: not {{ task.changed }}

  - name: print failed
    debug:
      msg: Syslog server check - failed
    when: "{{ task.changed }}"

  - name: Admin credentials 
    junos_config:
      src: files/admin_user
      comment: admin user created and confirmed 


  - name: NTP check 
    junos_config:
      src: files/NTP server
      comment: correct NTP server 

  - name: idle timeout check 
    junos_config:
      src: files/idle timeout
      comment: idle timeout confirmed 

Вот чего я хочу достичь:

• Если задание (проверка сервера Syslog) запускается на брандмауэре и выходные данные аналогичны содержимому files / syslog_config… Сообщение о пропуске (т. Е. Эта проверка сервера Syslog элемента управления помечена как проверка соответствия PASS) должна быть распечатанным и, следовательно, записанным Splunk или Elasticsearch.

• Однако, если задание (проверка сервера Syslog) запускается на брандмауэре, а вывод отличается от содержимого файлов / syslog_config. Сообщение об ошибке (т. Е. Эта контрольная проверка сервера системного журнала была помечена как ошибка, и отсутствуют следующие строки конфигурации (задайте системный системный журнал 192.168.100.70 адрес источника "{{инвентарь_хост}}".) И, следовательно, должны быть распечатаны. захвачено Splunk / ELK.

• В некоторых сценариях ios, (которые на данный момент не являются частью файла yaml), задачей (т.е. контрольной проверкой) может быть строка конфигурации, которая должна отсутствовать в брандмауэре. В этом случае, если не найдено, будет распечатано пропущенное сообщение.

Какую дополнительную строку кода (т.е. условные операторы) мне нужно добавить в файл yaml, чтобы эта работа работала ?

Вышеприведенная пьеса является моей попыткой, но она не работает должным образом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...