Рассылается спам с сервера

Рассылается спам с сервераИтак, имеем сервер на базе Debian.
Жалоба на исходящий спам с сервера.

Задача: очистить очередь отправлений и обнаружить причину.

Решение: вариантов, конечно, много. Рассмотрим один из них.

1. Подключаемся по SSH и смотрим очередь писем:
mailq

Да, писем много.

2. Отключаем почтовый сервер (стоит postfix)
/etc/init.d/postfix stop

3. Смотрим на соединения на 25й порт:
netstat -apn | grep :25
Если Established нет — значит, спам рассылается не через вредоносный скрипт, который отправляет почту в обход локального почтового сервера.

4. Очищаем очередь писем. Конечно, при условии, что мы это сделать можем (в очереди могут быть реальные письма реальным пользователям).
postsuper -d ALL
postsuper: Deleted: 72849 messages

5. Пробуем включить расширенное логирование почты:
mv /usr/sbin/sendmail /usr/sbin/sendmail.org
touch /usr/sbin/sendmail
chmod +x /usr/sbin/sendmail

echo -n '#!/bin/bash
logger -p mail.info sendmail-ext-log: site=${HTTP_HOST}, client=${REMOTE_ADDR}, script=${SCRIPT_NAME}, pwd=${PWD}, uid=${UID}, user=$(whoami)
/usr/sbin/sendmail.org -t -i' > /usr/sbin/sendmail

6. Запускаем почтовый сервер
/etc/init.d/postfix start

7. Смотрим логи
tail -f /var/log/mail.info
Видим что-то вроде:

Jan 23 16:25:25 danma logger: sendmail-ext-log: site=, client=, script=send.php, pwd=/var/www/danma/data/www/site.ru, uid=33, user=www-data
Jan 23 16:25:25 danma postfix/pickup[11520]: E3CD259403D: uid=33 from=
Jan 23 16:25:25 danma postfix/cleanup[11522]: E3CD259403D: message-id=<b381adaa7a41abcb0359b5233047a74b@www.site.ru>

Обращаю внимание, что это один из вариантов действий.
Если есть ID письма в жалобе — стоит посмотреть его в логах отправлений.
Бывает так, что на сервере стоит опенрелей.
А еще бывает, что просто подобрали пароль к ящику — на это так же стоит обратить внимание!

Как удалить очередь писем?

Вот типовые команды для удаления всех писем в очереди.
Exim:
exipick -i | xargs exim -Mrm

Postfix:
postsuper -d ALL

Sendmail:
rm -rf /var/spool/mqueue/*