The OpenNET Project / Index page

[ новости/++ | форум | wiki | теги | ]

25.09.2018 11:28  Доступна система фильтрации спама Rspamd 1.8

Состоялся релиз системы фильтрации спама Rspamd 1.8, предоставляющей средства для оценки сообщений по различным критериям, включая правила, статистические методы и чёрные списки, на основе которых формируется итоговый вес сообщения, используемый для принятия решения о необходимости блокировки. Rspamd поддерживает практически все возможности, реализованные в SpamAssassin, и имеет ряд особенностей, позволяющих фильтровать почту в среднем в 10 раз быстрее, чем SpamAssassin, а также обеспечивать лучшее качество фильтрации. Код системы написан на языке Си и распространяется под лицензией Apache 2.0.

Rspamd построен с использованием событийно-ориентированной архитектуры (Event-driven) и изначально рассчитан на применение в высоконагруженных системах, позволяя обрабатывать сотни сообщений в секунду. Правила для выявления признаков спама отличаются высокой гибкостью и в простейшем виде могут содержать регулярные выражения, а в более сложных ситуациях могут оформляться на языке Lua. Расширение функциональности и добавление новых типов проверок реализуется через модули, которые могут создаваться на языках Си и Lua. Например, доступны модули для проверки отправителя с использованием SPF, подтверждения домена отправителя через DKIM, формирования запросов в списки DNSBL. Для упрощения настройки, создания правил и отслеживания статистики предоставляется административный web-интерфейс.

Основные новшества:

  • Добавлен фреймворк для извлечения данных из сообщений и дальнейшего использования этих данных в плагинах (например, в multimap, reputation или ratelimits) или регулярных выражениях, обработав с привлечением функций преобразования строк. Например, можно извлечь адрес из поля From и преобразовать его в нижний регистр ("smtp_from.lower") или извлечь тему письма, привести к нижнему регистру, вычислить хэш и выдать первые 16 символов результата ("header('Subject').lower.digest('hex').substring(1, 16)");
  • В конструкциях на языке Lua реализована возможность использования сопрограмм для запуска обработчиков в неблокирующем режиме. Например, можно отправить сетевой запрос к антивирусному сканеру и сразу продолжить выполнение не дожидаясь результата, а ответ обработать отдельным callback-обработчиком;
  • Оптимизирована отправка SQL-запросов к СУБД Clickhouse. Для того чтобы избежать медленных запросов с использованием слияний (JOIN) в Rspamd теперь используется одна общая таблица, вместо разбиения структуры БД на несколько таблиц. Преобразование схемы хранения выполняется автоматически, но старые данные не переносятся и не удаляются, а остаются в старых таблицах. В модуле Clickhouse также реализована опциональная возможность задания правил сохранения данных для соответствия принятым в Евросоюзе нормам GDPR;
  • Улучшена обработка Unicode. Нормализация всех unicode-данных теперь выполняется до их обработки, что позволяет исключить проведение атак через подстановку похожих по начертанию глифов;
  • Переработан код для автоматического определения языка, на котором написан текст в сообщении. Новый детектор использует стоп-слова и учитывает подстановку похожих unicode-глифов. Существенно возросла производительность детектора языка, в некоторых ситуациях скорость определения возросла до 10 раз;
  • Внесены улучшения в web-интерфейс. Решены проблемы, проявляющиеся при работе в кластерных конфигурациях и при агрегирования данных. Добавлен индикатор прогресса выполнения AJAX-операций.


  1. Главная ссылка к новости (https://rspamd.com/announce/20...)
  2. OpenNews: Доступна система фильтрации спама Rspamd 1.7
  3. OpenNews: Выпуск системы фильтрации спама SpamAssassin 3.4.2
  4. OpenNews: В рамках проекта Spamnesty развивается бот для увеличения затрат спамеров
  5. OpenNews: Выпущена версия 1.0 системы фильтрации спама rspamd
  6. OpenNews: Конфликт с помещением IP-адресов Google в черный список Spamhaus
Лицензия: CC-BY
Тип: Программы
Ключевые слова: spam, rspamd, mail
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение Ajax/Линейный | Раскрыть все сообщения | RSS
 
  • 1.1, fske (?), 13:02, 25/09/2018 [ответить] [показать ветку] [···]    [к модератору]
  • +3 +/
    Хорошая вещь, мне нравится.
     
     
  • 2.6, Аноним (6), 00:01, 26/09/2018 [^] [ответить]    [к модератору]
  • +1 +/
    А спамассазин собирается как-то догонять в плане скорости? В 10 раз это сильно...
     
     
  • 3.9, abi (?), 09:40, 26/09/2018 [^] [ответить]    [к модератору]
  • +/
    С Си сложновато конкурировать :)
     
     
  • 4.11, Vsevolod Stakhov (?), 15:54, 26/09/2018 [^] [ответить]    [к модератору]
  • +4 +/
    Язык программирования тут особо ни при чем. Пока SA медленно и печально ждет ответа от DNS, чтобы потом снова спросить DNS еще раз, Rspamd посылает все запросы разом, а во время ожидания, скажем, проверяет regexp'ы. В сочетании с быстрым резолвером, например, knot resolver, это дает очень значимый прирост. Ну а по regexp'ам, SA и перлу никогда не достичь результатов Hyperscan (да, re2c тут не поможет ровно никак).

    SA писался людьми, которые вообще не думали о производительности, - достаточно взглянуть на исходный код. Ну а если учесть, что Rspamd сейчас умеет все, что умеет SA, и даже намного больше, то я реально не вижу ни единой причины, зачем сейчас люди ставят и используют SA. Даже при наличии корпуса собственных правил - Rspamd умеет их обрабатывать и использовать как свои собственные, в том числе, включая, где возможно, Hyperscan.

     
     
  • 5.13, Аноним (13), 23:43, 26/09/2018 [^] [ответить]     [к модератору]
  • +/
    Возможно, отчасти это связано с тем, что в дебиановских репозиториях сабж есть т... весь текст скрыт [показать]
     
     
  • 6.14, Vsevolod Stakhov (?), 01:02, 27/09/2018 [^] [ответить]    [к модератору]  
  • +3 +/
    Я собираю пакеты под все актуальные версии debian/ubuntu/centos, причем, скрипты доступны в открытом доступе на гитхабе. В чем проблема?

    Разумеется, если вам интересна производительность, использовать пакеты из дистрибутива все равно нельзя - там нет ни hyperscan, ни luajit 2.1. Я вообще был сильно против включения Rspamd в дистрибутивы без понимания, как оно должно быть, зато с дурацкими требованиями использовать сломанные системные библиотеки (например, тот же hiredis) и засовывать в дистрибутив исходники jquery. В итоге в официальном пакете есть зависимость от hiredis, но она не используется, так как все равно используется патченный локальный вариант. Ну и зачем вам пакет такого качества?

    В итоге нормально собрать Rspamd можно только из портов FreeBSD, да и то, потому что я сам этот порт поддерживаю. Пакеты Rspamd из Debian никуда не годятся, разве что для личной почты или слабо нагруженных почтовых систем.

     
     
  • 7.16, Mikula (?), 09:34, 28/09/2018 [^] [ответить]    [к модератору]  
  • +1 +/
    Две недели как переполз с SA на Rspamd, спасибо за хорошую систему, пока ещё не до конца с ней разобрался конечно, но это поправимо. Спасибо за хороший софт, использую на FreeBSD
     
  • 5.17, xm (ok), 12:44, 28/09/2018 [^] [ответить]    [к модератору]  
  • +/
    От медлительности DNS спасает локальный кэширующий сервер.

    > то я реально не вижу ни единой причины, зачем сейчас люди ставят и используют SA

    Ну, например, наличие интеграции с Exim из коробки.
    В какой у вас сейчас это всё стадии? Помнится, были некоторые трудности.

     
     
  • 6.21, Vsevolod Stakhov (?), 18:09, 28/09/2018 [^] [ответить]    [к модератору]  
  • +/
    > От медлительности DNS спасает локальный кэширующий сервер.

    Это необходимое требование, но не достаточное. Закешировать условный спамхаус у вас все равно не выйдет.

    > Ну, например, наличие интеграции с Exim из коробки.

    Не "у вас", а у Exim'а. У нас-то все хорошо, а вот с той стороны не очень. В целом, интеграция есть, но работает она через legacy Spamassassin протокол. И проблема тут исключительно в разработчиках Exim. В других MTA все должно быть хорошо, даже в CommuniGate интеграция организована лучше, чем в Exim, а это о многом говорит.

     
  • 1.2, твой лучший друг (?), 14:50, 25/09/2018 [ответить] [показать ветку] [···]    [к модератору]  
  • +3 +/
    да х-ня эти все новшества, главное скажи - contributor covenant запилил или нет?
     
  • 1.3, Онанимус (?), 16:22, 25/09/2018 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Спасибо! Уже обновился.
     
  • 1.4, Аноним (4), 16:53, 25/09/2018 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Если поставить на релей почты толк от rspamd будет?
     
     
  • 2.5, Аноним (5), 17:42, 25/09/2018 [^] [ответить]    [к модератору]  
  • +/
    Только на открытом релее.
     
     
  • 3.8, konst55512 (?), 04:41, 26/09/2018 [^] [ответить]    [к модератору]  
  • +1 +/
    на который поступает 100 email/sec
     
  • 1.10, u (?), 14:37, 26/09/2018 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Вот и Clickhouse от яндекса нашёл своё применениев ещё отдном продукте.
     
  • 1.12, Аноним (12), 19:45, 26/09/2018 [ответить] [показать ветку] [···]    [к модератору]  
  • –3 +/
    Эх, если б оно ещё и документацию нормальную имело, ему б цены не было.
     
     
  • 2.15, Vsevolod Stakhov (?), 01:08, 27/09/2018 [^] [ответить]    [к модератору]  
  • +3 +/
    Ваши данные о документации устарели на несколько лет. Сейчас есть документация на любой вкус:

    - Quick Start: https://rspamd.com/doc/quickstart.html
    - FAQ: https://rspamd.com/doc/faq.html
    - Integration: https://rspamd.com/doc/integration.html
    - Modules: https://rspamd.com/doc/modules/
    - API: https://rspamd.com/doc/lua/
    - Rspamd с точки зрения админа: https://www.0xf8.org/2018/05/an-alternative-introduction-to-rspamd-configurati

    А также множество другой информации, гайдов (в том числе сторонних), best practices и прочего. Сейчас на большую часть вопросов пользователей я отвечаю ссылками на документацию. Это о многом говорит - раньше все было совсем не так.

     
     
  • 3.22, Аноним (12), 21:05, 03/10/2018 [^] [ответить]     [к модератору]  
  • +/
    Вы таки не правы Разумеется, все выше приведённые ссылки были мною прочитаны, и... весь текст скрыт [показать]
     
     
  • 4.23, Vsevolod Stakhov (?), 16:43, 09/10/2018 [^] [ответить]     [к модератору]  
  • +/
    Эм https rspamd com doc index html quick-links gt оверквотинг удален Вряд л... весь текст скрыт [показать]
     
  • 1.18, BrainFucker (ok), 13:09, 28/09/2018 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Для небольших серверов бы чего нибудь легковесное, держать это на маленькой впске излишне громоздко. Я как-то обновлялся, оно ещё и фортран зачем-то притащило с какой-то версии.
     
     
  • 2.19, Аноним (-), 15:30, 28/09/2018 [^] [ответить]    [к модератору]  
  • +/
    > фортран зачем-то притащило

    )))

     
  • 2.20, Vsevolod Stakhov (?), 17:57, 28/09/2018 [^] [ответить]    [к модератору]  
  • +1 +/
    Фортран в виде openblas используется для ускорения операций с тензорами в torch (https://torch.ch). Rspamd работает и без этого, но тогда вам нужно собрать пакеты самостоятельно.

    Все опции сборки можно посмотреть тут: https://github.com/rspamd/rspamd/blob/master/CMakeLists.txt#L42

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

     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:


      Закладки на сайте
      Проследить за страницей
    Created 1996-2018 by Maxim Chirkov  
    ДобавитьПоддержатьВебмастеруГИД  
    Hosting by Ihor