RSS
 

Установка Postgrey в Centos

Postgrey это небольшой демон грейлистинга. В данном случае он будет устанавливаться на CentOS 5.2 в связке с postfix. Что такое грейлистинг в данной заметке я описывать не буду, предлагаю воспользоваться поиском по сайту, ибо уже несколько статей описывающих что это я публиковал.

Перед началом подключим дополнительный репозитарий RPMforge. Собственно это краткий перевод с wiki CentOS

Скачиваем пакет rpmforge для своего дистрибутива. Проверь что у вас можно командой uname -i:

#i386
wget http://apt.sw.be/redhat/el5/en/i386/RPMS.dag/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
#x86_64
wget http://apt.sw.be/redhat/el5/en/x86_64/RPMS.dag/rpmforge-release-0.3.6-1.el5.rf.x86_64.rpm

Устанавливаем ключ DAG GPG:

rpm —import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt

Проверяем скаченный пакет:

rpm -K rpmforge-release-0.3.6-1.el5.rf.*.rpm
Устанавливаем пакет:

rpm -i rpmforge-release-0.3.6-1.el5.rf.*.rpm

Выполняем команду:

yum check-update

На этом первая подготовительная часть завершена.

Установка Postgrey из репозитариев

Запускаем установку:

yum install postgrey

После установки пакета добавляем в /etc/postfix/main.cf раздел

smtpd_recipient_restrictions =
permit_mynetworks

reject_unauth_destination
check_policy_service inet:127.0.0.1:10023

Запускаем postgrey и создаем стартовый скрипт для автозапуска:

/usr/sbin/postgrey —inet=10023 -d

В дальнейшем изучаем

man postgrey

Установка Postgrey из исходников

Скачиваем. Последняя версия 1.32:

wget http://postgrey.schweikert.ch/pub/postgrey-1.32.tar.gz

Распаковываем:

tar zxvf postgrey-1.30.tar.gz

Переходим в распакованную директорию:

cd postgrey-1.32

Добавляем пользователя postgrey:

useradd postgrey

Меняем пользователю postgrey шелл на /sbin/nologin:

vipw

Создаем директорию

mkdir /var/spool/postfix/postgrey

Даем пользователю postgrey права на эту директорию:

chown postgrey /var/spool/postfix/postgrey

Перемещаем демона

mv postgrey /usr/local/sbin/

Редактируем postfix, добавляя строчку check_policy_service inet:127.0.0.1:10023 в конец секции smtpd_recipient_restrictions. Данное действие описывалось и выше и абсолютно одинаково в обоих случаях установки.

vi /etc/postfix/main.cf
smtpd_recipient_restrictions =
permit_mynetworks

reject_unauth_destination
check_policy_service inet:127.0.0.1:10023

Перемещаем нужные файлики в нужное место:

mv postgrey_whitelist_clients /etc/postfix
mv postgrey_whitelist_recipients /etc/postfix

Опять запускаем postgrey:

/usr/sbin/postgrey —inet=10023 -d

В обоих случаях установки если postgrey не запускается на этом этапе и выдает длинное сообщение об ошибке пугаться не стоит. Смотрите первую строку, там сказано что ему не хватает. В моем случае пришлось доставить 4 перловых модуля.

Единственное наверно преимущество в установке postgrey руками, а не из репозитариев в том, что новая версия 1.32 вышла недавно и я что то не заметил в репозитариях пакета для неё.

На этом все, продолжение следует по мер изучения man postgrey 🙂

Оставить комментарий

 

 
  1. Diomontik

    26.05.2010 at 6:12 пп

    Хотелосьбы поблагодарить Вас за выложеный мотериал, я с вами полностью согласен.