У меня есть 2 задачи, которые я пытаюсь запустить в сценарии упрощения СНГ на сервере Ubuntu 14.04.Зачем пропустить задачу Ansible?
Первая задача
- name: 8.1.12 Collect Use of Privileged Commands (Scored)
shell: /usr/bin/find {/usr/local/sbin,/usr/local/bin,/sbin,/bin,/usr/sbin,/usr/bin} -xdev \(-perm -4000 -o -perm -2000 \) -type f | awk '{print "-a always,exit -F path=" $1 " -F perm=x -F auid>=500 -F auid!=4294967295 -k privileged" }'
register: privileged_programs
tags:
- scored
- section8.1.12
Это, как предполагается зарегистрировать список льготных программ, которые будут использоваться в следующей задаче. Если я скопирую команду выше на VM Ubuntu и запустил ее, я получу длинный список программ, как и следовало бы.
Вторая задача заключается в следующем:
- name: 8.1.12 Collect Use of Privileged Commands (Scored)
lineinfile: dest=/etc/audit/audit.rules line="{{item}}" insertafter=EOF state=present
with_items: privileged_programs.stdout_lines
when: privileged_programs is defined and privileged_programs.stdout_lines|length > 0
notify: restart auditd
tags:
- scored
- section8.1.12
Это должно сработать, если какие-либо результаты зарегистрированы, но до сих пор я не смог заставить его работать. Он пропускается каждый раз, когда я пытаюсь запустить 2 задачи. Я предполагаю, что переменная privileged_programs не сохраняется и не передается правильно.
Примечание: Я попытался изменить первую задачу от оболочки команды, но затем я получил ошибку «STDERR:/USR/бен/найти: пути должны предшествовать выражение»
Примечание2: Я также проверил в и т.д./audit/audit.rules и проверяет, что привилегированные программы в нем еще не содержатся.
Редактировать: Я добавил отладку между двумя задачами для вывода var = privileged_programs. Вот часть его, которая, я думаю, может указывать на часть выпуска:
"stderr": "/usr/bin/find: `{/usr/local/sbin,/usr/local/bin,/sbin,/bin,/usr/sbin,/usr/bin}': No such file or directory",
"stdout": "",
"stdout_lines": [],
"warnings": []
Кто-нибудь знает, почему это было бы?
Заранее благодарен!
Можете ли вы добавить '- debug' между задачами и увидеть, что первая запущенная задача и' privileged_programs' имеет какое-то значение? – helloV
Я добавил отрывок из отладки – JaReg
Отметьте мой ответ – helloV