Инструменты пользователя

Инструменты сайта


Боковая панель

playground:postcat

Это старая версия документа!


Как определить какой скрипт рассылает спам через postfix

Если вы обнаружили, что ваш postfix сервер рассылает спам (spam), сами понимает - вас ломанули. Довольно противное состояние.

Как правило спам рассылка запускается каким-то скриптом.

Не расстраивайтесь. Определить какой именно скрипт инициализирует рассылку можно.

Для этого переключитесь в учетную запись суперпользователя:

sudo su Проверьте очередь рассылки:

mailq |less less позволит вам просмотреть всю очередь, если вывод команды не вмещается на экран. Для выхода нажмите q.

Первая колонка будет содержать ID сообщений в очереди на отправку.

Посмотреть содержимое письма можно с помощью:

postcat -q <ID> Ищем что-то похожее на X-PHP-Originating-Script или X-Originating-Script.

Остается удалить скрипты и очистить очередь рассылки:

for m in $(/usr/bin/mailq 2&gt;&1 |grep -v postqueue |grep -i «^[1-9]\|^[A-Z]\|^0» |awk '{print $1}'); do

if (/usr/sbin/postcat -q $m |grep X-PHP-Originating-Script |grep -q eval); then
	/usr/sbin/postsuper -d $m;
fi;

done Кстати этот скрипт является очень хорошим костылем если запланировать его выполнение каждую минуту. В таком случае очередь отправки будет постоянно мониториться и очищаться.

Полностью очистить очередь можно следующей командой:

postsuper -d ALL К сожалению, на этом беды не заканчиваются. Осталось определить как же бяка попала на сервер. Для этого просмотрите логи apache и системные логи. Пересмотреть запланированые задачи (cron jobs).

playground/postcat.1658080866.txt.gz · Последние изменения: 2022/07/17 21:01 — vvp