Тому, кто использует e-mail много и интенсивно, и даже тому, кто только начинает пользоваться электронной почтой, через некоторое время уже не надо объяснять и рассказывать, что такое спам… И, если сначала пролезшие призывы «изучить английский с профессионалами», «коммерческое предложение», «приглашение отдохнуть» не вызывают ничего, кроме желания нажать на Del и забыть, то с течением времени, когда большая часть пришедших писем — это исключительно подобный мусор, в куче которого приходится разыскивать жемчужинки действительно нужных писем, появляется ощущение: «Надо что-то делать, что-то делать надо».
«Беда, коль сапоги начнет тачать пирожник». Да, можно воспользоваться достаточно большим набором специальных дополнительных инструментов, но это не всем и не всегда нравится. Вместо простого и быстрого получения новой почты в одно касание — обвешивать свой компьютер, как рождественскую елку, незнакомыми утилитами, заучивать строгую последовательность «шаманских действий» (получить этой программой, проверить той, передать в какую-то еще). Как, используя только возможности The Bat, избежать подобных проблем, и, по возможности, максимально оградить себя от непрошеной почты — эту задачу мы и попробуем решить.
Сразу же стоит упомянуть, что возможности The Bat 1.62 (последнего релиза) и бет 1.63 в этой части сильно отличаются (в лучшую для 1.63 beta сторону — добавленная возможность подключения и использования специализированных антиспам-плагинов дает практически неограниченную возможность реализации самых изощренных методов проверки Вашей входящей почты), поэтому и говорить о них стоит отдельно.
Начнем с 1.62 (хотя большая часть из этого также легко может использоваться и с более старыми версиями).
Основным инструментов в нашей борьбе станет мощная система фильтров The Bat. Они доступны из главного меню программы (Ящик-настройка сортировщика писем). Известно, что принимаемая почта может проходить через два набора фильтров — фильтры «выборочного скачивания» и фильтры «входящей почты«… Какие из них использовать, а какие нет — вопрос очень индивидуальный, зависит от личных предпочтений и множества условий:
— что более критично: получить дополнительный трафик или находиться дольше в online?
— хочется ли видеть результаты работы фильтров или Вы настолько уверены в себе, что можете позволить использовать их без контроля (фильтры на входящие оставляют следы своей работы в логе, фильтры выборочного скачивания — нет, и Вы не проконтролируете процесс удаления писем на сервере фильтром выборочного скачивания, во всяком случае — простыми методами)?
— нужен ли для множества Ваших ящиков один универсальный фильтр, поддержка которого осуществляется просто и быстро, или Вы готовы пойти на то, чтобы исправленный в одном ящике фильтр размножать и переносить во все Ваши ящики вместо предыдущей, устаревшей версии?
— думаю, каждый к этому списку может добавить еще не одну и не две причины, почему он использует (или не использует) фильтры входящей почты или выборочного скачивания.
Рассмотрим для полноты оба варианта фильтров.
Выборочное скачивание
За | Против | |
---|---|---|
1. Не загружают полностью все письмо, только заголовки (меньше трафик) | 1. Нельзя анализировать тело письма | |
2. Один внешний файл сигнальных строк можно использовать в фильтрах разных ящиков | 2. При очень большом количестве писем и низкой скорости время соединения может оказаться даже большим, чем просто получить все письма и разбираться «на месте» | |
4. Внешние текстовые файлы можно редактировать без запуска The Bat и использовать не только ручную правку 3. Не ведут логов работы |
Фильтры входящей почты
За | Против | |
---|---|---|
1. позволяют использовать дополнительные условия проверки (принадлежность — отсутствие в адресной книге) и результаты проверки по предшествующим в цепочке фильтрам | 1. До начала работы вы весь мусор уже получили, сэкономить получится только время на разборку (и нервы), но не деньги | |
2. Проверяют все письмо (и заголовки и текст письма) |
В версиях 1.6х встроен простейший фильтр входящей почты «», который проверяет отправителя полученного сообщения на присутствие в выбранных адресных книгах (или в отдельных группах адресных книг) и перемещает письма от известных за пределы Inbox, оставляя в нем только неизвестных — и спам…
Еще одна достаточно простая и очевидная проверка — если Вашего имени или адреса нет в списке получателей, то такое письмо можно считать подозрительным (исключая, конечно, вариант подписки на рассылки и адресованные по BCC — скрытой копии сообщения).
Ответ на вопрос «что использовать в качестве сигнальных» строк Вам может дать только внимательное изучение «под микроскопом» Вашей, и только Вашей коллекции уже полученного спама… Есть общие (или, по крайней мере, часто встречающиеся) признаки, которые используются в разнообразных системах контекстной фильтрации. Те же правила Spamassassin хорошо работают на англоязычных текстах, и их можно позаимствовать и использовать. Но по большей части это кропотливая ручная работа.
Мощным инструментом в The Bat является поддержка регулярных выражений. С их помощью можно свести многочисленные вариации, на которые так изобретательны спамеры («:в соответствии с Конституцией:», «:приносим:извинения:за:»), в одну или несколько (вместо десятков) сигнальных строк. Отлаживать и тестировать регулярные выражения можно в самом The Bat (на время экспериментов заменив действие с «удалить» или «переместить» например на «выставить флаг» или «расцветить ярким цветом»).
Можно также использовать специализированные утилиты. Одна из них, входящая в состав TRegExpr, предназначенная специально для тестирования регулярных выражений, доступна на домашней страничке Андрея Сорокина ( или ее зеркале).
По каким параметрам НЕ стоит фильтровать? Не тратьте силы и время на фильтрацию по «спискам запрещенных почтовых адресов». Этот метод, ввиду очевидной простоты изменения адреса (и возможности_использования_любого) в поле From показал полную несостоятельность — можно вести огромные списки таких адресов (и примеры их могут быть найдены в Сети), и продолжать получать то, что уже видели, и больше видеть не хотели.
Списки запрещенных хостов, поддерживаемые различными DNSBL-системами, однако, могут оказаться полезными из-за своей динамической природы. Они обновляются достаточно регулярно и оперативно. Если подделать e-mail адрес может любой, с IP-адресами и DNS-именами такой фокус легко не проходит — обычно они за пределами возможностей спамеров. The Bat не может использовать эти данные напрямую (произвольные DNS-запросы выходят за рамки необходимого обычному e-mail клиенту), но, тем не менее, «научить» его пользоваться этими данными можно. Фильтры выборочного скачивания умеют работать с данными из внешних файлов, один из вариантов области проверки — путь прохождения, где и могут встретиться «неблагонадежные» релеи.
Решение выглядит простым — получать регулярно полные списки хостов, занесенных в выбранные зоны, вычищать их от лишних для нашей задачи данных, оставляя только IP-адреса по одному на строку, и использовать эти файлы как источник сигнальных строк. Как получать — вопрос отдельный, надежное решение — обратиться за помощью к тому, для кого «zone transfer», «rsync» не звучит как китайская грамота.
С появлением в бетах 1.63 поддержки внешних специализированных антиспам-плагинов (и API для разработчиков таких плагинов) ситуация меняется в лучшую сторону — плагины могут выполнять любые комплексные проверки, недоступные ранее. Надо только найти правильный плагин (или того, кто его напишет) — и можно без магических пассов проверять почту по различным DNSBL, работать с базой сигнатур Razor, DCC…
Принцип их работы прост — сообщения проверяются плагином, который сообщает The Bat, что это было, по его мнению — спам или «»правильное» письмо, в зависимости от этого решается дальнейшая судьба: можно переместить его в отдельный мусоросборник, а можно и просто удалить. Коллекция плагинов (действующих по разным принципам) собрана на ftp.gin.cz.
Очень интересен и полезен (особенно тем, кто не любит работу ассенизатора) BayesIt!, избавляющий от необходимости ручной работы по поддержанию качественного уровня фильтрации (ну, почти избавляющий — он тоже может ошибаться), на основе применения математической теоремы Байеса к входящим письмам, но об этом хорошо рассказано автором плагина, не вижу смысл повторять его обстоятельное описание теории и практики работы фильтра.
На вопрос, «Использую ли я сам описанные хитрые вариации фильтров и плагины?», могу честно признаться — пока нет. Но не потому, что они плохи, а исключительно в силу «исторических» причин. Собрав за долгую практику из отдельных фрагментов систему спам-фильтрации, так и живу с тем, «что выросло». Но менять «тришкин кафтан» на единое решение все-таки рано или поздно соберусь — и проще, и надежнее следить в одном месте за системой защиты, а не контролировать несколько направлений возможных проблем.
«Этюд в багровых тонах» или Мысли о том, как при помощи The Bat сказать спаму «НЕТ!»