Gentoo Archives: gentoo-user-ru

From: "Anton S. Ustyuzhanin" <kit@×××××××××.kz>
To: gentoo-user-ru@l.g.o
Subject: [gentoo-user-ru] Борьба со спамом (exim)
Date: Tue, 11 Nov 2008 16:54:26
Message-Id: 4919B840.5070105@miras.edu.kz
1 Всем привет.
2 Помогите кто как борится со спамом. Я использую exim. Нашел несколько
3 методов борьбы со спамом на www.lissyara.su:
4 использую следующие:
5 ----------------------------------------------------------
6 # Запрещаем письма содержащие в локальной части
7 # символы @; %; !; /; |. Учтите, если у вас было
8 # `percent_hack_domains` то % надо убрать.
9 # Проверяются локальные домены
10 deny message = "Недопустимые символы в адресе"
11 domains = +local_domains
12 local_parts = ^[.] : ^.*[@%!/|]
13
14 # Проверяем недопустимые символы для
15 # нелокальных получателей:
16 deny message = "Недопустимые символы в адресе"
17 domains = !+local_domains
18 local_parts = ^[./|] : ^.*[@%!] : ^.*/\\.\\./
19
20 # Принимаем почту для постмастеров локальных доменов без
21 # проверки отправителя (я закомментировал, т.к. это -
22 # основной источник спама с мой ящик).
23
24 # accept local_parts = postmaster
25 # domains = +local_domains
26
27 # Запрещщаем, если невозможно проверить отправителя
28 # (отсутствует в списке локальных пользователей)
29 # У себя я это закоментил, по причине, что некоторые
30 # железяки (принтеры, & etc) и программы (Касперский, DrWEB)
31 # умеют слать почту, в случае проблем но не умеют ставить
32 # нужного отправителя. Такие письма эта проверка не пускает.
33 # require verify = sender
34
35 # Запрещщаем тех, кто не обменивается приветственными
36 # сообщениями (HELO/EHLO)
37 deny message = "HELO/EHLO обязано быть по SMTP RFC"
38 condition = ${if eq{$sender_helo_name}{}{yes}{no}}
39
40
41
42 # Рубаем нах, тех, кто подставляет свой IP в HELO
43 deny message = "Не надо пихать свой IP в качестве HELO!"
44 hosts = *:!+relay_from_hosts
45 condition = ${if eq{$sender_helo_name}\
46 {$sender_host_address}{true}{false}}
47
48
49 # Рубаем тех, кто в HELO пихает мой IP (2500 за месяц!)
50 deny condition = ${if eq{$sender_helo_name}\
51 {$interface_address}{yes}{no}}
52 hosts = !127.0.0.1 : !localhost : *
53 message = "Это мой IP-адрес! Пшёл прочь!"
54
55 # Рубаем тех, кто в HELO пихает только цифры
56 # (не бывает хостов ТОЛЬКО из цифр)
57 deny condition = ${if match{$sender_helo_name}\
58 {\N^\d+$\N}{yes}{no}}
59 hosts = !127.0.0.1:!localhost:*
60 message = "В HELO не могут быть тока цифры!"
61
62 # Рубаем хосты типа *adsl*; *dialup*; *pool*;....
63 # Нормальные люди с таких не пишут. Если будут
64 # проблемы - уберёте проблемный пункт (у меня клиенты
65 # имеют запись типа asdl-1233.zone.su - я ADSL убрал...)
66 deny message = "Не нравится мне Ваш хост..."
67 condition = ${if match{$sender_host_name} \
68 {adsl|dialup|pool|peer|dhcp} \
69 {yes}{no}}
70
71 # Рубаем тех, кто в блэк-листах. Серваки перебираются
72 # сверху вниз, если не хост не найден на первом, то
73 # запрашивается второй, и т.д. Если не найден ни в одном
74 # из списка - то почта пропускается.
75 deny message = "host in blacklist - $dnslist_domain \n
76 dnslist_text"
77 dnslists = opm.blitzed.org : \
78 proxies.blackholes.easynet.nl : \
79 cbl.abuseat.org : \
80 bl.spamcop.net : \
81 bl.csma.biz : \
82 dynablock.njabl.org : \
83
84 # Задержка. (это такой метод борьбы со спамом,
85 # основанный на принципе его рассылки) На этом рубается
86 # почти весь спам. Единственно - метод неприменим на
87 # реально загруженных MTA - т.к. в результате ему
88 # приходится держать много открытых соединений.
89 # но на офисе в сотню-две человек - шикарный метод.
90 #
91 # более сложный вариант, смотрите в статье по exim и
92 # курьер имап. Т.к. там метод боле умный (просто правил
93 # больше :), то можно и на более загруженные сервера ставить)
94 warn
95 # ставим дефолтовую задержку в 20 секунд
96 set acl_m0 = 25s
97 warn
98 # ставим задержку в 0 секунд своим хостам и
99 # дружественным сетям (соседняя контора :))
100 hosts = +relay_from_hosts
101 set acl_m0 = 0s
102 warn
103 # пишем в логи задержку (если оно вам надо)
104 logwrite = Delay $acl_m0 for $sender_host_name \
105 [$sender_host_address] with HELO=$sender_helo_name. Mail \
106 from $sender_address to $local_part@$domain.
107 delay = $acl_m0
108 -----------------------------------------------------------
109
110 Так вот у меня все равно очень много спама приходит. по 20 -50 писем в
111 сутки. Задолбало уже. У кого есть рецепты - делитесь.

Replies

Subject Author
Re: [gentoo-user-ru] Борьба со спамом (exim) "Andrew A. Sabitov" <sabitov@×××××××××.ru>
Re: [gentoo-user-ru] Борьба со спамом (exim) Anton Kvashin <foo@×××××××××××.ru>