fbpx

Настраиваем фильтрацию от спама в почтовом сервере

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

Многие из вас, возможно, сталкивались с ситуацией, когда сотрудники ИТ-отдела не могли справиться с этой задачей, или справлялись так, что почта вообще переставала доходить.

Мы поделимся  важными настройками почтового сервера, которые значительно уменьшат количество спама, поступающего на ваш почтовый ящик. Почему мы говорим об «уменьшении»? Ответ очевиден: нельзя защитить почтовый сервер на 100% от спама из-за постоянной активности спамеров, которые каждый день придумывают новые методы обхода нашей защиты.

Рассмотрим эти рекомендации на примере почтового сервера на базе Linux с установленным Postfix. Какой дистрибутив Linux вы используете — не имеет значения.

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

Потому что одним из наиболее распространенных способов рассылки спама является использование писем, отправляемых с несуществующих серверов, не занесенных в DNS записи. Для того чтобы ваш сервер не считался спамерским, вам необходимо выполнить два действия:

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

При соблюдении этих двух условий в 99% случаев ваш почтовый сервер не будет считаться спамерским. Иногда это правило может не сработать — если IP-адрес вашего сервера окажется случайно или умышленно внесенным в черные списки спама, вам придется разбираться в этом самостоятельно…

Приступим к настройке защиты. У Posfix имеется конфигурационный файл настроек, через него будем настраивать наши дополнительные проверки на спам. Файл называется main.cf. Данные настройки будем добавлять в существующие блоки.

Начинаем:

1. При включении данного параметра приходят письма только от серверов, пересылающих строку «helo».

Большинство спамеров этого не делают.
smtpd_helo_required = yes

2. В данной секции рассматриваются правила приема почты нашим сервером

smtpd_recipient_restrictions =

Параметр разрешающий аутентификацию по логину-паролю (если SSL у вас не настроен — уберите этот параметр, иначе логины и пароли ваших пользователей пойдут в «открытом виде»)
permit_sasl_authenticated,

Параметр, указывающий postfix получать почту от определенных ip адресов (как я и говорил раньше — есть сервера, которые не прописаны в прямой/обратной зонах и их не хотят прописывать или некому). Не забудьте после добавления ip-адресов выполнить команду #postmap /etc/postfix/access, иначе postfix не будет обрабатывать файл
check_client_access hash:/etc/postfix/access,

Иногда встречаются пользователи, которые хотят получать все письма, в том числе спам.
Данное правило указывает на файл, в котором содержаться адреса почтовых ящиков, на которые мы будем получать всю почту. Не забудьте про postmap.
check_recipient_access hash:/etc/postfix/recipient_access,

Не принимаем письма в следующих ситуациях:

  • Если имя сервера отправляющей стороны не правильное
    reject_invalid_hostname;
  • Если имя сервера отправляющей стороны не соответствует FQDN— запрещаем таких
    reject_non_fqdn_hostname;
  • Если имя отправителя не соответствует FQDN — запрещаем
    reject_non_fqdn_sender;
  • Если имя получателя не соответствует FQDN — запрещаем
    reject_non_fqdn_recipient;
  • Проверяем домен на записи типа A и MX в DNS — если нет, то запрещаем
    reject_unknown_sender_domain;
  • В документации postfix сказано «блокирует почту от несуществующих доменов»
    reject_unknown_recipient_domain,

Разрешаем получать письма от адресов, которые перечислены в параметре mynetworks (в данном параметре указываете адреса своих пользователей, почтовых серверов)
permit_mynetworks.

Защита от посылки smtp-команд до момента выяснения, поддерживает ли такие команды postfix
reject_unauth_pipelining.

Данный правило запрещает открытую пересылку писем через ваш Postfix, оставив только возможность принимать письма на известные адреса.
reject_unauth_destination,

Ниже перечислены правила на нахождение почтового сервера в блек-листах спамеров:
reject_rbl_client zombie.dnsbl.sorbs.net,
reject_rbl_client cbl.abuseat.org,
reject_rbl_client zen.spamhaus.org,
reject_rbl_client bl.spamcop.net,
reject_rbl_client multihop.dsbl.org,
reject_rbl_client work.rsbs.express.ru,
reject_rbl_client dnsbl.sorbs.net.

Финальную защиту организуем с помощью PostGrey.

Данная утилита  проверяет почтовые серверы на наличие их в своих списках. Если сервера нет в списках, то при получение первого письма новый сервер заносится в «серый» список. Практически всегда «хороший» сервер высылает второе письмо через определённое время, в этом случае PostGrey его уже пропускает. После 5 пропущенных писем сервер переходит в «белый» список.

Если повторные письма приходят слишком быстро (менее чем через 5 минут), то значит это спамер, и он переходит в черный список.

Если повторного письма нет, то остается в сером списке.

Установка достаточно простая — #yum install postgrey

Настройка также легкая:

  • postgrey_whitelist_clients— файл с указанием почтовиков, от которых принимаем почту всегда
  • postgrey_whitelist_recipients— файл с указанием получателей, для которых почту принимаем всегда.

Очищаем файл postgrey_whitelist_clients.  Изначально там записи от разработчика. Добавляем те сервера, которым доверяем.

Рекомендуем этот список к добавлению:
mail.ru
yandex.ru
rambler.ru
gmail.com
beeline.ru
post.ru
pochta.ru
hotmail.com
hotmail.ru
yahoo.com
hotbox.ru
masterhost.ru
nic.ru
list.ru
bk.ru
inbox.ru
job.ru


Остается только запустить postgrey как сервис:
# chkconfig postgrey on
# service postgrey start


Дальше, если у пользователей возникнут проблемы, можно добавлять в этот файл и другие сервера.
check_policy_service unix:postgrey/socket,

Если почтовый сервер прошел все проверки — тогда добавляем
permit

3. Этот блок для проверки секции SMTP DATA команд.

smtpd_data_restrictions =
reject_unauth_pipelining,
reject_multi_recipient_bounce,
permit

4. Этот блок для проверки исходящей почты или пересылаемой через нас почты.

smtpd_sender_restrictions =
permit_sasl_authenticated,
permit_mynetworks,
check_client_access hash:/etc/postfix/access,
check_recipient_access hash:/etc/postfix/recipient_access,
reject_invalid_hostname,
reject_non_fqdn_hostname,
reject_non_fqdn_sender,


Правило проверки соответствия ip и имени клиента
reject_unknown_client_hostname,

reject_unknown_sender_domain,
reject_unknown_hostname,
reject_rbl_client zombie.dnsbl.sorbs.net,
reject_rbl_client cbl.abuseat.org,
reject_rbl_client zen.spamhaus.org,
reject_rbl_client bl.spamcop.net,
reject_rbl_client multihop.dsbl.org,
reject_rbl_client work.rsbs.express.ru,
reject_rbl_client dnsbl.sorbs.net,
reject_rhsbl_sender dsn.rfc-ignorant.org
permit


Здесь, как видите, нет проверки с помощью Postgrey — она не нужна, так как в этом случае мы отсылаем письма, а не принимаем.

АКЦИЯ! Бесплатное обслуживание до конца месяца!
Спасибо!
Ваши данные успешно отправлены.
Другие статьи
Чек-лист проверки на взлом IT-инфраструктуры компании
Рассматриваем угрозы IT-инфраструктуре компаний и способы их устранения. Корпоративная сеть Антивирусная защита ...
Особенности настройки и конфигурации веб-сервера
Настройка и конфигурация веб-сервера - это критически важный процесс для обеспечения надежной и эффективной работы...
Лучшие утилиты для администрирования сервера на Windows
Администрирование сервера на Windows требует широкого арсенала инструментов, каждый из которых предназначен для...
Что лучше для сервера — Linux или Windows?
Вопрос выбора операционной системы для серверов стоит перед системными администраторами и техническими директорами уже...
Организация корпоративного файлообменика, файлового хранилища
Организация корпоративного файлового хранилища – ключевая задача для обеспечения эффективной работы сотрудников...
Чек-лист проверки безопасности корпоративного Wi-Fi
Следует регулярно проводить аудит безопасности корпоративной Wi-Fi сети. Ниже приведен чек-лист с рекомендациями и...
Идеальный сервер для 1С — как выбрать и какой должен быть?
При выборе сервера для работы с системой 1С необходимо учитывать количество пользователей, объем данных и требования к...
Сквозная аналитика: зачем нужная и пошаговая настройка
Сквозная аналитика в бизнесе решает ряд ключевых проблем, обеспечивая компаниям глубокий анализ и понимание многих...
Как выбрать CMS для сайта в России? Обзор топ-5 популярных CMS
Любому современному бизнесу нужен сайт. Функционал сайта и удобство управления им зависят от правильного выбора системы...
Тормозит сайт на Bitrix? Находим и устраняем причины, оптимизируем работу!
Почему сайт на Битриксе тормозит Владельцы или администраторы сайтов на CMS Bitrix часто сталкиваются с тем, что их...
Создание катастрофоустойчивой IT-инфраструктуры: пошаговое руководство
Катастрофоустойчивость IT-инфраструктуры – это не просто модное слово, а жизненно важная необходимость для современного...
Как правильно выбрать сервер для бизнес-задач: от веб-сайта до 1С
Неправильный выбор сервера может обернуться не просто техническими неудобствами, но и реальными финансовыми потерями....