Защита от спама и зловредного ПО в Carbonio

Kate

Administrator
Команда форума
Электронная почта, которая является одним из наиболее распространенных форматов корпоративного общения, как правило становится основной целью злоумышленников, которые используют электронные письма как средства доставки зловредного ПО во внутреннюю сеть предприятия. В результате таких атак появляются утечки важной информации или потери корпоративных данных, которые влекут за собой не только финансовые, но и репутационные потери. Надежная защита почтового сервера от кибератак позволяет купировать большую часть киберугроз и именно поэтому защита почтового сервера предприятия становится приоритетом номер один среди системных администраторов и специалистов по кибербезопасности. В Carbonio для защиты от угроз используются такие Open-Source решения, как антивирус ClamAV, антиспам SpamAssassin и интерфейс для их взаимодействия с почтовым сервером new-amavisd. В данной статье мы расскажем о том, как правильно использовать их для обеспечения безопасности почтового сервера Carbonio.

93f6f8182ee2587d783f3dae89d8df5a.png

Данная инструкция применима как к бесплатной Carbonio Community Edition, так и к коммерческой версии Carbonio.

Проверка электронных писем на спам и вирусы в Carbonio происходит следующим образом: Postfix передает их new-amavisd, который, в свою очередь, передает их ClamAV для проверки на вирусы и SpamAssassin для проверки на спам. После прохождения проверок ClamAV и SpamAssassin отправляют результаты проверок обратно в new-amavisd, который сообщает Postfix были ли обнаружены в письме вирусы или признаки спама. На основе полученных от new-amavisd данных Postfix принимает решение о том, чтобы доставить письмо, отклонить его или доставить, но при этом поместить в карантин или в папку "Спам" почтового ящика адресата.

В консоли администратора можно настроить периодичность обновления антивирусных баз данных ClamAV, блокировку писем с зашифрованными архивами во вложении, а также направление уведомления о заблокированном письме пользователю. В настоящее время из-за санкций пользователям из России недоступно обновление баз данных ClamAV. Обойти это ограничение можно двумя способами: скачивать и устанавливать обновления баз вручную, либо настроить другой источник для скачивания баз данных, который разрешает скачивание пользователям с российскими IP-адресами. Для обновления вручную воспользуйтесь TOR или смените свой IP-адрес на зарубежный с помощью VPN и скачайте следующие файлы:

http://database.clamav.net/main.cvd
http://database.clamav.net/daily.cvd
http://database.clamav.net/bytecode.cvd

После этого поместите их с заменой более ранних версий файлов в папку /opt/zextras/data/clamav/db/. Обращайте внимание на права доступа к файлам с антивирусными базами.

Для того, чтобы получать обновления автоматически, следует найти ссылку на работающее в России зеркало ClamAV и добавить в шаблон конфигурационного файла freshclam.conf.in строки:

PrivateMirror https://mirror1.example.ru/clamav
ScriptedUpdates no

133ba2140fdb666be4f847bf81fcdca5.png

Вместо https://mirror1.example.ru/clamav пропишите ссылку на найденный вами репозиторий. Отметим, что для пользователей коммерческой версии Carbonio будет доступен собственный репозиторий ClamAV, с которого пользователи из России смогут без проблем получать свежие обновления. После внесения изменений перезапустите сервер Carbonio, чтобы они вступили в силу.

Также в консоли администратора доступны настройки антиспама, в которых можно настроить пороговые значения оценки для удаления письма и для доставки его в папку "Спам". Данные значения основываются на методах работы SpamAssassin, который использует в работе стандартные правила фильтрации спама, а также вырабатывает собственные на базе Байесовской фильтрации спама. При их прохождении за одни проверки письму добавляются баллы, а за другие вычитаются. Итоговый результат составляет от -20 до 20 баллов, и чем выше результат, тем выше вероятность того, что письмо окажется спамом.

Соответственно настройки пороговых значений позволяют администратору задать процентные значения, по достижении которых подозрительное письмо окажется в папке "Спам", а при каких будет удалено. К примеру, если администратор укажет процент удаления 75, а процент отметки 25, то письма, которые при проверке SpamAssassin наберут от 15 баллов будут удалены, а те, которые наберут от 5 баллов будут помещены в папку "Спам".

a16f6981e901eb19ed533812e9aa9295.png

В настройке "Префикс темы" можно настроить надпись, которая будет добавляться к теме письма, которое SpamAssassin распознает как спам. К примеру, если в качестве префикса указать >>>SPAM<<<, то письмо с темой "Получите наследство от вашего американского родственника" превратится в ">>>SPAM<<<Получите наследство от вашего американского родственника"

Посмотреть, как электронное письмо прошло проверку new-amavisd можно в исходном коде письма. Данная информация содержится в полях:

  • X-Spam-Flag - Содержит информацию о том, является ли письмо спамом или нет. Может иметь значения Yes или No.
  • X-Spam-Score - Содержит информацию о присвоенной SpamAssassin оценке и является числом
  • X-Spam-Level - Содержит информацию об уровне "спамности" письма. Отображается в виде звездочек
  • X-Spam-Status - Содержит подробную информацию о прохождении проверок в SpamAssassin
  • X-Virus-Scanned - Содержит отладочную информацию о прохождении проверки антивирусом
1241daf62cd86373c5c295fef98fbf19.png

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

Байесовское обучение SpamAssassin в Carbonio основано на двух почтовых ящиках формата spam@example.ru и ham@example.ru, в которые попадают письма, которые пользователи вручную перенесли из папки "Спам" в другую почтовую папку, а также письма, которые не были распознаны как спам, но которые пользователь вручную перенес в папку "Спам". Обучение работает даже если вы осуществляете перенос письма в папку "Спам" и обратно в почтовом клиенте, подключенном по IMAP.

Эти ящики создаются автоматически при установке почтового сервера. Проверить их работу можно пометив любое сообщение как спам или сняв пометку "Спам" с письма. В первом случае отмеченное письмо должно появиться в ящике spam@example.ru, во втором случае оно появится в ящике ham@example.ru. Просмотреть содержимое данных ящиков можно в консоли администратора.

Правила, которые формируются в результате обучения SpamAssassin можно резервировать. Делается это при помощи команды вида /opt/zextras/common/bin/sa-learn --dbpath /opt/zextras/data/amavisd/.spamassassin --backup >> /tmp/sa.db. После выполнения данной операции все правила будут сохранены в файл /tmp/sa.db. Восстанавливается резервная копия с помощью той же утилиты /opt/zimbra/common/bin/sa-learn --dbpath /opt/zimbra/data/amavisd/.spamassassin --restore /tmp/sa.db. После восстановления резервной копии необходимо перезапустить Carbonio.

31424352c50f62b5265d34fd2172a6fe.png

В Carbonio можно составлять белые и черные списки адресов и доменов. Приходящие в них письма не будут проверяться new-amavisd. Для создания черных и белых списков следует создать файлы whitelist и/или blacklist в папке /opt/zextras/conf/, а затем добавить в них почтовые адреса или домены, которые вы собрались разрешать или блокировать. К примеру, запись вида info@partner.ru разрешит или заблокирует получение писем с конкретного адреса info@partner.ru, а запись вида partner.ru разрешит или заблокирует письма с домена partner.ru.

После того как черный и белый списки будут составлены, следует указать путь к ним в конфигурационных файлах new-amavisd. Для этого откройте шаблон конфигурационного файла /opt/zextras/conf/amavisd.conf.in и добавьте в него следующие строки:

read_hash(%whitelist_sender, '/opt/zextras/conf/whitelist');
read_hash(%blacklist_sender, '/opt/zextras/conf/blacklist');


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

Отметим, что среди служб почтового сервера Carbonio именно ClamAV и SpamAssassin потребляют больше всего ресурсов. Это может быть критично в условиях односерверной установки c достаточно большим количеством пользователей. Чтобы снять с сервера данную нагрузку, можно организовать проверку входящей почты на спам и вирусы на отдельном сервере или в облаке с помощью специализированных Mail gateway решений. Среди бесплатных решений одним из лидеров является Proxmox Mail Gateway. Одним из лучших решений для работы с русскоязычной электронной почтой является Kaspersky Mail Gateway.

Когда фильтрация спама и проверка на вирусы начнет производиться на внешнем сервере, можно отключить антивирусную и антиспам-проверки на сервере Carbonio. Сделать это можно в консоли администратора в разделе "Настройки сервера", а также с помощью команд

zmprov -l ms mail.example.ru -zimbraServiceEnabled antispam
zmprov -l ms
mail.example.ru -zimbraServiceEnabled antivirus

61507ce226d18e00effbd07e335b7df8.png

Еще одним из способов повысить степень защищенности почтового сервера является блокировка вложений писем по их расширению. Блокировка осуществляется на уровне Postfix и позволяет запретить пользователям принимать письма с потенциально вредоносными исполняемыми файлами, архивами и текстовыми файлами с макросами. Настроить список заблокированных расширений можно в Консоли администратора в разделе "Вложения" Глобальных настроек. Помимо списка расширений здесь можно настроить отправку уведомлений пользователям о заблокированном расширении. Также интерфейс Консоли администратора позволяет добавить собственное расширение, если оно не представлено в изначальном списке.

По всем вопросам, связанным c Zextras Suite и коммерческой версией Carbonio, вы можете обратиться к Представителю компании «Zextras» Екатерине Триандафилиди по электронной почте ekaterina.triandafilidi@zextras.com.


 
Сверху