Борьба Со Спамом На Хостинге. Настройка Бесплатного Спам-/Антивирусного Фильтра Проекта Efa



Борьба со спамом на хостинге.
</p><p>
 Настройка бесплатного спам-/антивирусного фильтра проекта EFA

В этой статье, как и было обещано , мы хотели бы поделиться своим опытом борьбы со спамом.

Известно, что любая причина имеет следствие.

Эта фраза выражает одну из философских форм связи явлений.

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

Как бы то ни было, проблему нужно было решить.

Они не любят спам.

Спам оставляет «черное пятно» на лице провайдера, когда его IP-адреса заносятся в черный список, что затрагивает всех клиентов.

Удаление IP из черных списков – другое дело.

Но это одна сторона медали.

Хотя восстановить репутацию IP-адреса можно, восстановить репутацию и доверие компании гораздо сложнее.

Мы решили найти решение и внедрить в структуру Unihost комплекс защиты и предотвращения нежелательных рассылок.

После мозгового штурма и обсуждений мы начали проверять и сравнивать то, что может предложить сообщество СПАМ/АВ.

На рынке есть много вариантов.

Однако большинство качественных решений оплачиваются по тарифу 1 лицензия на 1 сервер или даже за количество исходящих/входящих писем, что приведет к повышению цен на тарифы.

Поэтому мы выбирали только среди opensource.



Популярные решения для борьбы со спамом с открытым исходным кодом



Расспамд

Подходит для систем различных размеров.

Может интегрироваться с различными MTA (в документации описаны Exim, Postfix, Sendmail и Haraka) или работать в режиме SMTP-прокси.

Система оценки сообщений такая же, как и в SpamAssassin, в частности на основе различных факторов: регулярные выражения, черные списки DNS, белые, серые, черные списки, SPF, DKIM, статистика, нечеткие хеши и прочее - только в работе используются другие алгоритмы.

.

Rspamd поддерживает расширение с помощью плагинов.



Apache SpamAssassin

SA получила известность благодаря использованию технологии байесовской фильтрации.

Каждое сообщение при прохождении тестов получает определенный балл и при достижении порога помещается в спам.

Легко интегрируется практически с любым почтовым сервисом.

В SA доступны популярные технологии, которые можно подключить в виде плагинов: DNSBL, SPF, DKIM, URIBL, SURBL, PSBL, Razor, RelayCountry, автоматический белый список (AWL) и другие.

Установка в целом не представляет сложности.

После установки SpamAssassin требуется тонкая настройка параметров и обучение работе со спамом.



АССП

Прокси-сервер SMTP для конкретной платформы, который принимает сообщения перед MTA и анализирует их на наличие спама.

Поддерживаются все популярные технологии: белые и серые списки, байесовский фильтр, DNSBL, DNSWL, URIBL, SPF, DKIM, SRS, проверка на вирусы (с помощью ClamAV), блокировка или замена вложений и многое другое.

Обнаруживается спам и изображения в кодировке MIME (с использованием Tesseract).

Возможности расширяются с помощью модулей.

Проектная документация не всегда понятна, а инструкции зачастую устарели, но при наличии некоторого опыта разобраться можно.



MailScanner

MailScanner — комплексное решение для борьбы с фишинговыми письмами и проверки почты на вирусы и спам.

Он анализирует содержимое письма, блокирует атаки, направленные на почтовые клиенты и HTML-теги, проверяет вложения (запрещенные расширения, двойные расширения, зашифрованные архивы и т. д.), контролирует подделку адресов в письмах и многое другое.

MailScanner легко интегрируется с любым MTA; он поставляется с готовыми файлами конфигурации.

Помимо собственных разработок, он может использовать сторонние решения.

SpamAssassin можно использовать для проверки на спам.



EFA-проект

Есть еще один проект с открытым исходным кодом — «eFa-project» — Email Filter Appliance. EFA изначально разрабатывался как виртуальное устройство для работы на Vmware или HyperV. Программа использует готовые пакеты MailScanner, Postfix, SpamAssasin (весь список ниже) для борьбы со спамом и вирусами, и они уже установлены и настроены для корректной работы в вм.

Это значит, что вам не нужны костыли – все работает «из коробки».

EFA включает в себя следующие компоненты: Действует как MTA (агент по передаче почты) Постфикс — надежный, быстрый, проверенный годами; Ядро спам-фильтра - MailScanner — плечом к плечу с антивирусами, они принимают на себя весь удар; Спам-фильтр - Спам-убийца — определяет спам-сообщения.

Платформа включает в себя множество систем оценки, MTA и наборов регулярных выражений; КламАВ - антивирус, работающий с MailScanner; MailWatch — удобный веб-интерфейс для работы с MailScanner и другими приложениями; Контент-фильтр - ДКК — определяет массовую рассылку путем отправки хеш-суммы тела письма на специальный сервер, который в свою очередь выдает ответ в виде количества полученных хэшей.

Если число превышает порог баллов = 6, письмо считается спамом; Пызор И Бритва — помочь SpamAssassin более точно распознавать спам с помощью сетей обнаружения спама; Для серого списка используется SQLгрей — сервис постфиксной политики, позволяющий уменьшить количество спама, принимаемого получателями; Модуль используется для распознавания изображений ИзображениеЦебер — идентифицирует порноизображения и т. д. Мы выбрали EFA, потому что проект включает в себя все лучшие функции вышеперечисленных.

К тому же наши администраторы уже имели некоторый опыт работы с ним, поэтому выбрали EFA. Перейдем к описанию установки.



Установка и последующая настройка EFA

Мы решили установить на VPS с чистой CentOS 6.8 x64, которая выполняет роль ретрансляционного сервера.

Прежде всего вам необходимо обновить все системные утилиты и компоненты до последних версий, доступных в репозиториях.

Для этого используем команду:

  
  
  
  
  
  
   

yum -y update

Затем установите утилиты wget и screen, если они не были установлены:

yum -y install wget screen

После этого скачайте скрипт, который установит EFA:

wget https://raw.githubusercontent.com/E-F-A/v3/master/build/prepare-build-without-ks.bash

Даём скрипту права на выполнение:

chmod +x .

/prepare-build-without-ks.bash

Экран запуска:

screen

И запустите скрипт:

.

/prepare-build-without-ks.bash

Теперь вы можете свернуть наш экран с помощью комбинации Ctrl+A+D. После установки вам необходимо повторно войти на сервер через ssh, используя свои первые данные для входа.

Это необходимо для запуска сценария инициализации и первоначальной настройки EFA. После входа в систему система предложит вам ответить на несколько вопросов для настройки EFA. Список вопросов следующий:

Функция Свойство
Имя хоста Указывается имя хоста машины
Доменное имя Домен, к которому принадлежит машина.

В сочетании с именем хоста вы получаете полное доменное имя сервера.

Админпочта Почтовый ящик администратора, куда будут поступать письма от самой системы (доступные обновления, различные отчеты и т.д.)
Почтмейстерэлектронная почта Почтовый ящик человека, который будет получать почту, связанную с MTA.
айпи адрес IP-адрес машины
Сетевая маска Маска
Шлюз по умолчанию шлюз
Первичный DNS Основной DNS-сервер
Вторичный DNS Вторичный DNS-сервер
Локальный пользователь Вход локального администратора.

Используется для входа в систему и веб-интерфейс MailWatch.

Пароль локального пользователя Пароль
Корневой пароль Пароль для пользователя root
Инструменты VMware Будет отображаться только в том случае, если установка происходит на виртуальной машине под управлением VMware. Требуется установить инструменты для работы с VMware.
Время по всемирному координированному времени Если ваш компьютер находится в часовом поясе UTC, необходимо выбрать Да.

Часовой пояс Здесь вы можете выбрать другой часовой пояс, отличный от UTC.
Раскладка клавиатуры Раскладка клавиатуры, которая будет использоваться в системе
Код IANA Здесь указывается код страны, в которой находится автомобиль.

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

Ваш почтовый сервер Индивидуальный параметр.

Используется, если EFA также работает для получения писем.

Название вашей организации Название организации.

Используется для заголовков буквами.

Автоматические обновления Политика автоматического обновления настроена.

По умолчанию отключено.

В этом случае автоматических обновлений не будет, но уведомления о доступных обновлениях будут приходить на почту администратора.

После такой анкеты отображается весь список ответов.

Если что-то необходимо изменить, наберите номер вопроса и введите новые данные.

Когда вы будете готовы двигаться дальше, введите ОК и нажмите Enter. Система начнет процесс автонастройки.



Борьба со спамом на хостинге.
</p><p>
 Настройка бесплатного спам-/антивирусного фильтра проекта EFA

По завершении настройки система перезагрузится и будет в полной боевой готовности.

При следующем входе по ssh сразу появится меню конфигурации EFA. В этом меню доступно множество полезных действий:

  • Перезагрузка/выключение системы;
  • Изменение параметров сети;
  • Настройка MailScanner;
  • Включить/отключить серый список;
  • Включить/отключить автообновление;
  • Настройка системы в качестве сервера исходящей ретрансляции;
  • Изменение почтового ящика Adminemail;
  • Добавление/удаление почтовых доменов;
  • Изменение настроек спам-фильтра;
  • Восстановление базы данных MySQL в случае повреждения из-за аварийного завершения работы.

Это список основных параметров EFA, которые нельзя редактировать через веб-интерфейс MailWatch. Поэтому полезно знать, где их найти.



Ручная настройка EFA

Мы пошли по сложному, но более гибкому пути.

EFA настраивалась не через интерактивное меню, а через файлы конфигурации.

Нам хотелось не только все настроить, но и разобраться во всех компонентах и понять, что и как работает. Первым делом в файле main.cf настроек постфикса мы добавили mynetworks, из которых принимались соединения по SMTP. Затем устанавливаем ограничения на запросы helo, отправителей, получателей и указываемые пути к картам с политиками ACCEPT или REJECT при соблюдении определенных условий.

Кроме того, inet_protocols был изменен на ipv4, чтобы исключить соединения ipv6. Затем мы изменили политику действий со спамом на «Хранить» в файле конфигурации /etc/MailScanner/MailScanner.conf. Это означает, что если письмо будет признано спамом, оно будет помещено в карантин.

Это помогает в дальнейшем обучении SpamAssassin. После этих настроек мы столкнулись с первой проблемой.

Нас засыпали тысячами писем от получателей [email protected], [email protected], [email protected] и т. д. Получатели были похожи.

Также мы получали письма, отправленные MAILER-DAEMON, то есть фактически без отправителя.

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

Мы решили ОТКЛОНЯТЬ подобные письма, используя стандартный функционал карточек Postfix: helo_access, получателя_доступа, отправителя_доступа.

Сейчас вредные получатели и им подобные начали успешно ОТКЛОНЯТЬ.

А те письма, которые отправлял MAILER-DAEMON, фильтруются helo-запросами.

Когда очередь очистилась и наши нервы успокоились, мы приступили к настройке SpamAssassin.

Обучение SpamAssassin

Обучение SpamAssassin проводится на письмах, которые уже попали в спам.

Есть два способа сделать это.



Через веб-интерфейс

Первый способ — через веб-интерфейс MailWatch. В каждом письме можно увидеть заголовки, тело, а также оценку по алгоритму Байеса и другим показателям.

Это выглядит так:

Счет Правило соответствия Описание
-0.02 ШИЛО Скорректированная оценка репутации AWL: От: адрес.

0.80 БАЙЕС_50 Вероятность байесовского спама составляет от 40 до 60 %.

0.90 DKIM_ADSP_NXDOMAIN Нет действительной подписи автора и домена нет в DNS.
0.00 HTML_MESSAGE HTML включен в сообщение
1.00 KAM_LAZY_DOMAIN_SECURITY Домен-отправитель не имеет методов защиты от подделки.

0.00 NO_DNS_FOR_FROM У отправителя конверта нет записей MX или A DNS.
0.79 RDNS_NONE Доставлено во внутреннюю сеть хостом без rDNS.
2.00 TO_NO_BRKTS_HTML_IMG Кому: не хватает скобок, HTML и одного изображения.

0.00 WEIRD_PORT Использует нестандартный номер порта для HTTP
Открыв письмо, вы можете поставить галочку «SA Learn» и выбрать одно из нескольких действий:
  • As Ham – пометить письмо как чистое (обучение алгоритма Байеса);
  • As Spam – пометить письмо как спам (обучение алгоритма Байеса);
  • Забыть – пропустить письмо;
  • Как Spam+Report - пометить письмо как спам и отправить информацию о нем в спам-сеть (razor+pyzor);
  • Как Ham+Revoke - пометить письмо как чистое и отправить информацию о нем в сеть обнаружения спама (razor+pyzor).



Через консоль

Это делается просто.

Команда выглядит следующим образом:

sa-learn --ham /20170224/spam/0DC5B48D4.A739D

В этой команде письмо с ID: 0DC5B48D4.A739D, которое находится в архиве спам-писем за определённую дату /20170224/spam/, помечается как чистое (не спам).



bash--ham

.

Бытует мнение, что SpamAssassin достаточно обучить только эффективной фильтрации почты.

Мы решили обучить SpamAssassin, передавая ему абсолютно все электронные письма, как чистые, так и спам.

Кроме того, мы нашли базу спам-писем и оставили SA на растерзание.

Это обучение помогло более точно откалибровать байесовский алгоритм.

В результате фильтрация становится намного эффективнее.

Такое обучение мы проводим, когда почтовый трафик не очень велик, чтобы успеть проанализировать и отловить максимальное количество писем.

Чтобы SpamAssassin начал работать на полную мощность, на старте ему необходимо передать около 1000 различных писем.

Так что наберитесь терпения и приступайте к тренировкам.




О полной победе над спамом говорить пока рано.

Однако сейчас количество жалоб на спам с наших серверов равно нулю.

Подробнее о самом процессе обучения мы сейчас говорить не будем — не хочу раскрывать все тонкости.

Хотя, если поковыряться в настройках, разобраться не сложно.

P.S.: Эта статья не панацея.

Мы просто решили поделиться с вами одним из наших методов борьбы со спамом.

Всего доброго и да пребудет с вами ветчина! :) Теги: #Хостинг #Системное администрирование #Администрирование сервера #Конфигурация Linux #Спам и антиспам #спам #администрирование #efa

Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.