Apache SpamAssassin - Apache SpamAssassin

Apache SpamAssassin
Apache SpamAssassin logo.svg
Разработчики) Фонд программного обеспечения Apache
изначальный выпуск 20 апреля 2001 г . ; 20 лет спустя ( 2001-04-20 )
Стабильный выпуск
3.4.6 / 12 апреля 2021 г . ; 3 месяца назад ( 2021-04-12 )
Репозиторий Репозиторий SpamAssassin
Написано в Perl , C
Операционная система Кроссплатформенность
Тип Спам-фильтр
Лицензия Лицензия Apache 2.0
Интернет сайт spamassassin .apache .org Отредактируйте это в Викиданных

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

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

История

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

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

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

В декабре 2019 года была выпущена версия 3.4.3 SpamAssassin.

В апреле 2021 года была выпущена версия 3.4.6 SpamAssassin. Было объявлено, что основной задачей проекта станет разработка версии 4.0.0.

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

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 имеют двойную лицензию в соответствии с Художественной лицензией и Стандартной общественной лицензией GNU .

sa-compile

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

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

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

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

Примечания

использованная литература

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