Gentoo Archives: gentoo-user-ru

From: "Andrew A. Sabitov" <sabitov@×××××××××.ru>
To: gentoo-user-ru@l.g.o
Subject: Re: [gentoo-user-ru] Борьба со спамом (exim)
Date: Wed, 19 Nov 2008 16:21:12
Message-Id: Pine.LNX.4.58.0811192211510.21358@elm.catalysis.nsk.su
In Reply to: Re: [gentoo-user-ru] Борьба со спамом (exim) by "Anton S. Ustyuzhanin"
1 Кстати, только что для себя открыл ZDS cbl.abuseat.org. Мужики в рилтайме
2 определяют зомбированные компы и тем самым детектируют ботнеты. По форме
3 использования это обычный RBL.
4
5 У меня в грейлистинге в токенах было 3743 уникальных IP, из них 2505
6 (почти 2/3) были детектированы как зомби. (Это ситуация до включения
7 этого БЛ). После включения он мне отсек 17246 писем за 8 часов. Я доволен
8 :)
9
10 On Wed, 12 Nov 2008, Anton S. Ustyuzhanin wrote:
11
12 > 50 на ящик.
13 > Спасибо за совет, попробую!
14 >
15 > Andrew A. Sabitov wrote:
16 > > Ну, 20-50 писем в сутки на домен это не много. (или на ящик??? из
17 > > контекста не понятно)
18 > >
19 > > Я использую постфикс, так что конфиги приводить не буду :) Но все основано
20 > > на самописном фильтре (перловка с мускулом), который реализует грейлистинг
21 > > + еще кое-какую фильтрацию, например по СПФ, по сендерам вида
22 > > akstc anilkaraca mnsdgs@ anilkaraca .com # пробелы я вставил :)
23 > >
24 > > Этот же фильтр поддерживает понятие белых/черных списков, пользовательских
25 > > контактов (т.е. не просто IP, а связка IP+сендер+ресипиент), а также
26 > > список пользователей, для которых фильтрация не выполняется.
27 > >
28 > > Спам проходит. Если измерять в штуках, то довольно много, если измерять
29 > > процентиками... http://ash.catalysis.ru/cgi-bin/mailgraph.cgi
30 > >
31 > >
32 > > Так что "рекомендации ведущих собаководов": пиши свой грейлист и живи в
33 > > счастье. :)
34 > >
35 > >
36 > > On Tue, 11 Nov 2008, Anton S. Ustyuzhanin wrote:
37 > >
38 > >> Всем привет.
39 > >> Помогите кто как борится со спамом. Я использую exim. Нашел несколько
40 > >> методов борьбы со спамом на www.lissyara.su:
41 > >> использую следующие:
42 > >> ----------------------------------------------------------
43 > >> # Запрещаем письма содержащие в локальной части
44 > >> # символы @; %; !; /; |. Учтите, если у вас было
45 > >> # `percent_hack_domains` то % надо убрать.
46 > >> # Проверяются локальные домены
47 > >> deny message = "Недопустимые символы в адресе"
48 > >> domains = +local_domains
49 > >> local_parts = ^[.] : ^.*[@%!/|]
50 > >>
51 > >> # Проверяем недопустимые символы для
52 > >> # нелокальных получателей:
53 > >> deny message = "Недопустимые символы в адресе"
54 > >> domains = !+local_domains
55 > >> local_parts = ^[./|] : ^.*[@%!] : ^.*/\\.\\./
56 > >>
57 > >> # Принимаем почту для постмастеров локальных доменов без
58 > >> # проверки отправителя (я закомментировал, т.к. это -
59 > >> # основной источник спама с мой ящик).
60 > >>
61 > >> # accept local_parts = postmaster
62 > >> # domains = +local_domains
63 > >>
64 > >> # Запрещщаем, если невозможно проверить отправителя
65 > >> # (отсутствует в списке локальных пользователей)
66 > >> # У себя я это закоментил, по причине, что некоторые
67 > >> # железяки (принтеры, & etc) и программы (Касперский, DrWEB)
68 > >> # умеют слать почту, в случае проблем но не умеют ставить
69 > >> # нужного отправителя. Такие письма эта проверка не пускает.
70 > >> # require verify = sender
71 > >>
72 > >> # Запрещщаем тех, кто не обменивается приветственными
73 > >> # сообщениями (HELO/EHLO)
74 > >> deny message = "HELO/EHLO обязано быть по SMTP RFC"
75 > >> condition = ${if eq{$sender_helo_name}{}{yes}{no}}
76 > >>
77 > >>
78 > >>
79 > >> # Рубаем нах, тех, кто подставляет свой IP в HELO
80 > >> deny message = "Не надо пихать свой IP в качестве HELO!"
81 > >> hosts = *:!+relay_from_hosts
82 > >> condition = ${if eq{$sender_helo_name}\
83 > >> {$sender_host_address}{true}{false}}
84 > >>
85 > >>
86 > >> # Рубаем тех, кто в HELO пихает мой IP (2500 за месяц!)
87 > >> deny condition = ${if eq{$sender_helo_name}\
88 > >> {$interface_address}{yes}{no}}
89 > >> hosts = !127.0.0.1 : !localhost : *
90 > >> message = "Это мой IP-адрес! Пшёл прочь!"
91 > >>
92 > >> # Рубаем тех, кто в HELO пихает только цифры
93 > >> # (не бывает хостов ТОЛЬКО из цифр)
94 > >> deny condition = ${if match{$sender_helo_name}\
95 > >> {\N^\d+$\N}{yes}{no}}
96 > >> hosts = !127.0.0.1:!localhost:*
97 > >> message = "В HELO не могут быть тока цифры!"
98 > >>
99 > >> # Рубаем хосты типа *adsl*; *dialup*; *pool*;....
100 > >> # Нормальные люди с таких не пишут. Если будут
101 > >> # проблемы - уберёте проблемный пункт (у меня клиенты
102 > >> # имеют запись типа asdl-1233.zone.su - я ADSL убрал...)
103 > >> deny message = "Не нравится мне Ваш хост..."
104 > >> condition = ${if match{$sender_host_name} \
105 > >> {adsl|dialup|pool|peer|dhcp} \
106 > >> {yes}{no}}
107 > >>
108 > >> # Рубаем тех, кто в блэк-листах. Серваки перебираются
109 > >> # сверху вниз, если не хост не найден на первом, то
110 > >> # запрашивается второй, и т.д. Если не найден ни в одном
111 > >> # из списка - то почта пропускается.
112 > >> deny message = "host in blacklist - $dnslist_domain \n
113 > >> dnslist_text"
114 > >> dnslists = opm.blitzed.org : \
115 > >> proxies.blackholes.easynet.nl : \
116 > >> cbl.abuseat.org : \
117 > >> bl.spamcop.net : \
118 > >> bl.csma.biz : \
119 > >> dynablock.njabl.org : \
120 > >>
121 > >> # Задержка. (это такой метод борьбы со спамом,
122 > >> # основанный на принципе его рассылки) На этом рубается
123 > >> # почти весь спам. Единственно - метод неприменим на
124 > >> # реально загруженных MTA - т.к. в результате ему
125 > >> # приходится держать много открытых соединений.
126 > >> # но на офисе в сотню-две человек - шикарный метод.
127 > >> #
128 > >> # более сложный вариант, смотрите в статье по exim и
129 > >> # курьер имап. Т.к. там метод боле умный (просто правил
130 > >> # больше :), то можно и на более загруженные сервера ставить)
131 > >> warn
132 > >> # ставим дефолтовую задержку в 20 секунд
133 > >> set acl_m0 = 25s
134 > >> warn
135 > >> # ставим задержку в 0 секунд своим хостам и
136 > >> # дружественным сетям (соседняя контора :))
137 > >> hosts = +relay_from_hosts
138 > >> set acl_m0 = 0s
139 > >> warn
140 > >> # пишем в логи задержку (если оно вам надо)
141 > >> logwrite = Delay $acl_m0 for $sender_host_name \
142 > >> [$sender_host_address] with HELO=$sender_helo_name. Mail \
143 > >> from $sender_address to $local_part@$domain.
144 > >> delay = $acl_m0
145 > >> -----------------------------------------------------------
146 > >>
147 > >> Так вот у меня все равно очень много спама приходит. по 20 -50 писем в
148 > >> сутки. Задолбало уже. У кого есть рецепты - делитесь.
149 > >>
150 > >
151 >
152 >
153
154 --
155 <> 304 <>
156
157 Кто урод, кто красавец - не ведает страсть.
158 В ад согласен безумец влюбленный попасть.
159 Безразлично влюбленным, во что одеваться,
160 Что на землю стелить, что под голову класть.
161 Омар Хайям. Рубаи.
162 ,,,,
163 /'^'\
164 ( o o )
165 --oOOO--(_)--OOOo------------------------------------------------
166 | Andrew A. Sabitov
167 | Email: sabitov@××××××××××.ru
168 | WWW: sabitov.pp.ru
169 | .oooO Еж птица гордая - пока не пнешь, не полетит!
170 | ( ) Oooo.
171 ---\ (----( )-------------------------------------------------
172 \_) ) /
173 (_/

Replies

Subject Author
Re: [gentoo-user-ru] Борьба со спамом (exim) Pavel Gaidai <smeegulists@×××××.com>