Антиспамовый фильтр (Sendmail + DrWeb + SpamAssassin)

На доскональное знание данной темы, не может претендовать, пожалуй ни один спец, из ныне живущих на земле. ;-)
Так поможем друг другу.

Модераторы: Trinity admin`s, Free-lance moderator`s

Аватара пользователя
corvax
free-lance moderator
Сообщения: 877
Зарегистрирован: 06 авг 2004, 17:21
Откуда: Kiev, Ukraine
Контактная информация:

Сообщение corvax » 10 ноя 2005, 21:03

Altair писал(а):
вычитывание доки вслух с выражением - это уже за деньги
Люблю я советы "старших товарищей", нет чтоб сказать ошибка здесь и здесь, а только достаточно высокомерно
в данном случае совет поискать в доке значения параметра - это как раз полезный совет. вы даже просьбам в логи заглянуть не в первого раза внемлите. вы думаете, за вас работу вашу всю жизнь кто-то делать будет?
Altair писал(а):
в значении параметра InputMailFilters
Ну да ладно, так стоит пробовать ставить опцию Т=С ?
можно попробовать. только ж после C надо еще само значение тайм-аута указать.
--
/corvax

Altair
Junior member
Сообщения: 13
Зарегистрирован: 09 ноя 2005, 19:56

Итоги выпадения спамасс-милтера

Сообщение Altair » 16 ноя 2005, 20:34

Имеем
Фря 5.4. Сендмаил 8.13.5 Топик Спамасасин 3.1.0. спамас-милтер 0.3.0.
Все работает на ура, и прекрасно, но как и у многих периодически выпадает милтер, я заметил, что милтер после запуска начинает расти в размерах, очевидно по мере пропускания через себя мыла, и потом "лопается как мыльный пузырь", команда sockstat | grep spamass-milter
показала постоянное увеличение потоков милтера:

root     spamass-mi 453   172stream /var/run/spamass-milter.sock
root     spamass-mi 453   173stream /var/run/spamass-milter.sock
root     spamass-mi 453   174stream /var/run/spamass-milter.sock
root     spamass-mi 453   175stream /var/run/spamass-milter.sock
root     spamass-mi 453   176stream /var/run/spamass-milter.sock
root     spamass-mi 453   177stream /var/run/spamass-milter.sock
root     spamass-mi 453   178stream /var/run/spamass-milter.sock
root     spamass-mi 453   179stream /var/run/spamass-milter.sock
root     spamass-mi 453   180stream /var/run/spamass-milter.sock
root     spamass-mi 453   181stream /var/run/spamass-milter.sock
root     spamass-mi 453   182stream /var/run/spamass-milter.sock
root     spamass-mi 453   183stream /var/run/spamass-milter.sock
root     spamass-mi 453   184stream /var/run/spamass-milter.sock
root     spamass-mi 453   185stream /var/run/spamass-milter.sock
root     spamass-mi 453   186stream /var/run/spamass-milter.sock
root     spamass-mi 453   187stream /var/run/spamass-milter.sock
root     spamass-mi 453   188stream /var/run/spamass-milter.sock
root     spamass-mi 453   189stream /var/run/spamass-milter.sock

такое впечатление , что письмо проходит через него, но поток не закрывается, что делать ?
Также повесить милтер можно легко, для этого надо просто отправить через хост очень большое письмо, в моем случае 100МБ, тогда милтер неимоверно раздуваеться  и ему нехватает диска, поскольку он свопиться почему-то на / в результате он выпадает в кору на / и его надо перезапускать, отсюда вопрос, как его заставить работать в другом разделе, например в /var ?

прочитав всю конфу я пришел к выводу, что мнения разделились и есть всего два выхода:
1. добавить в конфиг сендмыла
define (`confSEPARATE_PROC' `TRUE')
(добавил, эффекта нет)
define(`confMAX_DAEMON_CHILDREN', `15')
(решил не добавлять, т.к. по умолчанию неограничено)
в результатет не помогло

2. Заменить spamass-milter на  milter-spamc - еще не пробовал

Как быть ? незагонять же в конце концов милтер в крон Sad

estas
Junior member
Сообщения: 4
Зарегистрирован: 27 окт 2005, 19:30

Сообщение estas » 01 дек 2005, 14:03

corvax

Не могу до сих пор разобраться с ALL_TRUSTED Did not pass through any untrusted hosts

Вот заголовки письма:

Return-Path: <xxxx@tochka.ru>
Received: from h207.62.140.67.ip.alltel.net (h207.62.140.67.ip.alltel.net [67.140.62.207])
    by myhost.ru(8.13.1/8.13.1) with SMTP id jB19dajc019712;
    Thu, 1 Dec 2005 12:39:38 +0300
Message-ID: <109101c5f642$252c6cb0$0f0e0d0c@masterhost>
From: =?koi8-r?B?7enk?= <evncune@tochka.ru>
To: <yyyy@bellhop.ru>
Subject: =?koi8-r?B?98HbxSDH0sHWxMHO09TXzw==?=
Date: Thu, 01 Dec 2005 14:38:40 +0500
MIME-Version: 1.0
Content-Type: multipart/alternative;
    boundary="----=_NextPart_000_108E_01C5F65B.4A0E5FC0"
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 6.00.2800.1437
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1441
X-Virus-Scanned: ClamAV 0.87.1/1198/Tue Nov 29 13:05:20 2005 on myhost.ru
X-Virus-Status: Clean
X-Spam-Status: No, score=2.3 required=5.0 tests=ALL_TRUSTED,BAYES_80,
    FORGED_OUTLOOK_HTML,HTML_80_90,HTML_FONT_BIG,HTML_MESSAGE,
    MIME_HTML_ONLY,MIME_HTML_ONLY_MULTI,MPART_ALT_DIFF autolearn=no
    version=3.0.4
X-Spam-Report: Content analysis details: (2.3 points, 5.0 required)
    pts rule name description
    --- ---------------------- --------------------------------------------------
    * -3.3 ALL_TRUSTED Did not pass through any untrusted hosts
    * 0.1 HTML_80_90 BODY: Message is 80% to 90% HTML
    * 2.0 BAYES_80 BODY: Bayesian spam probability is 80 to 95%
    * [score: 0.9493]
    * 0.0 HTML_MESSAGE BODY: HTML included in message
    * 0.1 HTML_FONT_BIG BODY: HTML tag for a big font size
    * 0.1 MPART_ALT_DIFF BODY: HTML and text parts are different
    * 0.2 MIME_HTML_ONLY BODY: Message only has text/html MIME parts
    * 0.6 FORGED_OUTLOOK_HTML Outlook can't send HTML message only
    * 2.4 MIME_HTML_ONLY_MULTI Multipart message only has text/html MIME parts
X-Spam-Level: **
X-Spam-Checker-Version: SpamAssassin 3.0.4 (2005-06-05) on myhost.ru
Status: RO
Content-Length: 1342
X-UID: 123
X-Keywords:

в local.cf
trusted_networks 192.168.1. 127.

Куда копать ?

Аватара пользователя
corvax
free-lance moderator
Сообщения: 877
Зарегистрирован: 06 авг 2004, 17:21
Откуда: Kiev, Ukraine
Контактная информация:

Сообщение corvax » 02 дек 2005, 14:19

estas писал(а):corvax

Не могу до сих пор разобраться с ALL_TRUSTED Did not pass through any untrusted hosts

в local.cf
trusted_networks 192.168.1. 127.

Куда копать ?
с какими ключами запущен spamd? если там нет -x, то может значение trusted_networks из юзерского конфига отличается от trusted_networks из local.cf?
--
/corvax

estas
Junior member
Сообщения: 4
Зарегистрирован: 27 окт 2005, 19:30

Сообщение estas » 03 дек 2005, 12:53

SPAMDOPTIONS="-d -m5 -x -u spamd"

ls /home/spamd/.spamassassin
auto_whitelist  bayes_journal  bayes_seen  bayes_toks

Аватара пользователя
corvax
free-lance moderator
Сообщения: 877
Зарегистрирован: 06 авг 2004, 17:21
Откуда: Kiev, Ukraine
Контактная информация:

Сообщение corvax » 03 дек 2005, 13:04

estas писал(а):SPAMDOPTIONS="-d -m5 -x -u spamd"

ls /home/spamd/.spamassassin
auto_whitelist  bayes_journal  bayes_seen  bayes_toks
тогда можно запустить spamd в debug mode, влить ему письмо с помощью spamc, а на консольке наблюдать строки, начинающиеся с

Код: Выделить всё

metadata: X-Spam-Relays-Trusted:
и

Код: Выделить всё

metadata: X-Spam-Relays-Untrusted:
потом исходя из содержимого этих строк нужно будет разбираться, почему это spamd считает данный relay находящимся в trusted_networks

p. s. а до 3.1.0 таки обновится надо до разбора полетов, а не после
--
/corvax

mrrc
Power member
Сообщения: 47
Зарегистрирован: 13 сен 2004, 23:41

Сообщение mrrc » 31 янв 2006, 09:04

Не совсем понял предназначение плугина Mail::SpamAssassin::Plugin::AccessDB - check message against Access Database, входящего в состав SpamAssassin 3.1.0, хотел с помощью него исключить проверку на спам долбанных подписок с Subscribe.Ru, занеся в accessDB Sendmail-а три подсети с которых в подавляющей мере они поступают, разгребать застревающие подписки и ham-мить их времени не всегда хватает, достало уже.

Можно, конечно, решить это через spamass_milter, добав эти подсети к имеющимся адресам в -i .., но может есть способ более изящный?
Кстати, как лучше поступать, когда письма не доходят ни в какую с какого-то адреса, куда лучше занести этот адрес или IP-адрес сервера отправителя?

Аватара пользователя
corvax
free-lance moderator
Сообщения: 877
Зарегистрирован: 06 авг 2004, 17:21
Откуда: Kiev, Ukraine
Контактная информация:

Сообщение corvax » 31 янв 2006, 15:54

mrrc писал(а):Не совсем понял предназначение плугина Mail::SpamAssassin::Plugin::AccessDB - check message against Access Database, входящего в состав SpamAssassin 3.1.0,
проверка по access_db всех адресов отправителя (header from, envelope from, в общем всего того, что возвращается функцией all_from_addrs(), с префиксом From, а также проверка по A и PTR записи рилея). непонятно, для чего это сделано, если эти же проверки можно сделать с помощью MTA
mrrc писал(а):хотел с помощью него исключить проверку на спам долбанных подписок с Subscribe.Ru, занеся в accessDB Sendmail-а
беглого взгляда на исходник плагина достаточно, чтобы увидеть, что при значениях OK и SKIP никаких исключений не происходит, просто не начисляются баллы, которые начислялись бы, если бы значения в access_db были REJECT, ERROR или DISCARD. в данном случае OK и SKIP равносильны отсутствию записей в access_db
mrrc писал(а):три подсети с которых в подавляющей мере они поступают, разгребать застревающие подписки и ham-мить их времени не всегда хватает, достало уже.
из этих сетей приходят лишь рассылки subscroibe.ru?
mrrc писал(а):Можно, конечно, решить это через spamass_milter, добав эти подсети к имеющимся адресам в -i .., но может есть способ более изящный?
решать вопрос через spamass-milter - может и не самый изящный способ, но уж точно самый надежный.

можно еще прописать те же сети в trusted_networks, но это не исключения получатся, а начисление отрицательного кол-ва баллов отдельным правилом

можно еще правило написать, которое будет отличать письма subscribe.ru от других, и начислять им -10 или что-то около того баллов
mrrc писал(а):Кстати, как лучше поступать, когда письма не доходят ни в какую с какого-то адреса, куда лучше занести этот адрес или IP-адрес сервера отправителя?
все зависит от того, кто еще пишет с искомого IP и с каких IP пишет отправитель с данным адресом
--
/corvax

mrrc
Power member
Сообщения: 47
Зарегистрирован: 13 сен 2004, 23:41

Сообщение mrrc » 31 янв 2006, 22:31

corvax писал(а): проверка по access_db всех адресов отправителя (header from, envelope from, в общем всего того, что возвращается функцией all_from_addrs(), с префиксом From, а также проверка по A и PTR записи рилея). непонятно, для чего это сделано, если эти же проверки можно сделать с помощью MTA

беглого взгляда на исходник плагина достаточно, чтобы увидеть, что при значениях OK и SKIP никаких исключений не происходит, просто не начисляются баллы, которые начислялись бы, если бы значения в access_db были REJECT, ERROR или DISCARD. в данном случае OK и SKIP равносильны отсутствию записей в access_db
Одним словом, практической пользы от плугина никакой.
corvax писал(а):из этих сетей приходят лишь рассылки subscroibe.ru?
По моим наблюдениям - да!
corvax писал(а):решать вопрос через spamass-milter - может и не самый изящный способ, но уж точно самый надежный.

можно еще прописать те же сети в trusted_networks, но это не исключения получатся, а начисление отрицательного кол-ва баллов отдельным правилом

Попробую в экспериментальном порядке исключить эти подсети  через spamass-milter, посмотрим, как это себя покажет.

Аватара пользователя
corvax
free-lance moderator
Сообщения: 877
Зарегистрирован: 06 авг 2004, 17:21
Откуда: Kiev, Ukraine
Контактная информация:

Сообщение corvax » 31 янв 2006, 22:58

mrrc писал(а):
corvax писал(а): проверка по access_db всех адресов отправителя (header from, envelope from, в общем всего того, что возвращается функцией all_from_addrs(), с префиксом From, а также проверка по A и PTR записи рилея). непонятно, для чего это сделано, если эти же проверки можно сделать с помощью MTA

беглого взгляда на исходник плагина достаточно, чтобы увидеть, что при значениях OK и SKIP никаких исключений не происходит, просто не начисляются баллы, которые начислялись бы, если бы значения в access_db были REJECT, ERROR или DISCARD. в данном случае OK и SKIP равносильны отсутствию записей в access_db
Одним словом, практической пользы от плугина никакой.
в общем-то да
ибо все записи в access_db, на которые сможет отреагировать spamassassin, должны сработать еще в MTA. разве что проверка адресов в полях заголовков не используется обычно в MTA
mrrc писал(а):
corvax писал(а):из этих сетей приходят лишь рассылки subscroibe.ru?
По моим наблюдениям - да!
тогда явно надо исключать эти сети из проверки на уровне милтера
mrrc писал(а):
corvax писал(а):решать вопрос через spamass-milter - может и не самый изящный способ, но уж точно самый надежный.

можно еще прописать те же сети в trusted_networks, но это не исключения получатся, а начисление отрицательного кол-ва баллов отдельным правилом
Попробую в экспериментальном порядке исключить эти подсети  через spamass-milter, посмотрим, как это себя покажет.
--
/corvax

mrrc
Power member
Сообщения: 47
Зарегистрирован: 13 сен 2004, 23:41

Сообщение mrrc » 01 фев 2006, 08:53

corvax писал(а):тогда явно надо исключать эти сети из проверки на уровне милтера

Столкнулся с проблемой указания этих подсетей в spamass-milter.sh, если добавлять так - ...,81.222.129,81.9.34,81.222.64,81.222.64, то они игнорируются, похоже, все равно почта застревает с них, если с точкой в конце каждой - подсети ,81.222.129.,81.9.34.,81.222.64.,81.222.64. spamass-milter.sh брыкается и не перестартовывает уже.

Хотелось бы ограничиться указанием первых трех цифр, так как после последней точки IP-адресов весьма много и каждые пописывать весьма непросто будет.

Как можно выйти из ситуации?

Аватара пользователя
corvax
free-lance moderator
Сообщения: 877
Зарегистрирован: 06 авг 2004, 17:21
Откуда: Kiev, Ukraine
Контактная информация:

Сообщение corvax » 01 фев 2006, 10:50

mrrc писал(а):
corvax писал(а):тогда явно надо исключать эти сети из проверки на уровне милтера

Столкнулся с проблемой указания этих подсетей в spamass-milter.sh, если добавлять так - ...,81.222.129,81.9.34,81.222.64,81.222.64, то они игнорируются, похоже, все равно почта застревает с них,
естественно, этот формат совершенно не подходит для spamass-milter
он используется в access_db sendmail из-за странностей лукапов по сетям в dbm файлы
mrrc писал(а):если с точкой в конце каждой - подсети ,81.222.129.,81.9.34.,81.222.64.,81.222.64. spamass-milter.sh брыкается и не перестартовывает уже.
да не надо заниматься самодеятельностью и выдумывать, в каком бы таком виде указать милтеру сети. все это описано в man'е на spamass-milter
mrrc писал(а):Хотелось бы ограничиться указанием первых трех цифр, так как после последней точки IP-адресов весьма много и каждые пописывать весьма непросто будет.

Как можно выйти из ситуации?
CIDR
--
/corvax

mrrc
Power member
Сообщения: 47
Зарегистрирован: 13 сен 2004, 23:41

Сообщение mrrc » 01 фев 2006, 11:53

То, что формат неправильный, это понятно.
Какой /XX у этих подсетей тогда?

81.222.129.0 - 81.222.129.255
81.9.34.128 - 81.9.34.255
81.222.64.0 - 81.222.65.255

Код: Выделить всё

     -i networks
             Ignores messages if the originating IP is in the network(s)
             listed.  The message will be passed through without calling Spa-
             mAssassin at all.  networks is a comma-separated list, where each
             element can be either an IP address (nnn.nnn.nnn.nnn), a CIDR
             network (nnn.nnn.nnn.nnn/nn), or a network/netmask pair
             (nnn.nnn.nnn.nnn/nnn.nnn.nnn.nnn).  Multiple -i flags will append
             to the list.  For example, if you list all your internal net-
             works, no outgoing emails will be filtered.

Аватара пользователя
corvax
free-lance moderator
Сообщения: 877
Зарегистрирован: 06 авг 2004, 17:21
Откуда: Kiev, Ukraine
Контактная информация:

Сообщение corvax » 01 фев 2006, 12:14

mrrc писал(а):То, что формат неправильный, это понятно.
Какой /XX у этих подсетей тогда?
что, пора брать книжку по TCP/IP и таки заниматься RTFM?
mrrc писал(а):81.222.129.0 - 81.222.129.255
81.222.129.0/24
mrrc писал(а):81.9.34.128 - 81.9.34.255
81.9.34.128/25
mrrc писал(а):81.222.64.0 - 81.222.65.255
81.222.64.0/23
mrrc писал(а):

Код: Выделить всё

     -i networks
             Ignores messages if the originating IP is in the network(s)
             listed.  The message will be passed through without calling Spa-
             mAssassin at all.  networks is a comma-separated list, where each
             element can be either an IP address (nnn.nnn.nnn.nnn), a CIDR
             network (nnn.nnn.nnn.nnn/nn), or a network/netmask pair
             (nnn.nnn.nnn.nnn/nnn.nnn.nnn.nnn).  Multiple -i flags will append
             to the list.  For example, if you list all your internal net-
             works, no outgoing emails will be filtered.
что это было? вернее, я понимаю, что это было. я не понимаю, зачем это мне в данном случае?
--
/corvax

mrrc
Power member
Сообщения: 47
Зарегистрирован: 13 сен 2004, 23:41

Сообщение mrrc » 01 фев 2006, 12:35

Спасибо!
Нет пользоваться калькулятором http://www.freeware.ru/program_prog_id_3047.html

Ответить

Вернуться в «Серверы - ПО, Unix подобные системы»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 13 гостей