Авторизация на сайте

Последнее из портфолио

Здравствуйте! После регистрации Вам станут доступны дополнительные инструменты просмотра и скрытый контент. Зарегистрироваться

Блог Олега Прокофьева » Блог » Greylist для Postfix3

Greylist для Postfix3

0
Postgrey для postfix3


1. Введение


Postgrey-это сервер политики, реализующий серый список для фильтрации спама на почтовых серверах Postfix. Принцип серого списка работает на том основании, что большое количество спама рассылается спам-ботами и другими MTA, не совместимыми с RFC. Postgrey временно отклонит новую почту с ошибкой 450 "повторите попытку позже" в течение определенного периода времени и зарегистрирует триплет CLIENT_IP/ОТПРАВИТЕЛЬ/ПОЛУЧАТЕЛЬ в его базе данных. Если отправляющий сервер совместим с RFC, он должен повторно отправить сообщение, после чего Postgrey проверит его базу данных на соответствие и примет сообщение. Задержка настраивается, и Postgrey поддерживает базу данных известных тройок, поэтому почту от данного отправителя следует задерживать только в первый раз.

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

Postgrey для postfix3


2. Конфигурация


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

2.1. Postfix


Postgrey был установлен с RPMForge на CentOS 5.1 полностью обновленным, хотя он должен одинаково применяться и в других версиях. Чтобы включить репозиторий RPMForge, пожалуйста, ознакомьтесь с инструкциями по RPMForge. Во-первых, установите postgrey:
yum install postgrey


Postgrey написан на Perl, поэтому требуется Perl вместе с некоторыми дополнительными модулями Perl. Yum автоматически устранит для вас все отсутствующие зависимости, и вы можете проверить требования на веб-сайте Postgrey.

Сначала нам нужно настроить Postfix для использования Postgrey. Отредактируйте /etc/postfix/main.cf, чтобы включить следующую строку check_policy_service в раздел smtpd_recipient_restrictions, как показано ниже (если у вас нет раздела smtpd_recipient_restrictions, то следующий пример будет работать нормально):
smtpd_recipient_restrictions = permit_mynetworks, reject_unauth_destination, check_policy_service unix:postgrey/socket, permit


По умолчанию время, в течение которого Postgrey будет отклонять новые сообщения, равно 5 минутам, но мы можем изменить это с помощью --delay переключатель. Существует компромисс в том, что чем дольше время, тем больше шансов отклонить спам, но также и дольше законная почта будет задерживаться в первый раз. Возможно, стоит сначала установить это значение в 1 минуту (60 секунд), а затем увеличить это значение, как только Postgrey создаст базу данных обычных почтовых контактов для вашего сервера. Устанавливать задержку на значения, превышающие 300 секунд ( 5 минут), действительно не рекомендуется. Чтобы вручную установить задержку (в секундах), нам нужно создать файл конфигурации Postgrey в /etc/sysconfig/postgrey и добавить --delay переключитесь, как показано ниже (полный список опций см. в разделе "человек постгрей"):
OPTIONS="--unix=/var/spool/postfix/postgrey/socket --delay=60"


Наконец, нам нужно запустить службу Postgrey и перезагрузить настройки Postfix:
/sbin/service postgrey start
/sbin/service postfix reload


Убедитесь, что postgrey автоматически запускается при загрузке машины:
/sbin/chkconfig --levels 345 postgrey on 


Теперь мы можем проверить наши почтовые журналы и увидеть postgrey в действии. Вот (запутанный) отрывок из моего /var/журнала/maillog:
#
# postgrey loads:
#
Dec 17 21:44:58 jessie postgrey[6844]: Process Backgrounded
Dec 17 21:44:58 jessie postgrey[6844]: 2007/12/17-21:44:58 postgrey (type Net::Server::Multiplex) starting! pid(6844)
Dec 17 21:44:58 jessie postgrey[6844]: Binding to UNIX socket file /var/spool/postfix/postgrey/socket using SOCK_STREAM
Dec 17 21:44:58 jessie postgrey[6844]: Setting gid to "101 101"
Dec 17 21:44:58 jessie postgrey[6844]: Setting uid to "100"
#
# postgrey greylisting a message:
#
Dec 17 21:23:49 jessie postfix/smtpd[6714]: connect from mk-outboundfilter-4-a-1.mail.uk.tiscali.com[212.74.114.8]
Dec 17 21:23:49 jessie postfix/smtpd[6714]: NOQUEUE: reject: RCPT from mk-outboundfilter-4-a-1.mail.uk.tiscali.com[212.74.114.8]:
        450 4.2.0 <ned@example.com>: Recipient address rejected: Greylisted, see http://postgrey.schweikert.ch/help/example.com.html;
        from=<bob@example.com> to=<ned@example.com> proto=ESMTP helo=<mk-outboundfilter-4-a-1.mail.uk.tiscali.com>
Dec 17 21:23:54 jessie postfix/smtpd[6714]: disconnect from mk-outboundfilter-4-a-1.mail.uk.tiscali.com[212.74.114.8]
#
# postgrey accepting a message:
#
Dec 17 22:23:45 jessie postgrey[2218]: action=pass, reason=triplet found, client_name=mk-outboundfilter-3-a-1.mail.uk.tiscali.com,
        client_address=212.74.114.7, sender=bob@example.com, recipient=ned@example.com


Если вы видите сообщение, подобное следующему:
Nov 18 09:39:03 jessie postfix/smtpd[26006]: warning: connect to postgrey/socket: Permission denied

не расстраивайтесь, это проблема SELinux, и ее решение я размещу в ближайшем будущем. А пока можно просто отключить SELinux открыв /etc/selinux/config и отредактировать строку в соответствии с нижеприведенной:
SELINUX=disabled

Похожие новости

  • Блог >> Настройка Postfix3 в Centos7 >> Настройка Postfix3 в Centos7 Я расскажу про установку и настройку postfix на centos 7, причем только тех модулей и дополнений, которые сам считаю

  • Блог >> Установка Dovecot в Centos7 >> Займемся настройкой dovecot — сервер доставки почты пользователю по протоколам pop3 и imap. Я не вижу причин использовать pop3. Он неудобен по

  • Блог >> Установка Postfix3 в Centos7 >> Установите Postfix 3 в Linux CentOS для отправки электронной почты через SMTP, SMTPS и STARTTLS Краткое руководство, объясняющее, как установить и


  • Информация
    Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.