Greylisting - борьба со Спамом с Postgrey и Postfix на Debian и Ubuntu

Слышали когда-нибудь о грейлистинге?

Существует множество способов предотвратить попадание спама в ваш почтовый ящик, наиболее популярным из которых является SpamAssassin. Greylisting не заменит программное обеспечение для фильтрации спама, такое как SA, но он будет служить мощным первым препятствием для спама. Это скорее следует рассматривать как дополнение ко всем другим антиспамовым функциям Postfix. Помимо очевидного преимущества уменьшения количества спама в вашем почтовом ящике, это даст вашему вирусному сканеру и SpamAssassing меньше работы. Как спам-фильтрация, так и сканирование вирусов — это интенсивный бизнес процессора, и прекращение спама в двери потенциально сэкономит вам деньги из-за снижения требований к оборудованию. Короче говоря, грейлистинг означает, что когда кто-то хочет доставить почту на ваш почтовый сервер, он просто ответит - пожалуйста, вернитесь позже. Это то, что делают все почтовые серверы, соответствующие RFC, и когда они возвращаются, почта принимается. Большинство спамеров и спам-программ не совместимы и недостаточно терпеливы, чтобы попробовать снова. Вы будете удивлены, насколько это эффективно. В любом случае, перейдите по ссылкам ниже, чтобы действительно узнать об этом. Как всегда, есть плюсы и минусы, поэтому сделайте домашнее задание, прежде чем поместить его на производственный сервер.

Greylisting.org
Greylisting в Википедии

Существует несколько реализаций серого списка, и это может быть сделано с большинством любого сервера. Я покажу вам, как это сделать на Debian с Postfix, работающим как MTA с Postgrey. Шаги из этого руководства будут работать для всех версий Debian от Debian 3.1 (середина) до 8 (jessie).

Install Postgrey

Я предполагаю, что у вас есть рабочая установка Postfix.

Если вы используете apt-get для установки Postgrey, требования будут обрабатываться автоматически. Однако, если вы установите из источника, вам придется проверить его вручную.

Требования к Postgrey:

  • Perl >= 5.6.0
  • Net::Server (Perl Module)
  • IO::Multiplex (Perl Module)
  • BerkeleyDB (Perl Module)
  • Berkeley DB >= 4.1 (Библиотека)

Я рекомендую установить пакет Postgrey.

Вначале мы устанавливаем пакет Postgrey с:

apt-get -y install postgrey

Это позволит установить сервер Postgrey на ваш компьютер. Возможно, вы захотите изменить некоторые настройки. Самая раздражающая вещь с серым списком заключается в том, что он накладывает задержку на доставку почты. Если вы обнаружите 5-минутную задержку, то есть по умолчанию, чтобы она была слишком длинной, вы можете установить ее на 1 минуту. Вы можете изменить это путем редактирования /etc/default/postgrey. Изменение по умолчанию:

POSTGREY OPTS="--inet=127.0.0.1:10023"

to:

POSTGREY OPTS="--inet=127.0.0.1:10023 --delay=60"
Тем не менее, я бы предложил изменить дефолты только после того, как вы убедились, что все работает так, как ожидалось. Стоит также отметить, что более короткая задержка снизит эффективность серого листинга. Увеличение задержки до часа будет сложнее для спама, но и труднее для вашего терпения пользователей.

Теперь запустите сервер политики Postgrey:

 Service postgrey start

Политическая служба Postgrey теперь должна работать на порту 10023.

Теперь настройте Postfix для использования Postgrey.

Configure Postfix

Файлы конфигурации Postfix расположены в /etc/postfix. Редактировать /etc/postfix/main.cf и добавлять check policy service inet:127.0.0.1:10023 в . Это должно выглядеть примерно так:

smtpd recipient restrictions = permit sasl authenticated,
разрешите mynetworks
Отклонить unauth destination
check policy service inet:127.0.0.1:10023

Теперь все, что нам нужно сделать, это перезагрузить конфигурацию Postfix:

postfix reload

Простые и красивые. Сядьте и наслаждайтесь отсутствием спама :)

//Erk