Colobridge WIKI

как заблокировать спам

Применимость: <mail postfix exim sendmail spam recovery>


Выявление спам активности, нахождение скриптов/процессов осуществляющие данную активность, базовые методы противодействия

1. выявление

  • проверить число соединений, к примеру командой netstat -putanl | grep :25 | wc -l, примерное число должно быть в пределах 5-50, большие значения - повод для дополнительных проверок
  • проверить количество сообщений: exim -bpс, mailq, не должно быть Frozen и писем в очереди более 4 часов, общее число сообщений зависит от настроек сервера, в целом если не планировалась рассылка - не более чем 5 сообщений в час, в идеале (если не магазин или что-то другое с большими объемами почты) - 0 сообщений
  • проверить наличие большого числа файлов: ls /var/spool/{postfix,exim,mqueue}/…., подтверждение предыдущего пункта, в противном случае нужно будет проверять настройки почтового сервера и смотреть где хранятся письма, после чего проверять найденные каталоги
  • жалоба на клиента
  • жалоба на спам на shared хостингах, в т.ч. и от клиентов, которые сделали у себя shared

2. нахождение скриптов/процессов

  • проверка неожиданных процессов типа perl python bash и прочих, неожиданный владелец процессов (www-data, и прочие), неожиданный путь запуска (к примеру /dev/shm, /lib/progname, /var/lib/progname) и прочие (название совпадает с системной программой, но расположение в другом месте, к примеру /var/lib/perl)
  • проверка параметров запуска найденных процессов: ls -la /proc/<pid>/exe; cat /proc/<pid>/environ, после чего выполнить проверки аналогично предыдущему пункту
  • поискать файлы с вызовами почты в файлах для вебсервера: grep mail /var/www/sitename/….
  • если php версия >5.3 - можно использовать опцию maillog
  • проверка cron на наличие запуска вредоносных программ

3. базовые методы противодействия

  • остановить сервис: service postfix stop (другие варианты - exim, sendmail, или другой тип сервера)
  • установить smtp auth для локальных пользователей, пример для postfix (пример для smtps, однако с небольшими правками будет работать и для smtp): http://www.howtoforge.com/postfix-smtp-authentication-on-the-secure-port-only
  • зачистить очередь с сообщениями: rm /var/spool/…
  • безопасно настроить вебсервер (в частности отключить cgi, установить htpasswd и htaccess на нужные части сайта) и перезапустить его, частный случай - установка обновлений cms
  • остановить процессы, включая процессы-менеджеры при их наличии: kill pid1 pid2 pid3 ….
  • попробовать перейти на gmail/yandex

Частный случай - open relay, является ошибкой настройки сервера, подробнее - здесь: исправление open relay