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

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

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

Аватара пользователя
setar
Site Admin
Site Admin
Сообщения: 1984
Зарегистрирован: 22 авг 2002, 12:03
Откуда: St. Petersburg

Сообщение setar » 15 мар 2004, 17:02

TOPтыгин писал(а):PS: Есть какой-нит вариант проверить базу это на целостность или может он к каким файликам доступа получить не может. Если в папках spam и ham пусто то оно отрабатывает на ура. Стоит мне поместить туда несколько писем вот такой глюк.

PSS: Как оказалось он маьтерится но работает :lol:
по идее база обновляется всякий раз, соответственно на целосность проверяется.

По поводу доступа к файлам -нужно смотреть дату последнего изменения (ну и размер заодно.)

Коли пошел такой глюк предлагаю удалить (или запаковать) база и скормить пакет обучающих писем заного - должно полегчеть ;)

xleon
member
Сообщения: 21
Зарегистрирован: 15 мар 2004, 11:25

Сообщение xleon » 15 мар 2004, 18:21

ясно, 200 писем по умолчанию вероятно может перекрываться параметрами bayes_min_ham_num
bayes_min_spam_num

а как изменить score по умолчанию, на сайте написано использовать следующую конструкцию:
~/.spamassassin/user_prefs:
score NAME_OF_TEST 3.0

я кладу и изменяю user_prsefs в /etc/mail/spamassassin перегружаю spamd & spamass-milter, отправляю мыло, но в заголовке все равно значение HTML_FONT_BIG без изменений:
X-Spam-Report:
.......
* 0.1 HTML_FONT_BIG BODY: HTML has a big font
......

хотя в user_prsefs прописал:
HTML_FONT_BIG 2.5

и еще вопрос, откуда из каких файлов беруться установки по умолчанию?

Аватара пользователя
setar
Site Admin
Site Admin
Сообщения: 1984
Зарегистрирован: 22 авг 2002, 12:03
Откуда: St. Petersburg

Сообщение setar » 16 мар 2004, 10:42

xleon писал(а):ясно, 200 писем по умолчанию вероятно может перекрываться параметрами bayes_min_ham_num
bayes_min_spam_num
Абсолютно верно.
а как изменить score по умолчанию, на сайте написано использовать следующую конструкцию:
~/.spamassassin/user_prefs:
score NAME_OF_TEST 3.0

я кладу и изменяю user_prsefs в /etc/mail/spamassassin перегружаю spamd & spamass-milter, отправляю мыло, но в заголовке все равно значение HTML_FONT_BIG без изменений:
X-Spam-Report:
.......
* 0.1 HTML_FONT_BIG BODY: HTML has a big font
......

хотя в user_prsefs прописал:
HTML_FONT_BIG 2.5
1. установки score лучше менять в local.cf хотя можно в установках того юзера от которого запущен spamd ( у меня nobody и какой user_prefs брать непонятно )

2. правильный синтаксис такой :
score HTML_FONT_BIG 2.5
и еще вопрос, откуда из каких файлов беруться установки по умолчанию?
Все конфиги по умолчанию лежат в /usr/share/spamassassin

xleon
member
Сообщения: 21
Зарегистрирован: 15 мар 2004, 11:25

Сообщение xleon » 16 мар 2004, 12:57

Откуда и в каком порядке подгружаются правила нашел (спасибо), но пользоваться user_prefs пока не получилось. В хелпе написано.., класть этот файл в пользовательскую директорию, в соответствующий каталог и запускать spamassassin c ключем -p.
Я делаю например так:
/usr/bin/spamassassin -p /root/.spamassassin/user_prefs
но эффекта никакого не наблюдаю, например используемое в user_prefs значение score HTML_FONT_BIG все-равно не перекрывает значения по умолчанию, на что указывает заголовк письма.
Такое подозрение что я неправильно пользуюсь параметром при запуске spamassassin.
Попутно вопрос, все ли установки *.cf могут перекрываться user_prefs?
Что означают четыре значения поля DEFAULT SCORES (local, net, with bayes, with bayes+net) в таблице тестов на сайте http://spamassassin.org/tests.html (а именно что есть: local, net, with bayes, with bayes+net), и соответственно как правильно устанавливать эти значения при тюнинге?

p.s. если spamd запускается от nobody, тогда да, непонятно куда класть user_prefs. С другой стороны в хелпе сказано что для использования user_prefs необходимо запустить ./spamassassin -p <...>, а не spamd.
Последний раз редактировалось xleon 16 мар 2004, 13:10, всего редактировалось 1 раз.

Аватара пользователя
setar
Site Admin
Site Admin
Сообщения: 1984
Зарегистрирован: 22 авг 2002, 12:03
Откуда: St. Petersburg

Сообщение setar » 16 мар 2004, 13:04

простой вопрос - зачем вам использовать user_prefs ?

Настройки фильтрации писем при использовании spamd +spammassmilter всё равно единые для всех пользователей, следовательно нужно использовать local.cf

лично я "тюнинг" не проводил - система достаточно сбалансированна в default установке, Всё равно наибольшее значение имеет оценка Баеса, значимость которой я и увеличил в 2 раза.

xleon
member
Сообщения: 21
Зарегистрирован: 15 мар 2004, 11:25

Сообщение xleon » 16 мар 2004, 13:21

Про user_prefs хотелось узнать побольше, потому что с ходу не получилось с ним разобраться, но в принципе этот вопрос можно опустить, чтобы не отнимать свое и чужое время.
А вот как сделать тюнинг баеса, просто установить в local.cf необходимые значения, как показано в примере в начале темы?
....
body Bayesian spam probability is 0 to 1% BAYES_00 0 0 -4.901 -4.900
....
или по другому? например:
....
score BAYES_00 -4.9
score BAYES_01 -6.0
....

Аватара пользователя
setar
Site Admin
Site Admin
Сообщения: 1984
Зарегистрирован: 22 авг 2002, 12:03
Откуда: St. Petersburg

Сообщение setar » 16 мар 2004, 14:17

Вот тот тюнинг что я делал у себя :

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

required_hits           	5.0
bayes_auto_learn_threshold_nonspam			0.1
bayes_auto_learn_threshold_spam			15.0

score FROM_ILLEGAL_CHARS		1.5
score HEAD_ILLEGAL_CHARS		1.5
score SUBJ_ILLEGAL_CHARS		1.5
score FORGED_IMS_TAGS			0.5
score HABEAS_SWE		  		0.0

score BAYES_00					-9.8
score BAYES_01					-3.048
score BAYES_10					-1.816
score BAYES_20					-2.856
score BAYES_30					-1.808
score BAYES_40					-0.002
score BAYES_44					-0.002
score BAYES_50					0.002
score BAYES_56					0.002
score BAYES_60					3.184
score BAYES_70					4.51
score BAYES_80					3.314
score BAYES_90					4.202
score BAYES_99					10.8

параметр режекта писем у меня сейчас зафиксировани на уровне 10.

xleon
member
Сообщения: 21
Зарегистрирован: 15 мар 2004, 11:25

Сообщение xleon » 16 мар 2004, 15:04

Я вот думаю, autolearn это хорошо, но если к пользователю все-таки пробрался спам, как поступать в этом случае?
Просить сохранять сообщения и потом добавлять их ручками или можно завести аккаут на который пользователи будут форвардить спам, а там через cron запускать sa-learn? Правда где-то видел что форвардить письма нельзя, это так?

Аватара пользователя
setar
Site Admin
Site Admin
Сообщения: 1984
Зарегистрирован: 22 авг 2002, 12:03
Откуда: St. Petersburg

Сообщение setar » 16 мар 2004, 16:30

xleon писал(а):Я вот думаю, autolearn это хорошо, но если к пользователю все-таки пробрался спам, как поступать в этом случае?
именно так и сделано у меня - на samba сервере заведены две папочки ham и spam, по необходимости пользователи сами экспортят туда письма (а те кто не очень представляют как это делается попросту удаляют изредка пробившийся спам)
Обучение срабатывает по крону.
Просить сохранять сообщения и потом добавлять их ручками или можно завести аккаут на который пользователи будут форвардить спам, а там через cron запускать sa-learn? Правда где-то видел что форвардить письма нельзя, это так?
Форвардить нельзя, т.к. при синтаксическом разборе заголовка в первую очередь анализируется последний передающий хост (который в случае форварда будет вашей машиной).

xleon
member
Сообщения: 21
Зарегистрирован: 15 мар 2004, 11:25

Сообщение xleon » 19 мар 2004, 12:01

при выполнении команды ./sa-learn --spam /temp/spam получаю следующее:
Use of uninitialized value in pattern match (m//) at /usr/lib/perl5/site_perl/5.6.0/Mail/SpamAssassin/Bayes.pm line 451.
Learning from 21 message(s) (32 message(s) examined).

Чтобы это значило, а именно (... line 451)?
Почему Learning from 21 message(s) (32 message(s) examined), когда спамовских писем там было 65?

как узнать общее кол-во писем, которое уже прошло обучение, чтобы проверить на каком этапе проходит обучение, 32 message(s) examined это оно?

xleon
member
Сообщения: 21
Зарегистрирован: 15 мар 2004, 11:25

Сообщение xleon » 19 мар 2004, 14:07

просматриваю содержимое auto-whitelist и вижу:
0.0 (0.0/1) -- navmse-server2@computery.ru|ip=213.85
0.3 (0.3/1) -- antivirus@enet.ru|ip=195.135
2.3 (2.3/1) -- vu@vinterfestuka.no|ip=217.67
22.2 (22.2/1) -- ycyqowf@lycos.com|ip=64.252
1.6 (1.6/1) -- rochelle_fitchlu@facture.co.uk|ip=211.231
9.5 (9.5/1) -- darrelldebutante@attbi.com|ip=211.245
1.2 (1.2/1) -- natalya@ftinform.com|ip=195.96
0.6 (0.6/1) -- efisenko@family.kaliningrad.ru|ip=217.168
10.4 (10.4/1) -- z0kdldr5gb@lomo.com|ip=80.182
1.6 (1.6/1) -- adeline.coleman@yahoo.com|ip=154.0
2.3 (2.3/1) -- sluda@ukrpost.net|ip=217.67
3.8 (3.8/1) -- creditcheck@09.moosq.com|ip=69.6
8.0 (8.0/1) -- amar@seznam.cz|ip=142.59
35.9 (35.9/1) -- c650fnwr@webtv.net|ip=81.51
2.4 (2.4/1) -- qfnxuu@scientist.com|ip=29.64
15.4 (15.4/1) -- rwan7x62eih@koka.com|ip=218.2
14.2 (14.2/1) -- powersfg@minedu.fi|ip=82.43
4.2 (4.2/1) -- 440r@szf.com|ip=216.240
4.7 (4.7/1) -- toni_lucasqj@on-luebeck.de|ip=67.170

Вопрос в следующем.., почему мыло с адресов у которых score в пределах от 5.0 (значение requred_hint в local.cf) до 15 (значение bayes_auto_learn_threshold_spam) не отправляется на адрес указанный в параметре -b при запуске spamd (daemon /usr/local/sbin/spamass-milter -f -p /var/run/spamass-milter -b spam@xleon.com). Опция -r 10 отключена.

p.s. с этим уже разобрался :)
Последний раз редактировалось xleon 22 мар 2004, 12:19, всего редактировалось 1 раз.

xleon
member
Сообщения: 21
Зарегистрирован: 15 мар 2004, 11:25

Сообщение xleon » 19 мар 2004, 14:55

после установки sendmail 8.12.11 отвалились все алиасы (makemap hash /etc/aliases.db < /etc/aliases не помог), пришлось запустить newaliases.
Но и после этого мыло от root`a, mail и т.п. (т.е. с системных аккаунтов) не приходит, почему не понятно, раньше все было ок.
получается не могу полусить статистику по логам :(

Hak
member
Сообщения: 24
Зарегистрирован: 17 ноя 2003, 14:01
Откуда: Н.Новгород

Вопросы ..... и ответ ..

Сообщение Hak » 23 мар 2004, 10:15

1. после обучения надо что либо перезапускать ?
2. как перенести обученную базу на другой комп ??
Достаточно ли перенести каталог где лежит bayes_seen и т.п. ??
3. spamass-milter-0.2.0 на самом деле вылетает на загруженной машине (более 100 почтовых ящиков) выход использовать milter-spamc (взять можно на http://www.snert.com/Software/milter-spamc/ )

В этом случае sendmail.mc будет выглядеть ...
INPUT_MAIL_FILTER(`milter-spamc',`S=unix:/var/spool/milter-spamc/socket, T=S:30s;R:2m')dnl

INPUT_MAIL_FILTER(`drweb-filter', `S=inet:3001@localhost, F=T, T=C:1m;S:5m;R:5m;E:1h')dnl

define(`confMILTER_MACROS_CONNECT', confMILTER_MACROS_CONNECT`,{client_addr}, {client_name}, {client_port}, {client_resolve}')dnl

Pois0n
Junior member
Сообщения: 3
Зарегистрирован: 24 мар 2004, 12:09

Сообщение Pois0n » 24 мар 2004, 12:16

Поставил и настроил Posfix+DrWEB+spamassassin.
Есть один вопрос, можно как-то завернуть все письма которые маркируются как *****SPAM***** еще на один ящик, чтобы они туда копией приходили.
У меня запущен spamd с такими параметрами:

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

/usr/bin/spamd -D -d -a -c -m 50 -u spam
В master.cf у меня написан такой фильтр.

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

filter    unix  -   n   n   -   16   pipe
    flags=R user=drweb argv=/usr/local/sbin/postfix_filter -f ${sender} -- ${recipient}

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

-su-2.05b# cat /usr/local/sbin/postfix_filter
#!/bin/sh

(/usr/bin/spamc -u spam -s 1024000 | /usr/local/drweb/drweb-postfix $@) <&0
В хелпе на spamc и spamd ничего не нашел по поводу копий писем со спамом еще на один ящик.
[/code]

Аватара пользователя
setar
Site Admin
Site Admin
Сообщения: 1984
Зарегистрирован: 22 авг 2002, 12:03
Откуда: St. Petersburg

Сообщение setar » 24 мар 2004, 13:14

xleon писал(а):при выполнении команды ./sa-learn --spam /temp/spam получаю следующее:
Use of uninitialized value in pattern match (m//) at /usr/lib/perl5/site_perl/5.6.0/Mail/SpamAssassin/Bayes.pm line 451.
Learning from 21 message(s) (32 message(s) examined).

Чтобы это значило, а именно (... line 451)?
Почему Learning from 21 message(s) (32 message(s) examined), когда спамовских писем там было 65?

как узнать общее кол-во писем, которое уже прошло обучение, чтобы проверить на каком этапе проходит обучение, 32 message(s) examined это оно?
Командой /sa-learn --spam /temp/spam вы скормили обучающей системе каталог, в котором как письма было распознано 32 файла, из них как материал для обучения (свеженькое) было отобрано 21 письмо.
Что вылетает за ошибка не знаю, не программер.
Статистика получается так salearn --dump magic
А вообще можно было и man sa-learn посмотреть.

Ответить

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