Антиспам-фильтр LOB для Exchange 2003

Как вы наверное знаете, неудобства – тоже один из двигателей прогресса. И неудовлетворенность текущим состоянием дел сподвигает светлые умы всех времен на улучшение того что нас окружает.

No spam! Так, мой друг Алексей Лобанов, системный администратор и талантливый инженер однажды задался идеей некоторой модернизации и доработки антиспам механизмов для Exchange Server 2003.

“Что сподвигло меня на написание своего скрипта – спам одолел меня окончательно. Как показала статистика, можно до потери пульса придумывать контент-фильтры, а спам в будет сыпатся с поддельных адресов. Встроенные средтва Exchange работают не так как хочется, сторонние продукты либо не имеют нужного мне функционала, либо просто дорогие, при этом глючные продукты. Например, взять технологию Sender ID- в Exchange она есть, но нет защиты от дурака, например, в зоне mail.ru можно увидеть такую запись: v=spf1 ip4:194.67.57.0/24 ip4:194.67.23.0/24 ip4:194.67.45.0/24 ~all. Здесь нет пометки PTR, поэтому для mail.ru технология не работает.”

Скрипт был опробован нами и действительно показывает неплохие результаты.

“Антиспам LOB – это фильр, встраеваемый в транспорт SMTP
Использует SPF технологию и личные наработки
Пишет информацию обо всех письмах в EventLog.

Для корректной работы механизма, SMTP-сервер должен быть “фронтовым” и иметь публичный адрес (т.е. перед ним не должно стоять релеев).
Механизм опробован и годен для Exchange 2000, Exchange Server 2003 или SMTP-relay (IIS)”
Алексей Лобанов, 2008.

Недавно Алексей в очередной раз улучшил скрипт,
и перед вами представлена его новая версия Antispam LOB v3.1
Antispam LOB
Version History
v 3.0 – Экономит трафик – не делает доставку самого письма
– Пишет отчеты в EventLog
v 3.1 – добавлен счетчик статистики спама (пропущено, отсеяно, в процентах)

 

Вопросы по функциональности – к автору: Алексей Лобанов A.Lobanov (#) mail . ru

 

Пробуйте, дамы и господа!

41 thoughts on “Антиспам-фильтр LOB для Exchange 2003”

  1. вот такой вопрос – “Для корректной работы механизма, SMTP-сервер должен быть “фронтовым” и иметь публичный адрес (т.е. перед ним не должно стоять релеев).” , у меня SMTP опубликован на цыске, то есть внешний мир обращается к нему по рутабельному адресу, а в локальной сети он ессно имеет 192.168.х.х и стоит за той самой цыской. Стоит ли мне пробывать решение Алексея в текущем окружении, или выносить релей в космос? Спасибо.

  2. В принципе, мы подозревали, что обычно, организации защищают свои почтовые front- сервера фаерволлами, это нормальное явление, и вы не исключение. То, что требуется в описании фильтра – это чтобы перед вашим Exchange Server 2003, не стояло бы каких-нибудь пингвинов или IIS, с функциями релея, принимающих почту самостоятельно, для последующей передачи вашему почтовику.
    Так что все нормально, можете применять (но сначала в тестовой среде разумеется). Успехов!

  3. Пользуюсь грейлистингом, реализация – JEPS (Proxmea). Эффективно и дешево. Но и Ваше решение посмотрю.

  4. To tester:
    публикацией на Cisco не занимался, поэтому не подскажу какой командой задавать настройку, а у меня стоит ISA 2004, в правиле публикации на вкладке To должна быть галка:
    Requests appear to come from the original client

  5. To Andrey A Dengin:
    Кстати GrayList фильтр реализован в Exchange Server 2007 штатными средствами. Есть такой Sender Reputation Filter, который по праву может называться “intelligent”, и который на основании ряда тестов, и плохой или хорошей “кармы” отправителя в целом 😉 – может загонять его в stop list на 24 часа по умолчанию.

  6. to Jim:

    меня не смущает публикация релея, меня смутило “Для корректной работы механизма, SMTP-сервер должен быть “фронтовым” и иметь публичный адрес (т.е. перед ним не должно стоять релеев).”

    Теперь я думаю, что корректнее оставить “должен быть фронтовым”, без публичной адресации 😉

  7. To tester:
    🙂
    главное что все правильно поняли.

    To All:
    Ну что, кто-нибудь еще попробовал фильтр? Отзывы? Предложения? Комментарии?

  8. Фильтр обновился!
    v 3.1
    – добавлен счетчик статистики спама (пропущено, отсеяно, в процентах)

  9. to Maxim
    /*Кстати GrayList фильтр реализован в Exchange Server 2007 штатными средствами. Есть такой Sender Reputation Filter, который по праву может называться “intelligent”, и который на основании ряда тестов, и плохой или хорошей */

    А поподробней нельзя? 🙂 или подскажите ссылкой где посмотреть

    1. Sender Reputation Filter.
      Стандартный антиспам фильтр Exchange Server 2007. Выполняет функцию не совсем gray-list, а скорее “стоп-листа”.
      На протяжение всего времени работы Exchange Server, SRF учитывает особенности доставки писем от ВСЕХ (внешних) отправителей, с которыми имеет дело transport pipe Exchange’а. Учитываются условия приема, интенсивность засылки, реакция всех прочих антиспам фильтров на отправителя, IP адрес его MTA, содержимое писем, частота блокировки писем с этого (IP/mail) адреса и т.п. В этоже время формируется рейтинг каждого отправителя, SRL – Sender Reputation Level.
      Администратор выставляет пороговое значение доверия по 9ти-бальной шкале, после превышения которого отправителем, его IP адрес заносится в IP block list в соседнем Connection Filter. Но не навсегда, только на 24 часа.
      Так что спамер имеет все шансы быстро испортить себе карму у Exchange Server’a и перманентно не вылезать из IP block list’а.

  10. Уговорили 😉 будет поподробней, прямо здесь, отдельным постом.

  11. А что в ISA делает опция “Requests appear to come from the original client”.
    Если Exchange опубликован не через ISA, какие дополнительные опции нужны для NAT?

    1. “Requests appear to come from the original client” (Представить запрос, идущим от оригинального клиента) — IP адрес, с которого приходит запрос, будет оригинальный, клиентский. Некоторые приложения требуют определенной идентификации реального, запрашивающего клиента. Эта опция позволяет, при публикаци приложений, ISA серверу представлять реальный IP адрес запрашивающего клиента (источника).
      Некоторые приложения могут требовать идентификации запрашивающего клиента. При публикации таких приложений, следует выбирать опцию “Requests appear to come from the original client option”.
      При использовании вышеозначенной опции, ISA Server должен быть настроен в качестве шлюза для публикуемого сервера.
      В противном случае, ISA Server может быть настроен как шлюз по умолчанию для самого оригинального клиента (но это не всегда применимо).
      При включении опции “Requests appear to come from the ISA Server” (Запросы представляются IP-адресом ISA сервера) – ISA заменяет IP-fадрс клиента источника своим. Таким образом, пакеты отправленные внутреннему серверу как бы происходят от самого сервера ISA. Это позволяет упростить конфигурацию маршрутизации IP пакетов обратно к ISA (для передачи обратно клиенту) в крупных сетях. Затем, ISA Server может использовать NAT для отсылки ответов обратно исходному клиенту.
      Опция “Requests appear to come from the ISA Server computer” работает только если опубликованный протокол (приложение) не требоует Фильтров приложений (application filter). Другими словами, фича работает корректно, если (клиенту) не требуется создавать вторичного подключения. Исключение из этого правила составляют публикация FTP и RPC сервисов, в которых используются фильтры приложений. Фильтры приложений для FTP и RPC поддерживают опцию “Requests appear to come from the ISA Server computer”.
      При использовании NLB на внешнем интерфейсе ISA сервера, трансляция адреса клиента-источника позволяет корректно публиковать сервисы. Без этого, публикация серверов, совместно с применением NLB на внешних интерфейсах ISA – не поддерживается.
      (После нажатия “Apply”, в панели деталей, политика обновляется. Новая политика применяется только к новым подключениям.
      Так-то.

  12. Посоветовали ваш блог. Не зря. Приглянулось. Буду постоянным посетителем и подпишусь на RSS

  13. Автор молодец! Тема почти раскрыта. Приглашаю почитать мою статью о авиалегкобыстром автомобиле будущего

    1. у меня не бывает “почти раскрытых тем”, я все добиваю до конца 😉
      А самый клевый “авиа-легкий-быстрый” автомобиль у меня уже есть 😈

  14. мдяяяя ….. *много думал*…. автору спасибо за пост !!

  15. Добрый день. Хотелось бы узнать перед тем как ставить скрипт, по какому принципу он работает и что делает в общих чертах. Каким образом сервер понимает, что письмо является спамом. Заранее спасибо.

  16. Что-то не слишком часто автор блога посещает данный сайт. 🙂 Пока в поиске бесплатных решений антиспам контроля на сервере Ех2003. Сам программер, но по совместительству админ. Будет время займусь изучением кода прежде чем эксперементировать на еле живом серваке. 🙂

    1. Автор блога – много работает (чему подтверждение на фото несколькими комментами выше), а в блог пишет бесплатно. И автор только что вернулся с проекта по внедрению Exchange Server, в ферме, размерами больше чем вы видели за всю жизнь поштучно.
      А бесплатный сыр бывает только в мышеловке. Работать в конторе, которая сама себе не может купить нормальный антиспам-инструмент – себя не уважать. “Пилите, Шура, они золотые!” 😀

  17. Хороший пост! Подчерпнул для себя много нового и интересного!
    Пойду ссылку другу дам в аське 🙂

  18. А если на ексчне 5 внешних доменов крутится – какой в настроки вписывать ? ))

  19. Блин, как всегда, интересно читать! спасибо)

Comments are closed.