1 min read
Блокируем спам с помощью iptables

Автор: Gluek — Категории: webdev, blogs, programming, faq, linux — 2:07

Поизучал сегодня логи сервера и заметил, что 99% спама идет из пары десятков подсетей (позор вам, китайские открытые прокси!). Спам фильтры для Wordpress - это вещь хорошая, но проверка каждого комментария довольно сильно нагружает сервер (каждый комментарий - это лишний httpd процесс + обращение к mysql базе).

Так что самым правильным решением я выбрал блокировку эти подсетей на уровне ядра. Для этого в Linux есть замечательная штука - iptables (английская справка - man iptables , русская - здесь). Итак, что у нас получилось:

  • Отслеживаем отправку комментариев:
    tail -f accesslog | grep 'post.php'
  • Спамеров - блокируем:
    /sbin/iptables -A INPUT -s 66.199.252.0/255.255.255.0 -p tcp -m multiport --dports 80 -j DROP
  • Контролируем результат:
    /sbin/iptables -L -v -n --line-numbers

В итоге - нагрузка сервера упала на порядок. Эффект достигнут!