Боремся с вирусами и спамом с помощью MPP::Журнал СА 2.2007
www.samag.ru
     
Поиск   
              
 www.samag.ru    Web  0 товаров , сумма 0 руб.
E-mail
Пароль  
 Запомнить меня
Регистрация | Забыли пароль?
Журнал "Системный администратор"
Журнал «БИТ»
Наука и технологии
Подписка
Где купить
Авторам
Рекламодателям
Магазин
Архив номеров
Вакансии
Контакты
   

  Опросы

Какие курсы вы бы выбрали для себя?  

Очные
Онлайновые
Платные
Бесплатные
Я и так все знаю

 Читать далее...

1001 и 1 книга  
20.12.2019г.
Просмотров: 5466
Комментарии: 0
Dr.Web: всё под контролем

 Читать далее...

04.12.2019г.
Просмотров: 6643
Комментарии: 1
Особенности сертификаций по этичному хакингу

 Читать далее...

28.05.2019г.
Просмотров: 7926
Комментарии: 2
Анализ вредоносных программ

 Читать далее...

28.05.2019г.
Просмотров: 8216
Комментарии: 2
Микросервисы и контейнеры Docker

 Читать далее...

28.05.2019г.
Просмотров: 7210
Комментарии: 0
Django 2 в примерах

 Читать далее...

Друзья сайта  

Форум системных администраторов  

sysadmins.ru

 Боремся с вирусами и спамом с помощью MPP

Архив номеров / 2007 / Выпуск №2 (51) / Боремся с вирусами и спамом с помощью MPP

Рубрика: Безопасность /  Электронная почта

Сергей Яремчук СЕРГЕЙ ЯРЕМЧУК, фрилансер. Автор более 800 статей и шести книг. С «СА» с первого номера. Интересы: сетевые технологии, защита информации, свободные ОС

Боремся с вирусами и спамом с помощью MPP

Как с минимальными финансовыми и временными затратами настроить эффективную систему борьбы со спамом и вирусами, рассылаемыми посредством электронной почты? Попробуем решить эту проблему с Message Processing Platform (MPP) Free Edition.

В Интернете сегодня можно найти много описаний построения систем защиты электронной почты, для реализации некоторых из них требуется определенный опыт. Администраторы, хорошо знающие Windows, не всегда в состоянии быстро разобраться со всеми особенностями UNIX. Проект MPP Free Edition [1] предлагает, можно сказать, идеальный инструмент, позволяющий быстро развернуть систему борьбы со спамом и вирусами, основанную на ClamAV и SpamAssassin, не уступающую по эффективности, например, таким решениям, как MailScanner или Amavisd, но гораздо проще в настройке. При этом в MPP возможны установка максимального размера проверяемых сообщений, подпись проверенных писем, фильтрация вложений по расширению, обработка исключений и прочее. Сообщения, помещенные в карантин, могут храниться в текстовом виде либо в базе данных MySQL. Веб-интерфейс, реализованный с помощью модуля Webmin, обеспечивает настройку работы, контроль в реальном времени, управление карантином и спамом, внесение отправителей в черный и белый списки, просмотр журналов работы. Решение очень просто в установке, потребуется наличие в системе лишь нескольких основных компонентов:

  • операционная система – GNU/Linux приблизительно от RH 8.0 и выше, точно работает в Ubuntu 6.06 и Debian 3.0, FreeBSD от 4.8 и выше, 5.x (ветка 4 рекомендуемая), MacOS X от 10.2 и Solaris 8/9;
  • почтовый сервер – Sendmail, Postfix, CommuniGate, QMail или SurgeMail;
  • SpamAssassin от 3.x и ClamAV 0.8 и выше;
  • опционально для настройки через веб-интерфейс – Webmin.

Фактически MPP Free Edition является первой версией решения MPP, которую компания решила раздавать всем бесплатно. Ходят слухи о возможном распространении под лицензией GNU GPL, но пока дальше разговоров дело не пошло. Поддержка реализована только посредством электронной почты, без гарантии того, что вам ответят. Коммерческая версия продукта MPP v3 обеспечивает на порядок большую функциональность. Здесь возможна совместная работа со многими коммерческими антивирусными и антиспам-решениями, фильтрацию вложений не только по расширению, но и по имени файла и содержимому, SNMP-мониторинг, усовершенствованный пользовательский интерфейс. Кроме того, для этой версии доступен интерфейс QReview 2.0, позволяющий просматривать и управлять спам-карантином, в версии Free спам-карантином может управлять только администратор. Поэтому Free Edition подойдет больше для небольших организаций. На сайте проекта сказано, что предыдущая GPL-версия QReview для загрузки не доступна, хотя файл [3] спокойно лежит на ftp-сервере. Сравнительная таблица продуктов приведена в [2].

Установка MPP

Программа устанавливает все необходимые библиотеки ClamAV, сценарии конфигурации автоматически обновляют файлы сервера электронной почты. Поэтому установка MPP очень проста. Для загрузки доступно несколько файлов. Так как в качестве тестовой платформы использовался дистрибутив Ubuntu 6.06 LTS, поэтому для установки MPP был выбран архив mpp-free-1.2-113.Linux.i386.tar.gz. Распаковываем и запускаем скрипт ./instal.sh. Во время его работы возможны ошибки, по окончании дается рекомендация:

Please run /usr/local/MPP/configure.pl to automatically configure mpp and your mail server.

Скрипт позволяет указать на используемый почтовый сервер, а также антивирусное и антиспам-приложения, которые будут использованы при обработке электронной почты. Естественно, все это должно быть уже установлено.

$ sudo /usr/local/MPP/configure.pl

Выбираем почтовый сервер:

Select mailserver

1) Sendmail

2) Postfix

3) CommuniGate

4) QMail

5) SurgeMail

[default 1]: 2

Выбираем antivirus/antispam-движок, можно использовать несколько значений через пробел, демон clamd должен использовать стандартный порт 3310:

Select antivirus / antispam engine. Could be one or multiple selections separated with blank

Example: for clamav, spamassassin use: 1 3

1) clamav

2) clamd

3) spamassassin

[default 1]: 2 3                                   

[17:23:37] 6 [63168] [Daemon] Masking signals.

[17:23:37] 8 [63168] [Config] Start loading config file /usr/local/MPP/mppd.conf

[17:23:37] 8 [63168] [Config:InitializeList] [Config] insert successful ALL DOMAINS

[17:23:37] 8 [63168] [Config:InitializeList] [debug] dump list

[17:23:37] 8 [63168] [Config:InitializeList] ALL DOMAINS

[17:23:37] 6 [63168] [Daemon] Changing user/group.

[17:23:37] 6 [63168] [Daemon] Switching to daemon mode.

 4289 ?        Ss     0:00 /usr/lib/postfix/master

 

Completed setup.

Вот, собственно, и все по установке MPP. В конфигурационном файле в /etc/postfix/main.cf почтового сервера Postfix появится следующая запись:

# -- Added for MPP --

content_filter = smtp:localhost:10025

# -- end --

Оригинальный файл будет сохранен в /etc/postfix/main.cf.mbk.

Аналогично и master.cf будет скопирован в master.cf.mbk, и в нем появятся следующие строки:

# -- Added for MPP --

localhost:10026 inet n - n - 10 smtpd

-o content_filter=

-o local_recipient_maps=

-o relay_recipient_maps=

-o myhostname=localhost.domain.tld

-o smtpd_helo_restrictions=

-o smtpd_client_restrictions=

-o smtpd_sender_restrictions=

-o smtpd_recipient_restrictions=permit_mynetworks,reject

-o mynetworks=127.0.0.0/8

# -- end --

Все рабочие файлы MPP будут помещены в /usr/local/MPP/, кроме того, в /etc/init.d/ появится скрипт, предназначенный для управления работой демона mppd:

$ sudo /usr/local/MPP/configure.pl

Starting MPP daemon: mppd.

Соответствующие ссылки для его автоматической загрузки будут помещены в каталоги /etc/rcХ.d. Все, MPP установлен и работает с настройками по умолчанию, и в принципе можно вообще ничего больше не трогать.

В репозитарии Ubuntu нет пакета Webmin, поэтому его установку необходимо произвести вручную. Пакет, собранный для Debian, будет работать и в Ubuntu.

$ wget –c http://switch.dl.sourceforge.net/sourceforge/webadmin/webmin_1.310_all.deb

Устанавливаем пакеты, необходимые для удовлетворения зависимостей:

$ sudo apt-get install libauthen-pam-perl libio-pty-perl libmd5-perl

$ sudo dpkg -i /media/win_e/webmin_1.310_all.deb

По окончании процесса будет выдано следующее сообщение.

Webmin install complete. You can now login to https://grinder:10000/

as root with your root password, or as any user who can use sudo to run commands as root.

Что свидетельствует о том, что Webmin уже настроен и править конфигурационные файлы не придется. Поэтому просто вызываем веб-браузер и набираем https://имя_компьютера:10000/.

Работа с Webmin описана в [4], поэтому подробно о нем говорить не будем.

Для установки модуля MPP заходим в «Webmin Configuration» (настройка Webmin) и переходим в «Модули Webmin». Модуль находится в архиве, хотя на сайте проекта MPP может быть более свежий вариант:

$ wget -c ftp://ftp.messagepartners.com/pub/mpp/webmin/rae-mpp.wbm.gz

И указываем на него в «Установка модуля». В случае успеха в категории «Службы» (Service) появится новый пункт «RAE Internet MPP Panel». Здесь 6 вкладок: «Control», «Configure», «Templates», «Monitor», «Virus/Error Quarantine» и «Spam Quarantine». Дальнейшую настройку работы MPP можно производить, выбрав «Configure» либо напрямую редактируя конфигурационный файл /usr/local/MPP/mppd.conf.

Рисунок 1. Настройка MPP через Webmin

Рисунок 1. Настройка MPP через Webmin

Конфигурационный файл mppd.conf

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

Так, несмотря на присутствие слова virus в virus_scanner, сюда прописываем средство для борьбы с вирусами и спамом, указав одно или через через пробел несколько значений из clamav, clamd и spamassassin. В email_server должно стоять имя используемого почтового сервера. В моем случае это postfix, возможны варианты: sendmail, cgp, surgemail или qmail. В blacklist указываем имя файла, в который будет заноситься «черный» список адресатов по одному в строке, можно указывать домены. По умолчанию используется /usr/local/MPP/blacklist, просто снимаем комментарий со строки и идем дальше.

Аналогично параметр:

donot_scan_users = /usr/local/MPP/donotscanlist

позволяет занести в файл адреса пользователей, сообщения которых на вирусы проверяться не будут. По умолчанию параметр scan_domains установлен в all domains, что означает, что MPP будет проверять почту всех пользователей всех доменов. Домены можно конкретизировать, прописав их через запятую:

scan_domains = mycompany.com, test.com

Если нужно проверять почту конкретных пользователей указанных доменов, их можно занести в scan_users. Архивы во вложениях по умолчанию проверяются:

scan_archives = yes

Что делать в случае обнаружения вируса или спама, определяется значением параметра on_infection, а в случае невозможности удаления вируса из вложения – on_disinfection_failure. Здесь могут быть использованы следующие варианты (они используются и в некоторых других параметрах):

  • quarantine – сообщение помещается в карантин без уведомления отправителя;
  • discard – сообщение удаляется также без уведомления;
  • reject – сообщение удаляется с отсылкой уведомления отправителю;
  • disinfect – производится попытка удалить вирус;
  • delete – зараженный файл удаляется и заменяется предупреждающим сообщением.

Все сообщения, создаваемые при работе MPP, занесены в три шаблонных файла alert_template_admin.txt, alert_template_reciver.txt и alert_sender_admin.txt, которые можно отредактировать как вручную, так и выбрав «Templates» в Webmin. Аналогично при включенном параметре add_signature = yes, после сканирования в файл добавляется сигнатура – signature_template.txt, а подключив параметр message_header и дополнительный заголовок в письмо, которые также можно изменить по своему усмотрению, показав, что администратор на месте и все контролирует. Зашифрованное сообщение по умолчанию проходит без проверки:

on_encrypted_message = pass

Хотя в этом случае разрешено использование тех же значений, что и в on_infection. Максимально разрешенный размер вложений, которые будет проверять MPP на наличие вирусов, в установках по умолчанию равен 10 Мб. Изменить это значение можно в max_file_size, указав число в мегабайтах. Действие при превышении этого предела устанавливается в on_max_file_size_exceeded и может принимать значение pass (по умолчанию), quarantine или discard. Аналогично и max_recursion_level с on_max_recursion_level_exceeded отвечает за рекурсивную проверку вложений. Число 50, стоящее по умолчанию, мне кажется, несколько завышено. Как уже говорилось во введении, MPP может блокировать вложения с указанными расширениями. За это отвечает параметр block_extensions, в качестве значений которого через запятую прописываются все расширения файлов, которые администратор считает опасными. Реакция при обнаружении такого файла описана в block_extensions_action. Целый блок параметров alert_admin, alert_sender, alert_receiver определяет отсылку уведомлений соответствующим участникам пересылки. От имени кого отсылаются сообщения, указываем в alert_message_sender.

Параметр quarantine_method определяет форму хранения файлов, содержащих вирусы или спам, в карантине. По умолчанию такие сообщения хранятся в текстовом файле:

quarantine_method = file

Если планируется использование для этих целей MySQL, измените его на sql. Для создания необходимых баз в архиве имеется скрипт spam-mysql.sql. В этом случае активируйте и следующие параметры, установив необходимые значения:

sql_type = mysql

sql_database = spam

sql_host = localhost

sql_user = user

sql_password = password

Далее в файле идут настройки проверки почты SpamAssassin:

spam_filter = yes

Определяем реакцию при обнаружении спама: marksubject, markheader, forward, quarantine, discard:

spam_action = marksubject

И конкретизируем значение поля тема:

spam_marksubject = SPAM-%SUBJECT%

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

spam_forwardaddr = %EMAILID%-spam@%DOMAIN%

Аналогично ситуации с вирусами, используя инструкцию spam_inbound_whitelist и spam_outbound_whitelist, можно указать белый список адресатов, входящие или исходящие сообщения которых не будут проверяться на спам. Максимальный размер сообщений, проверяемых SpamAssassin, по умолчанию равен 32 Кб, изменить его можно в spam_max_scan_size.

Рисунок 2 Редактирование шаблона

Рисунок 2 Редактирование шаблона

После изменений параметров перезапускаем демон mppd. Для проверки правильности настройки работы антивируса и антиспам-подсистем в архиве MPP имеются файлы gtube- eicar-test.msg и test.msg. Обновления ClamAV производятся стандартными методами, кроме того, в поставке MPP есть скрипт clamavupdate.sh, с помощью которого новые базы берутся с сайта разработчика MPP (ftp://ftp.raeinternet.com/pub/clamav), запуская его через cron (это можно настроить прямо из Webmin), так и вручную, воспользовавшись меню «Control» и нажав кнопку «Virus Update».

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

Успехов.

  1. Сайт проекта MPP Free Edition – http://messagepartners.com/products/mpp_free_edition.html.
  2. Сравнительная таблица версий Free Edition и MPP v3 – http://messagepartners.com/products/compare-mpp.php.
  3. GPL версия QReview – ftp://ftp.raeinternet.com/pub/mpp/qreview-0.6.tar.
  4. Яремчук С. Упрощаем себе жизнь с Webmin. //«Системный администратор», № 7, 2004 г. – C. 34-37.
  5. Яремчук С. Roaring Penguin CanIt: ведём борьбу со спамом. //«Системный администратор», № 7, 2006 г. – C. 16-22.
  6. Яремчук С. Защищаем электронную почту средствами MailScanner. //«Системный администратор», № 12, 2005 г. – C. 45-51.

Комментарии отсутствуют

Добавить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

               Copyright © Системный администратор

Яндекс.Метрика
Tel.: (499) 277-12-41
Fax: (499) 277-12-45
E-mail: sa@samag.ru