IP сервера постоянно попадает в SPAM-листы, как узнать, какие скрипты рассылают спам. Инструкция для Postfix. Подходы могут быть применены и к другим почтовикам.
Пути и названия файлов могут немного отличаться, зависит от версии ОС.
Узнаем в какой папке находится скрипт, который рассылает спам функцией mail() и аналогами.
- Создать скрипт /usr/sbin/sendmail.postfix-wrapper:
touch /usr/sbin/sendmail.postfix-wrapper vi /usr/sbin/sendmail.postfix-wrapper
Добавить в файл эти две строчки:
#!/bin/sh (echo X-Additional-Header: $PWD ;cat) | tee -a /var/tmp/mail.send|/usr/sbin/sendmail.postfix-bin "$@"
- Создать лог-файл /var/tmp/mail.send, дать ему права a+rw. Сделать созданный враппер исполнимым файлом, переименовать старый sendmail и пирлинковать sendmail к созданному врапперу.
touch /var/tmp/mail.send chmod a+rw /var/tmp/mail.send chmod a+x /usr/sbin/sendmail.postfix-wrapper mv /usr/sbin/sendmail.postfix /usr/sbin/sendmail.postfix-bin ln -s /usr/sbin/sendmail.postfix-wrapper /usr/sbin/sendmail.postfix
-
Ждем час и возвращаем sendmail на место:
rm -f /usr/sbin/sendmail.postfix mv /usr/sbin/sendmail.postfix-bin /usr/sbin/sendmail.postfix
Изучаем файл /var/tmp/mail.send. Должны быть записи, которые начинаются строчкой X-Additional-Header: где указана директория, в которой находится скрипт, рассылающий спам.
Если ни какой подозрительной активности в файле лога нет, значит спам рассылается через взломанный почтовый аккаунт.
Всё что далее, написано для Plesk 12 и мною не тестировалось. Источник: http://kb.odin.com/en/114845
zgrep -c 'sasl_method=LOGIN' /var/log/maillog* /var/log/maillog:221000 /var/log/maillog.processed:362327 /var/log/maillog.processed.1.gz:308956
Если видно подозрительно высокое количество попыток входа в какой-либо почтовый аккаунт, значит скорее всего его взломали.
Можно использовать следующую команду для поиска таких аккаунтов:
zgrep 'sasl_method=LOGIN' /var/log/maillog* | awk '{print $9}' | sort | uniq -c | sort -nr | head 891574 sasl_username=admin@example.com
Чтобы остановить спам в этом случае, нужно установить устойчивые пароли на взломанные почтовые аккаунты.