LINUX.ORG.RU
ФорумAdmin

Дополнительный способ зачистки спама


0

0

# cat spamreject.sh
#!/bin/sh
cp -f /usr/local/etc/current /usr/local/etc/current.old
cp -f /usr/local/etc/rus-list /usr/local/etc/rus-list.old
wget -Y off http://noc.zenon.net/nets/current -q -O /usr/local/etc/current && \
cat /usr/local/etc/current | grep 'network = ' | grep -v 'network = 0.0.0.0/0' | \
tr -s ' ' | cut -f 4 -d ' ' | grep -v '/3' | grep -v '/25' | grep -v '/26' | \
grep -v '/27' | grep -v '/28' | grep -v '/29' | \
sort | uniq | sort +1 -n -t/ > /usr/local/etc/rus-list
. /etc/rc.d/fw
exit 0

фрагмент файла /etc/rc.d/fw
iptables -N RUNET
iptables -A INPUT -p tcp --tcp-flags SYN,FIN,ACK SYN --dport smtp -i eth0 -j RUNET
for i in `cat "/usr/local/etc/white-list" | grep -v "#"`
    do
    iptables -A RUNET -s $i -j ACCEPT
    done
for i in `cat "/usr/local/etc/black-list" | grep -v "#"`
    do
    iptables -A RUNET -s $i -j DROP
    done
for i in `cat "/usr/local/etc/rus-list"`
    do
    iptables -A RUNET -s $i -j ACCEPT
    done
iptables -A RUNET -j DROP

файлы white-list и black-list имеют структуру примерно такую:
# seoiglkj.ru
43.3.10.0/24
# pdkvmvmv.ru
53.27.23.0/24

В DNS-MX записях должно быть два адреса почтовых серверов. Соответственно
вот эта фигня с файрволлом делается на приоритетном сервере и другие спаморезки на нем
уже не нужны. А на втором ставить спамассасин и резать по черному. 
А если резервный сервер у провайдера, и на нем стоит спамассасин или что подобное,
то самому вообще почти ничего больше делать не надо.
★★★★★

Идея в том, что почта из рунета вообще не пропускается через спамассасин, а остальная почта даже не допускается до своего сендмейла, но проходит через резервный сервер. Поэтому хорошая почта все равно доходит. Если у прова стоит спамассасин, то свой трафик экономится, а процент потерь снижается.

Короче, как и везде есть свои плюсы и минусы.

ansky ★★★★★
() автор топика
Ответ на: комментарий от sdio

Если пользоваться "/etc/mail/access (sendmail)", то сендмейл сразу дает отлуп и "драгоценные ресурсы" у спамера не тратятся. А в данном случае ответа на syn-пакет нет, приходится ждать tcp-таймаута.

ansky ★★★★★
() автор топика
Ответ на: комментарий от ansky

Меня интересует моя система, а не проблема спамера.

access гибче, чем iptables
  1. скорость поиска в access.db выше.
  2. простота работы с текстовым файлом access
  3. возможность работы с доменными адресами, а не толькос с ip (как iptables)
  еще можно придумать

sdio ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.