Я предложил бы выполнить и Clamscan и Вредоносное программное обеспечение Linux обнаруживает (LMD) против него. Между ними необходимо поймать большинство общего вредоносного кода.
Конечно, если Ваш пользовательский взломщик кодировал что-то, не что иное как ручной обзор каждого файла собирается поймать его.
Я хотел бы предоставить более полное решение, хотя @MaksaSila ответила первой.
Вам просто нужен cmd.run, который будет обрабатывать изменение файла, я использую аналогичный подход:
# sample.sls systemd-reload: cmd.run: - name: systemctl --system daemon-reload - onchanges: - file: superbar.service superbar.service: file.managed: - name: /etc/systemd/system/superbar.service superfoo.service: file.managed: - name: /etc/systemd/system/superfoo.service - onchanges_in: - cmd: systemd-reload
Последний подход позволит вам разделить часть systemd и часть службы на разные файлы SLS (не забудьте включить systemd для каждого файла sls, который вы используете onchanges_in
).
См. эта страница руководства , чтобы получить более подробную информацию об отношениях и зависимостях состояний.
ответ @jollyroger хорош для версии < 0.15.0
Запуск от 0.15.0, мы можем использовать systemd_service.systemctl_reload
: https://docs.saltstack.com/en/latest/ref/modules/all/salt.modules.systemd_service.html#salt.modules.systemd_service.systemctl_r eload
superbar.service
file.managed:
- name: /etc/systemd/system/superbar.service
module.run:
- name: service.systemctl_reload
- onchanges:
- file: /etc/systemd/system/superbar.service
я полагаю, что это значительно упрощает код.
[Редактирование] директива "systemctl_reload" могла бы быть похожей systemctl reload
, но это выполняется systemctl --system daemon-reload
нижняя часть. https://документ github.com/saltstack/salt/blob/9bbbd3629418b2b086360f5b303323ec55ca0315/salt/modules/systemd_service.py#L377-L399
Saltstack также ясно указывает, что это
"Перезагрузки systemctl, действие, необходимое каждый раз, когда файлы единицы обновляются".
Я бы посоветовал после копирования этого файла запустить его в вашем состоянии:
update-systemd:
cmd.run:
- name: systemctl --system daemon-reload