stringtranslate.com

Apache SpamAssassin

Apache SpamAssassinкомпьютерная программа , используемая для фильтрации спама в электронной почте . Он использует различные методы обнаружения спама, включая DNS и методы нечеткой контрольной суммы , байесовскую фильтрацию , внешние программы, черные списки и онлайн-базы данных. Он выпускается под лицензией Apache 2.0 и является частью Apache Foundation с 2004 года.

Программу можно интегрировать с почтовым сервером для автоматической фильтрации всей почты сайта. Его также могут запускать отдельные пользователи в своих почтовых ящиках, и он интегрируется с несколькими почтовыми программами . Apache SpamAssassin обладает широкими возможностями настройки; если он используется в качестве общесистемного фильтра, его все равно можно настроить для поддержки предпочтений каждого пользователя.

История

Apache SpamAssassin был создан Джастином Мейсоном, который поддерживал ряд исправлений для более ранней программы под названием filter.plx Марка Джефтовича, которая, в свою очередь, была начата в августе 1997 года. Мейсон переписал весь код Джефтовича с нуля и загрузил полученную кодовую базу в SourceForge , 20 апреля 2001 г. [4]

Летом 2004 года проект стал проектом Apache Software Foundation , а позже официально переименован в Apache SpamAssassin . [5]

Выпуск SpamAssassin 3.4.2 в сентябре 2019 года стал первым за более чем три года, но разработчики заявляют, что «проект набрал новую команду разработчиков и снова движется вперед». [6]

В декабре 2019 года вышла версия SpamAssassin 3.4.3.

В апреле 2021 г. вышла версия SpamAssassin 3.4.6. Было объявлено, что основным направлением проекта станет разработка версии 4.0.0. [7]

Способы использования

Apache SpamAssassin — это приложение на основе Perl ( Mail::SpamAssassin в CPAN ), которое обычно используется для фильтрации всей входящей почты для одного или нескольких пользователей. Его можно запустить как отдельное приложение или как подпрограмму другого приложения (например, Milter , SA-Exim, Exiscan, MailScanner , MIMEDefang , Amavis ) или как клиент ( spamc ), который взаимодействует с демоном ( spamd ). Клиент-серверный или встроенный режим работы имеют преимущества в производительности, но при определенных обстоятельствах могут создавать дополнительные риски для безопасности.

Обычно любой вариант приложения устанавливается в стандартной программе почтового фильтра или вызывается непосредственно из почтового пользовательского агента , который поддерживает это, при каждом поступлении новой почты. Программы почтового фильтра, такие как procmail, можно настроить на передачу всей входящей почты через Apache SpamAssassin с корректировкой пользовательского файла procmailrc .

Операция

Apache SpamAssassin поставляется с большим набором правил, которые применяются для определения того, является ли электронное письмо спамом или нет. Большинство правил основаны на регулярных выражениях , которые сопоставляются с полями тела или заголовка сообщения, но Apache SpamAssassin также использует ряд других методов борьбы со спамом. В документации SpamAssassin эти правила называются «тестами».

Каждый тест имеет значение балла, которое будет присвоено сообщению, если оно соответствует критериям теста. Оценки могут быть положительными или отрицательными: положительные значения указывают на «спам», а отрицательные — на «спам» (сообщения, не являющиеся спамом). Сообщение сопоставляется со всеми тестами, а Apache SpamAssassin объединяет результаты в глобальную оценку, которая присваивается сообщению. Чем выше балл, тем выше вероятность того, что сообщение является спамом.

Apache SpamAssassin имеет внутренний (настраиваемый) порог оценки, позволяющий классифицировать сообщение как спам. Обычно сообщение считается спамом только в том случае, если оно соответствует нескольким критериям; совпадения только одного теста обычно недостаточно для достижения порога.

Если Apache SpamAssassin считает сообщение спамом, его можно дополнительно переписать. В конфигурации по умолчанию содержимое письма добавляется в виде вложения MIME с кратким отрывком в теле сообщения и описанием тестов, в результате которых письмо было классифицировано как спам. Если оценка ниже заданных настроек, по умолчанию информация о пройденных тестах и ​​общем балле все равно добавляется в заголовки электронного письма и может использоваться при постобработке для менее серьезных действий, таких как пометка письма как подозрительного.

Apache SpamAssassin позволяет настраивать свое поведение для каждого пользователя, даже если он установлен как общесистемная служба; Конфигурацию можно прочитать из файла или базы данных. В своей конфигурации пользователи могут указать лиц, чьи электронные письма никогда не считаются спамом, или изменить оценки для определенных правил. Пользователь также может определить список языков, на которых он хочет получать почту, и Apache SpamAssassin затем присваивает более высокий балл всем письмам, написанным на другом языке.

Apache SpamAssassin основан на эвристике (распознавании образов), и такое программное обеспечение демонстрирует ложноположительные и ложноотрицательные результаты.

Сетевые методы фильтрации

Apache SpamAssassin также поддерживает:

Дополнительные методы можно легко добавить, написав подключаемый модуль Perl для Apache SpamAssassin.

Байесовская фильтрация

Apache SpamAssassin усиливает свои правила посредством байесовской фильтрации , при которой пользователь или администратор «вводит» в фильтр примеры хорошего (хамства) и плохого (спама), чтобы понять разницу между ними. Для этой цели Apache SpamAssassin предоставляет инструмент командной строки sa-learn , которому можно дать указание распознавать отдельное письмо или весь почтовый ящик как спам или спам.

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

Лицензирование

Apache SpamAssassin — бесплатное программное обеспечение с открытым исходным кодом , распространяемое по лицензии Apache License 2.0 . Версии до 3.0 имеют двойную лицензию: Artistic License и GNU General Public License .

sa-компилировать

sa-compile— это утилита, распространяемая вместе с Apache SpamAssassin, которая компилирует набор правил SpamAssassin в детерминированный конечный автомат , который позволяет Apache SpamAssassin более эффективно использовать мощность процессора.

Тестирование Apache SpamAssassin

Apache SpamAssassin предназначен для запуска GTUBE — 68-байтовой строки, аналогичной тестовому файлу антивируса EICAR . Если эта строка вставлена ​​в сообщение в формате RFC 5322 и передана через механизм Apache SpamAssassin, Apache SpamAssassin сработает с весом 1000.

Смотрите также

Примечания

  1. ^ «Комитет по управлению проектом». Фонд программного обеспечения Apache . 2022 . Проверено 23 августа 2023 г.
  2. ^ «[ОБЪЯВЛЕНИЕ] Доступен Apache SpamAssassin 4.0.0» . 17 декабря 2022 г. Проверено 17 декабря 2022 г.
  3. ^ Ошибка: невозможно правильно отобразить ссылку. Подробности смотрите в документации .
  4. ^ "Предыстория SpamAssassin" . Фонд Апач . Проверено 19 декабря 2018 г.
  5. ^ «Статус инкубации проекта SpamAssassin» . Фонд Апач . Проверено 19 декабря 2018 г.
  6. ^ «SpamAssassin вернулся» . LWN.net . Проверено 19 декабря 2018 г.
  7. ^ «SpamAssassin: Новости и объявления» . spamassassin.apache.org . Проверено 12 апреля 2021 г.

Рекомендации

Внешние ссылки