URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 96932
[ Назад ]

Исходное сообщение
"Exim и отбойки"

Отправлено Вася , 27-Июн-17 10:52 
Народ, как лучше левые отбойки замочить на Exim'e ?

Стандартная тема, когда спам с подставным отправителем прорывается и мы спамим отбойками в ответ.


Содержание

Сообщения в этом обсуждении
"Exim и отбойки"
Отправлено DeadLoco , 27-Июн-17 13:03 
> Народ, как лучше левые отбойки замочить на Exim'e ?

Как обычно:
1. проверяем реверс лукап
2. проверяем спф
3. проверяем по локальному блеклисту
4. проверяем по байесу
Если все проверки пройдены и получатель отсутствует - баунсим.
Если хоть одна проверка завалена - скармливаем добычу байесу.



"Exim и отбойки"
Отправлено Вася , 27-Июн-17 17:44 
>> Народ, как лучше левые отбойки замочить на Exim'e ?
> Как обычно:

Не, я больше не про защиту спрашиваю, а про конкретно отбойки: "Mail delivery failed: returning message to sender"

Интересуют рекомендации для почтовых шлюзов (не конечные почтовые серверы).

Почтовые шлюзы должны иметь мягкие условия на приём писем, соответственно есть некоторая проблема с отбойками.


"Exim и отбойки"
Отправлено DeadLoco , 27-Июн-17 19:28 
> Не, я больше не про защиту спрашиваю, а про конкретно отбойки: "Mail
> delivery failed: returning message to sender"

А я о чем? Баунсы не может слать хост без птра, баунсы не может слать хост, не включенный в спф (если он есть), баунс не должен содержать контента, распознаваемого байесом, как спам.

> Интересуют рекомендации для почтовых шлюзов (не конечные почтовые серверы).

Нет разницы.

> Почтовые шлюзы должны иметь мягкие условия на приём писем

Не должны. Вышеописанный перечень шлюзы должны отрабатывать так же, как и конечные МТА доменов. Чем раньше будет зарублен спам - тем лучше.



"Exim и отбойки"
Отправлено Вася , 27-Июн-17 19:46 
>> Почтовые шлюзы должны иметь мягкие условия на приём писем
> Не должны.

Ясно-понятно :)


"Exim и отбойки"
Отправлено xm , 27-Июн-17 19:33 
> Если хоть одна проверка завалена - скармливаем добычу байесу.

Жёстко у вас...


"Exim и отбойки"
Отправлено DeadLoco , 27-Июн-17 20:05 
> Жёстко у вас...

Все перечисленные критерии безусловны.

Не имеет смысла разбираться с сообщениями, которые пришли с адреса, у которого даже ПТР-записи нет. 146% гарантия спама.
Не имеет смысла разбираться с сообщениями, которые пришли с адреса, не указанного в СПФ-записи домена, если она есть. СПФ-запись для того и придумана, чтобы я мог без сомнений и размышлений классифицировать такие письма, как спам.
Не имеет смысла разбираться с сообщениями, которые дают на байесе 95-99% вероятность спамовости.

Все это прямиком отправляется в sa-learn, чтобы еще более лучше повысить распознание спама байесом. А кто так не делает - тот и себе и юзерам злобный буратино.


"Exim и отбойки"
Отправлено XAnder , 28-Июн-17 13:17 
> Все перечисленные критерии безусловны.
> Не имеет смысла разбираться с сообщениями, которые пришли с адреса, у которого
> даже ПТР-записи нет. 146% гарантия спама.

Верно.

> Не имеет смысла разбираться с сообщениями, которые пришли с адреса, не указанного
> в СПФ-записи домена, если она есть. СПФ-запись для того и придумана,
> чтобы я мог без сомнений и размышлений классифицировать такие письма, как
> спам.

Строго говоря, там на конце ~all пишут как раз для сомнений и размышлений. Косячная настройка SPF мне попадалась не раз и не два. Особенно это касается всяких автоматических уведомляторов. Один известный интернет-магазин этим периодически грешит. Писал им — чинят, а через какое-то время всё по-новой.

> Не имеет смысла разбираться с сообщениями, которые дают на байесе 95-99% вероятность
> спамовости.

Баес, хоть и крайне редко, но ошибается. На днях тут у нас он чуть не похерил Очень Важное Письмо™ — выдал 99%. Хорошо, что у нас все критерии условны, и админ избежал начальственной кары.

> Все это прямиком отправляется в sa-learn, чтобы еще более лучше повысить распознание
> спама байесом. А кто так не делает - тот и себе
> и юзерам злобный буратино.

Вот я, злобный буратино, так не делаю :-) У нас каждый спамерский признак добавляет сообщению очки, а вывод делается по сумме. Причём спамовость имеет аж четыре градации: не спам — юзеру во «Входящие», возможно спам — юзеру в «Спам», скорее всего спам — в специальную резервацию, точно спам — в отвал. Резервация периодически просматривается, потом скармливается баесу.

Сообщений у нас, правда, не так много — сотни две-три в день. За большие масштабы не скажу, не имел дела.


"Exim и отбойки"
Отправлено xm , 28-Июн-17 15:13 
> Не имеет смысла разбираться с сообщениями, которые пришли с адреса, не указанного
> в СПФ-записи домена, если она есть.

Собственно, моя реплика больше относилась к этой части. При таком подходе у вас в качестве спама будет рассматриваться и большая часть списков рассылки. Ну и, попутно, в этой связи как не вспомнить о DMARC.

> спамерский признак добавляет сообщению очки, а вывод делается по сумме

Я придерживаюсь примерно того же подхода учитывая историческую репутацию отправителя.


"Exim и отбойки"
Отправлено DeadLoco , 28-Июн-17 18:16 
> Ну и, попутно, в этой связи как не вспомнить о DMARC.

А никак не вспомнить. У 4/5 хостов даже спф не настроен, не говоря уж о дким, а дмарк - дело нескорого будущего. Пока что его наличие/полезность в пределах статпогрешности.

>> спамерский признак добавляет сообщению очки, а вывод делается по сумме
> Я придерживаюсь примерно того же подхода учитывая историческую репутацию отправителя.

Я игрался с начислением очков в ацлях экзима лет десять тому. Но потом просто подбил статистику по четырем миллионам сессий за год, и понял, что все это очень здорово, но совершенно не нужно. Реверс-лукап, маленький блеклист, байес. Отдельно обращаю внимание - никакого грейлистинга, никаких днсблов.

Моя статистика следующая: 85% спама режется по реверс-лукапу. Вот тупо нет даже динамического провайдерского имени вида 123-234-adls.345.comcast.net. Из оставшихся 15% еще 14.5% (95%) режется по локальному регулярно освежаемому черному списку регекспов/доменов/айпих, составляемому по топ-100 срабатываний байеса.

Вот выхлоп скрипта, который раз в неделю парсит лог СА, подбивает статистику по злостным рассыльщикам спама, и автоматом формирует список регекспов в формате lsearch экзима:

26473    ^.*jafeto.*
25961    ^.*\d+[-\.]\d+[-\.]\d+.*
23828    ^.*hqitope.*
22817    ^.*zemonik.*
19869    ^.*lcruzer.*
18738    ^.*hiolom.*
16209    ^.*jmtier.*
14013    ^.*fiolon.*
13860    ^.*billingers.*
13642    ^.*jokiolo.*
11173    ^.*gravirai.*
10921    ^.*jizana.*
10334    ^.*partamus.*
9662     ^.*frankryk.*
7528     ^.*bizneroa.*
6931     ^.*forbes.*
6646     ^.*informark.*
6405     ^.*geremans.*
6026     ^.*mclarens.*
5763     ^.*holihik.*
5669     ^.*interboxe.*
5647     ^.*fendirtoon.*
5623     ^.*gomelins.*
5623     ^.*emlone.*
5481     ^.*freewares.*
5317     ^.*timareg.*
.......
lsearch ГОРАЗДО быстрее байеса, и этот блеклист можно рассматривать просто как кеширование результатов байеса. Этот список обычно в длину имеет 7-8 тыс строк, и, как я уже говорил, отлавливает не менее 95% спама, который пришел с хостов, имеющих ПТР-запись.

И вот только оставшихся 0.5% проверяются байесом, которому кривая селективности подкручена так, что результат "BAYES_99" означает, по сути, "BAYES_9999". Чтобы было понятно - у меня база токенов байеса имеет размер 32 мегабайта. Ну, если это о чем-то говорит, конечно.


"Exim и отбойки"
Отправлено xm , 28-Июн-17 19:52 
Спасибо, подход, в общих чертах, понятный.
Неплохо может помочь TXREP из SpamAssassin в качестве исторического критерия для классификации на спам ещё на стадии RCPT.
Насчёт DMARC я наблюдаю что он внедрён на многих популярных сервисах, включая и крупнейшие публичные почтовые, и неплохо работает. Но проблема с листами рассылки налицо.

> И вот только оставшихся 0.5% проверяются байесом, которому кривая селективности подкручена

У меня где-то в районе менее 2% до него доходит.

> так, что результат "BAYES_99" означает, по сути, "BAYES_9999".

Я своему правилу BAYES_999 поставил высокий бал так, что получившие его редко попадают в папку "Спам" пользователя, но могут попадать в служебную для возможного разбора полётов.

> Чтобы было понятно - у меня база токенов байеса имеет размер 32 мегабайта. Ну,
> если это о чем-то говорит, конечно.

Вообще не много. У меня bayes_token в районе 4 млн. записей при размере менее 500 Mb (InnoDB).


"Exim и отбойки"
Отправлено Аноним , 29-Июн-17 08:17 
> У 4/5 хостов даже спф не настроен

Ну не знаю, статистика с моего сервера за последние два года:

    851 fail
    435 neutral
   4496 none
   4068 pass
    466 permerror
   1702 softfail
    126 temperror

Цифры - кол-во уникальных доменов с данным результатом проверки SPF. Как можно видеть, none составляет менее половины суммы остальных.

А если брать только за последний месяц, то видно что прогресс идёт:

     36 fail
     34 neutral
    287 none
    668 pass
     35 permerror
    122 softfail
      1 temperror

Конечно, немалую часть pass составляют спамеры, но ведь они не ради продвижения SPF прописывают его, а потому что вынуждены.


"Exim и отбойки"
Отправлено XAnder , 29-Июн-17 08:52 
Спасибо! Весьма познавательно.

Всё же очень интересно: как вы поступаете с softfail в SPF?

> Я игрался с начислением очков в ацлях экзима лет десять тому. Но
> потом просто подбил статистику по четырем миллионам сессий за год, и
> понял, что все это очень здорово, но совершенно не нужно.

Судя по количеству сессий, у вас почтовый трафик на порядок (а то и на полтора) больше, чем у нас. С увеличением выборки вероятностный фильтр становится всё более надёжным, это понятно. У нас же флуктуации, похоже, неизбежны.

В общем, дорастём до вас, поглядим.

> Реверс-лукап, маленький блеклист, байес. Отдельно обращаю внимание - никакого грейлистинга, никаких днсблов.

От серых списков я тоже давно уже отказался — больше помех, чем пользы. DNSBL пока есть, но очков за них даю по минимуму. Наверное, тоже скоро откажусь совсем.

> Моя статистика следующая: 85% спама режется по реверс-лукапу. Вот тупо нет даже
> динамического провайдерского имени вида 123-234-adls.345.comcast.net.

Странно, у нас таких не больше 30%. Наверное, местные особенности.

> 23828    ^.*hqitope.*

Разве такое выражение не эквивалентно простому «hqitope»?

> Чтобы было понятно - у меня база токенов байеса имеет размер 32 мегабайта. Ну,
> если это о чем-то говорит, конечно.

[Приложил линейку к своей] Говорит :-)


"Exim и отбойки"
Отправлено ПавелС , 28-Июн-17 14:28 
> Народ, как лучше левые отбойки замочить на Exim'e ?
> Стандартная тема, когда спам с подставным отправителем прорывается и мы спамим отбойками
> в ответ.

Не принимать письмо если не прошёл sender callout ещё до команды DATA. Например на этапе check_rcpt. В этом случае не придётся отсылать отскок.
Что-то на основе


require verify        = sender/callout=10s,defer_ok,random,no_cache
        message = $sender_address does not exist

только не для локальных доменов.