我想设置一个cron作业来检查例如每隔24小时查看下面的“查找”命令(检查恶意shell黑客脚本)是否有任何结果:
find /home/username/public_html -type f -print0 | xargs -0 egrep '(\/tmp\/cmd(temp)?|SnIpEr_SA|(c99|r57|php)shell|milw0rm)'
如果有任何结果,我会收到指定电子邮件地址的电子邮件,例如exam@ple.com。
也许调用bash脚本的cron作业每天运行一次,其中find命令通过bash脚本运行,bash脚本检查find命令返回的字符数,并发送电子邮件大于0.不确定这是否是最好的方法,但它是我唯一能想到的方法。
我不知道足够的bash编程来实现它(或任何类似的替代方案) - 这样的实现会是什么样的?
答案 0 :(得分:5)
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)'