Отчистка очереди от нежелательных писем - Qmail
Перейти к навигации
Перейти к поиску
Проблемма: в локальной сети появился вирус и за короткие сроки колво писем в очереди достигло 20 тысяч.
Решение: Был написан скрипт удаляющий эти письма из очереди.
#!/usr/bin/perl -w
$fi = `find /home/var/qmail/queue/mess/ -type f`;
#Здесь /home/var/qmail/queue/mess/ -папка где находятся письма
@file = split(/\n/, $fi);
foreach (@file)
{
$test = `cat $_ | grep body.zip`;
#Здесь body.zip - уникальная часть тела письма по которому скрипт будет удалять
if ($test ne "" ) {
s%/home/var/qmail/queue/mess/%%;
#Здесь /home/var/qmail/queue/mess/ -папка где находятся письма
$tt = `rm /home/var/qmail/queue/*/$_`;
#Здесь /home/var/qmail/queue/ -папка где находятся очередь
}
}
exit 0;
Внимание! Перед тем как очищать очередь остановите почту:
/usr/local/bin/qmailctl stop
Очистите очередь с помощью скрипта. А потом запустите:
/usr/local/bin/qmailctl start