Жесткий, но эффективный метод борьбы со спамом в комментариях
Два месяца назад я писал об одном очень жестком методе борьбы с последствиями установки плагина Time spent on blog. Теперь этот же самый метод применяем на спам-ботах, которые безуспешно пытаются оставить спам в комментариях.
Отвлекусь от темы и отвечу на вопрос о необходимости применения жестких мер против спамеров: во-первых, они генерируют много паразитного трафика (трафик не бесплатен), во-вторых, они генерируют лишнюю нагрузку на сервер, в-третьих, вода камень точит — любую капчу можно подобрать.
Предварительная настройка:
iptables -A INPUT -j spammers
Фрагмент процесса, который запускается кроном (например, раз в час):
PATH=/var/log/access.log
# Получаем список забаненных спамеров
ips=`iptables -S | grep "^-A spammers " | awk '{ print $4 }' | sed 's/\/32//g'`
# Ищем в логах спамеров (предполагается, что возвращается код ошибки 500,
# если капча введена неверно. Если капча была введена неверно больше 10 раз
# с одного и того же IP, то считаем, что это спамер.
spammers=`\
grep -E '"POST /wp-comments-post.php HTTP/1.[01]" 500' $PATH | \
awk '{ print $1 }' | \
sort | \
uniq -c | \
awk '{ if ($1 > 10) { print $2; }}' \
`
# Ищем новые жертвы и добавляем их в список
echo "$spammers" | grep -v -F "$ips" | xargs -l -r -I {} iptables -A spammers -s '{}' -j DROP
В результате всё очень здорово: с учётом того, что на сервере крутятся несколько весьма посещаемых сайтов, нагрузка значительно падает. В связи с чем возникает вопрос: какова же доля паразитного трафика в Internet?
Недостатки метода: требуется root-доступ к серверу и хорошее знание Linux (чтобы понять, что делает скрипт).
Достоинства: спамеры идут лесом, уменьшается доля паразитного трафика и нагрузка на сервер.
iarq72g98h
А еще лесом идут пользователи сидящие за NAT, как и пользователи динамически обновляемых ипишников
Почти. Полное решение несколько сложнее (я связан NDA по работе) и использует
iptables -m recent
иwhois
(с целью выявления динамических IP), поэтому сильно лесом они не идутВообще по статистике спам идет с постоянных адресов.
За последние 30 минут:
13 85.17.231.195
14 195.88.32.160
14 79.140.166.45
15 80.73.6.138
17 95.107.55.140
39 95.133.89.88
40 84.19.176.28
46 194.8.75.105
73 95.78.96.75
117 89.149.244.89
177 93.174.93.54
428 217.20.112.128
Неужели ваш блог так спамят ?
Спам-фильтр убивает до 1,000 — 5,000 спам-комментариев в день от спам-ботов.