Настройка командного скрипта 'find' cron / bash, который отправляет электронные письма, если есть какие-либо результаты - PullRequest
2 голосов
/ 27 апреля 2010

Я бы хотел настроить работу cron, которая проверяет, например, каждые 24 часа, чтобы увидеть, имеет ли какая-либо команда 'find', подобная приведенной ниже (которая проверяет наличие вредоносных сценариев взлома оболочки):

find /home/username/public_html -type f -print0 | xargs -0 egrep '(\/tmp\/cmd(temp)?|SnIpEr_SA|(c99|r57|php)shell|milw0rm)'

И если будут какие-либо результаты, я получу электронное письмо на указанный адрес электронной почты, например exam@ple.com.

Возможно, что-то, где задание cron, которое вызывает скрипт bash, запускается один раз в день, где команда find запускается через скрипт bash, а скрипт bash проверяет количество символов, которые возвращает команда find, и отправляет электронное письмо, если больше 0. Не уверен, что это лучший подход, но я думаю только об этом.

Я не знаю достаточно bash-программирования для реализации этого (или любой другой подобной альтернативы) - как бы выглядела реализация этого?

1 Ответ

5 голосов
/ 27 апреля 2010

Действие cron по умолчанию - отправлять вам электронные письма, если в вашем скрипте есть вывод Просто отредактируйте ваш crontab (crontab -e) и добавьте переменную MAILTO вверху.

MAILTO=exam@ple.com
30 1 * * * find /home/username/public_html -type f -print0 | xargs -0 egrep '(\/tmp\/cmd(temp)?|SnIpEr_SA|(c99|r57|php)shell|milw0rm)'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...