Фильтр № 5.
- Выделяем ящик pupkin@mailserver.ru
- Меню [Ящик / Настройка сортировщика писем]
- Выделяем правило сортировки [Входящая почта]
- Кнопка [Создать]
- Вкладка [Правила]
- Название фильтра “Спам-сортир”
- Переместить письмо в папку
[Корзина] - Вкладка [Действия]
- [√] Удалить письмо
- [√] Экспортировать письмо в файл
C:spam.txt
Формат [Текст] - Добавить к существующему файлу
- Кнопка [Шаблон] - вставляем в редакторе шаблонов текст:
%REGEXPTEXT="w+[-w]*@w+[-w.]+w{2,4}" %Cursor - Кнопка [Ok] – сохраняем шаблон и возвращаемся в сортировщик писем
- Вкладка [Дополнительно]
- [√] Адрес должен присутствовать в адресной книге Элементы: [Отправитель] [√] Адрес должен принадлежать группам: [_Сортир]
- Остальные пункты оставляем по умолчанию
- Кнопка [Закрыть] – закрывает сортировщик и сохраняет введённый фильтр
В _Отстойнике будут накапливаться одноразовые несуществующие адреса спам-сообщений, поэтому раз в год полезно очищать _Отстойник от мусорных адресов.
Фильтр № 6 обрабатывает письма от незнакомцев: перемещает их в корзину, рассылает им уведомления и помещает их адреса в _Отстойник. В уведомлении неизвестному адресату предлагается либо автоответить этим уведомлением (с уже введённым кодом), либо написать новое письмо с этим же кодом в теме. Если незнакомец авотоответит уведомлением, то его старое письмо уже лежит в нашей корзине, мы просто его там найдём по дате отправления и теме, указанными в вернувшемся уведомлении.
В нашем примере используется цифровой код 456123. Можно задать код английскими буквами, но не русскими, чтобы избежать проблем с кодировками кириллицы.
Фильтр № 6.
- Выделяем ящик pupkin@mailserver.ru
- Меню [Ящик / Настройка сортировщика писем]
- Выделяем правило сортировки [Входящая почта]
- Кнопка [Создать]
- Вкладка [Правила]
- Название фильтра “От неизвестного адресата”
- Переместить письмо в папку
[Корзина] - Сигнальные строки:
Строки | Наличие | Где |
456123 | Тема | Нет |
- Вкладка [Действия]
- [√] Пометить письмо как прочитанное
- [√] Добавить адрес(а) в адресную книгу Элементы: [Отправитель От] Добавить в группы: [_Отстойник]
- [√] Отправить автоответ
- Кнопка [Шаблон] – вставляем в редакторе шаблонов текст:
Уважаемый отправитель письма %OFROMNAME! Вы написали %ODATE в %OTIMELONG с адреса %OFROMADDR на адрес %OTOADDR. Ваше сообщение было автоматически удалено фильтрами от спама и в течение 30 дней будет храниться в корзине моей почтовой программы. Исходное сообщение: ====================================================================== От: %OFROMNAME Кому: %OTONAME Отправлено: %ODATESHORT %OTIMELONG Тема: %OSUBJ ====================================================================== Если Вы хотите, чтобы я: а) прочитал Ваше письмо, ответьте этим письмом. б) получил от Вас новое письмо, добавьте в его тему число 456123. Приношу извинения за доставленное неудобство при первом контакте. С наилучшими пожеланиями - автоответчик %FROMADDR %SUBJECT="%OSUBJ 456123" %ATTACHFILE="C:message.msg" - Кнопка [Ok] – сохраняем шаблон и возвращаемся в сортировщик писем
- Экспортировать письмо в файл
C:message.msg
Формат [RFC-822 (MSG)] - Вкладка [Свойства]
- Отправка созданных писем:
- Вкладка [Дополнительно]
- [√] Адрес должен отсутствовать в адресной книге Элементы: [Отправитель]
- Остальные пункты оставляем по умолчанию
- Кнопка [Закрыть] – закрывает сортировщик и сохраняет введённый фильтр
К уведомлению прикрепляется файл исходного сообщения, что может увеличить исходящий трафик. В принципе это нужно только для отправителя, не являющегося спамером, чтобы выслать ему оригинал его письма. Если это кажется Вам излишним, тогда уберите из шаблона последнюю строку:
%ATTACHFILE="C:message.msg"
и пункт 15 из фильтра № 6.
Итак, фильтр № 6 “От неизвестного адресата” переместит письмо от незнакомца в корзину, где оно должно пролежать какой-то срок, например 30 дней, чтобы либо дождаться автоответа от пользователя и быть прочитанным, либо через 30 дней сгинуть в небытиё.
Чтобы корзина могла подчищать себя от старых писем месячной давности, нажмём на неё правой кнопкой мыши и в свойствах укажем:
- [√] Срок хранения писем (дней) [30]
- [√] Удалить старые письма
Обработка отправленных и прочитанных писем.
Здесь, в основном, сосредоточены обслуживающие фильтры, без которых, однако, очень трудно обойтись. Фильтр № 7 удаляет уведомления, которые мы разослали неизвестным адресатам. Оригиналы писем от незнакомцев пролежат в корзине 30 дней, а сами уведомления нам не нужны, т.к. они только захламят папку “Отправленные” или корзину.
Фильтр № 7.
- Выделяем ящик pupkin@mailserver.ru
- Меню [Ящик / Настройка сортировщика писем]
- Выделяем правило сортировки [Отправленные письма]
- Кнопка [Создать]
- Вкладка [Правила]
- Название фильтра “Удаление извещения неизвестному адресату”
- Переместить письмо в папку:
[Корзина] - Сигнальные строки:
Строки | Наличие | Где |
456123 | Текст | Да |
автоответчик | Текст | Да |
Если все эти признаки будут найдены в отправленном письме, то это письмо и есть уведомление неизвестному адресату, именно оно удаляется после отправки за ненадобностью.
- Вкладка [Действия]
- [√] Удалить письмо
- Остальные пункты оставляем по умолчанию
- Кнопка [Закрыть] – закрывает сортировщик и сохраняет введённый фильтр
Представим себе ситуацию, когда найдётся несколько спамеров, имеющие реальный обратный адрес, которые наберут наш код в теме своего очередного рекламного сообщения. Не менять же нам код ради нескольких выскочек! Я, например, вообще не собираюсь менять код, который установил полгода назад. Просто нужно переместить их адреса из _Шлюза в _Сортир и в стоп-лист, а присланное спам-сообщение выбросить в корзину. А ещё лучше завести специальный фильтр № 8 “Обработка спама”, который всё сделает сам.
Фильтр № 8.
- Выделяем ящик pupkin@mailserver.ru
- Меню [Ящик / Настройка сортировщика писем]
- Выделяем правило сортировки [Прочитанные письма]
- Кнопка [Создать]
- Вкладка [Правила]
- Название фильтра “Обработка спама”
- Переместить письмо в папку:
[Корзина] - Правило
[√] Активно
[√] Ручное - Вкладка [Действия]
- [√] Пометить письмо как прочитанное
- [√] Добавить адрес(а) в адресную книгу Элементы: [Отправитель От] Добавить в группы: [_Сортир]
- [√] Удалить адреса из адресной книги: Элементы: [Отправитель (От)]
- Из групп:[_Отстойник+_Шлюз]
- [√] Экспортировать письмо в файл
C:spam.txt
Формат [Текст] - Добавить к существующему файлу
- Кнопка [Шаблон] - вставляем в редакторе шаблонов текст:
%OFROMADDR %Cursor - Кнопка [Ok] – сохраняем шаблон и возвращаемся в сортировщик писем
- Вкладка [Свойства]
- [√] Применить правило к выбранному письму при нажатии:
[ Ctrl + Ё ] [√] Это правило исполняется только при нажатии - Остальные пункты оставляем по умолчанию
- Кнопка [Закрыть] – закрывает сортировщик и сохраняет введённый фильтр
Теперь всё просто – выделяем письмо “прорвавшегося” спамера и Ctrl+Ё его :)))
Обработка почты на сервере.
Это примерно от 40 до 80% входящего почтового трафика. Совсем не хило, если прямо на сервере в почтовом ящике испаряется такое количество спама. А всё дело в том, что есть стандарт RFC-822, который определяет, какие поля обязательно должны присутствовать в заголовке почтового сообщения. И все почтовые клиенты и web-службы соблюдают этот стандарт. Так, например, в заголовке письма должны быть поля "Date:" (дата и время создания письма), "From:" (от кого), "To:" (кому), "Subject:" (тема),"Message-ID:" (идентификатор сообщения) и необязательные с префиксом "X-": X-Mailer (почтовый клиент) и др. В полях From и To должны быть email-адреса вида “username@servername.dom”, причём в поле To – ваш адрес.
Спамерским роботам эти правила по барабану. Они могут записать туда что угодно или вообще проигнорировать эти поля. Вот по их глупости не следовать стандарту и можно отличить спам от обычного письма.
Увидеть заголовок письма в The Bat! можно, нажав меню [Вид / Показывать заголовки (RFC-822)].
Для обработки почты на сервере в The Bat! используется правило сортировки “Выборочное скачивание”. Вся прелесть этого правила состоит в том, что оно срабатывает первым, и удаляет письма без скачивания непосредственно на сервере.
Сначала на компьютер пользователя скачивается список заголовков писем, лежащих на сервере. Фильтрация осуществляется на основе наличия или отсутствия полей или какого-то текста в этик полях заголовка письма, в результате чего можно определить, какие письма являются 100% спамом. Затем все нежелательные сообщения удаляются с сервера, а оставшиеся скачиваются на машину пользователя и передаются для дальнейшей обработки фильтрам правила “Входящая почта”.
Фильтр № 9 удалит письма, у которых в поле From отсутствует email-адрес. Как известно, email-адрес должен обязательно содержать символы “@” и “.” (точку). Если эти символы отсутствуют, значит в поле From нет email-адреса.
Фильтр № 9.
- Выделяем ящик pupkin@mailserver.ru
- Меню [Ящик / Настройка сортировщика писем]
- Выделяем правило сортировки [Выборочное скачивание]
- Кнопка [Создать]
- Вкладка [Правила]
- Название фильтра “Без отправителя”
- Определять по
- Сигнальные строки
@
. - Правило
[√] Активно - Вкладка [Дополнительно]
- Действие
- Метод определения
- Хотя бы одна строка не должна быть найдена
- Остальные пункты оставляем по умолчанию
- Кнопка [Закрыть] – закрывает сортировщик и сохраняет введённый фильтр
Следующий фильтр удалит письма, у которых в поле From стоит Ваш адрес. Это излюбленный приём спамеров, имитировать Вас в качестве отправителя письма Вам же. Писать самому себе с точки зрения пользователя бессмысленно, кроме случая тестирования своего собственного ящика.
Фильтр № 10.
- Выделяем ящик pupkin@mailserver.ru
- Меню [Ящик / Настройка сортировщика писем]
- Выделяем правило сортировки [Выборочное скачивание]
- Кнопка [Создать]
- Вкладка [Правила]
- Название фильтра “От меня”
- Определять по
- Сигнальные строки
pupkin@mailserver.ru - Правило
[√] Активно - Вкладка [Дополнительно]
- Действие
- Метод определения
- Остальные пункты оставляем по умолчанию
- Кнопка [Закрыть] – закрывает сортировщик и сохраняет введённый фильтр
Ещё один любимый спамерский приём – в поле To (кому) ставить любой вымышленный, но не Ваш адрес. Такие письма отсечёт фильтр № 11 “Не мне”.
Фильтр № 11.
- Выделяем ящик pupkin@mailserver.ru
- Меню [Ящик / Настройка сортировщика писем]
- Выделяем правило сортировки [Выборочное скачивание]
- Кнопка [Создать]
- Вкладка [Правила]
- Название фильтра “Не мне”
- Определять по
- Сигнальные строки
pupkin@mailserver.ru - Правило
[√] Активно - Вкладка [Дополнительно]
- Действие
- Метод определения
- Ни одна из строк не должна быть найдена
- Остальные пункты оставляем по умолчанию
- Кнопка [Закрыть] – закрывает сортировщик и сохраняет введённый фильтр
Здесь следует отметить, что если Ваш ящик pupkin@mailserver.ru используется для сбора почты с других адресов, то в фильтре № 11 в сигнальных строках (п. 8) нужно перечислить все адреса, с которых осуществляется пересылка на Ваш ящик.
Следующий фильтр удалит письма, не соответствующие стандарту RFC-822 и не содержащие одно из обязательных полей в заголовке письма (From, To, Subject, Date, Message-ID), а при жёстком подходе и некоторых необязательных полей (X-Mailer и др.).
Фильтр № 12.
- Выделяем ящик pupkin@mailserver.ru
- Меню [Ящик / Настройка сортировщика писем]
- Выделяем правило сортировки [Выборочное скачивание]
- Кнопка [Создать]
- Вкладка [Правила]
- Название фильтра “Нет полей в заголовке RFC-822”
- Определять по
- Сигнальные строки
Date:
From:
To:
Subject: - Правило
[√] Активно - Вкладка [Дополнительно]
- Действие
- Метод определения
- Хотя бы одна строка не должна быть найдена
- Остальные пункты оставляем по умолчанию
- Кнопка [Закрыть] – закрывает сортировщик и сохраняет введённый фильтр
Более жёстко этот фильтр будет работать и, соответственно, больше спама убьёт на сервере, если в сигнальные строки добавить поля "Message-ID:" и "X-Mailer:". Но при этом нужно иметь в виду, что он также удалит сообщения MAILER-DAEMON, у которых нет в заголовке хотя бы одного из этих полей.
Поле Message-ID (идентификатор письма) обязательно должно присутствовать в заголовке письма и практически все почтовые клиенты и почтовые web-сервисы следуют этому правилу. Исключение составляют спец. сообщения, например, те же MAILER-DAEMON некоторых почтовых серверов.
Поле “X-Mailler:” ставится практически всеми почтовыми клиентами и известными мне почтовыми web-службами, хотя является необязательным с точки зрения стандарта RFC-822 (начинается с префикса X-). Некоторые зарубежные почтовые серверы вместо поля X-Mailer пишут X-Sender или X-SenderIP, поэтому существует небольшая вероятность блокирования полезных писем.
Прежде чем принимать решение включать или не включать поля Message-ID и X-Mailer, нужно изучить заголовки приходящих к Вам писем. В Бате увидеть заголовок письма можно, нажав меню [Вид / Показать заголовки (RFC-822)]. И руководствоваться надо принципами “Не навреди”, “Семь раз отмерь и один раз отрежь”. Но лучше перестраховаться и согласиться на некоторое увеличение входящего трафика, чем потерять хотя бы одно полезное письмо.
Ещё один фильтр, названный мной “Паранойя”, помогает “зарубить” много спама на сервере благодаря тому, что спамеры в заголовке письма в строке получателя пишут:
To: pupkin
Напишет ли такое имя Ваш друг или знакомый? Вряд ли. Скорее всего, он напишет так:
To: Вася Пупкин
Описать строку вида “To: pupkin ” можно с помощью регулярных выражений. Такой строке соответствует следующее регулярное выражение:
To:s[Pp]upkins
В результате фильтр “Паранойя” будет выглядеть таким образом:
Фильтр № 13.
- Выделяем ящик pupkin@mailserver.ru
- Меню [Ящик / Настройка сортировщика писем]
- Выделяем правило сортировки [Выборочное скачивание]
- Кнопка [Создать]
- Вкладка [Правила]
- Название фильтра “Паранойя”
- Определять по
- Сигнальные строки
To:s[Pp]upkins
To:sPUPKINs - Правило
[√] Активно - Вкладка [Дополнительно]
- Действие
- Метод определения
- Любая строка как регулярное выражение
- Остальные пункты оставляем по умолчанию
- Кнопка [Закрыть] – закрывает сортировщик и сохраняет введённый фильтр
И, наконец, последним идёт фильтр, который рубит на сервере письма “прорвавшихся” спамеров. Он “берёт” сигнальные строки из текстового файла "spam.txt". Это и есть неоднократно упоминавшийся в этой статье стоп-лист. Откуда же берутся email-адреса в файле "spam.txt"? Их туда добавляет:
- во-первых, фильтр № 2, который выковыривает их из MAILER-DAEMON (несуществующие адреса спамеров);
- во-вторых, ручной фильтр № 8 при нажатии комбинации клавиш (в нашем случае Ctrl+Ё) для писем спамеров, набравших наш код;
- в-третьих, фильтр № 5 для адресатов из _Сортира (повторные письма от “прорвавшихся” спамеров).
Фильтр № 14.
- Выделяем ящик pupkin@mailserver.ru
- Меню [Ящик / Настройка сортировщика писем]
- Выделяем правило сортировки [Выборочное скачивание]
- Кнопка [Создать]
- Вкладка [Правила]
- Название фильтра “Стоп-лист”
- Определять по
- Правило
[√] Активно - Вкладка [Дополнительно]
- Действие
- Метод определения
- [√] Прочитать сигнальные строки из файла
C:spam.txt - Остальные пункты оставляем по умолчанию
- Кнопка [Закрыть] – закрывает сортировщик и сохраняет введённый фильтр
Пользуясь этими фильтрами, не забывайте внести в свою адресную книгу нового адресата, которому пишете впервые, чтобы ему не пришлось автоотвечать на Ваше уведомление или лишний раз писать Вам повторное письмо с Вашим кодом в теме.
Мягкая система фильтров.
Описанная выше жёсткая система фильтров требует от нового отправителя письма автоотвечать на присланные ему уведомления либо добавлять Ваш код в тему нового письма, чтобы его письмо было Вами прочитано. Такая конструкция не всегда приемлема для служебного использования, потому что в реальной деловой жизни потеря оперативности (а ещё хуже самого контакта) не допустима по различным мотивам (экономическим, этическим, временным).
Например, жёсткая схема не подходит любой фирме, ожидающей новых клиентов. Или Вам должен придти по мылу счёт на оплату Вашего заказа с неизвестного адреса, который возможно генерируется скриптом web-магазина. Или вышестоящая организация должна сообщить Вам важную информацию (там могут не понять, если получат уведомление, запрашивающее подтверждение переписки :). Или завтра рецензент должен с неизвестного адреса прислать рецензию на Ваш диплом, который Вы защищаете послезавтра.
Для решения этой проблемы надо в описанной здесь схеме фильтров отключить все фильтры, требующие подтверждения переписки. Цена этого – упрощённая система фильтров будет пропускать небольшое количество спама.
Для служебного пользования кастрируем приведённую схему:
- в "мягкой" схеме оставим только фильтры № 8 -- 14;
- удалим или отключим фильтры № 1 -- 7;
- в фильтре № 8 исключим пункты 11 и 12;
- из адресной книги удалим группы _Отстойник, _Шлюз и _Сортир.
Всё, теперь никаких подтверждений и практически вся работа по отсечению спама ложится на правило "Выборочное скачивание". По-прежнему удаляем спам-сообщения комбинацией клавиш Ctrl+Ё. Теперь все спамерские email-адреса, в том числе и несущественные.