Postgrey
Postgrey is a program which implements greylisting and is
designed to work with the Postfix MTA.WWW: http://postgrey.schweikert.ch/
Принцип действия серых списков основан на тактике рассылки спама. Как правило, спам рассылается в очень короткое время.
Работа серого списка заключается в намеренной задержке писем на некоторое время. При этом адрес и время пересылки заносится в базу данных серого списка. Если удалённый компьютер является настоящим МТА, то он согласно RFC2821, должен сохранить письмо в очереди и повторять пересылку в течение пяти дней. Спам-боты, как правило, писем в очереди не сохраняют, поэтому спустя непродолжительное время, прекращают попытки переслать письмо. Экспериментальным путём установлено, что в среднем время рассылки спама составляет чуть больше часа.
При повторной пересылке письма с этого же адреса, если с момента первой попытки прошло необходимое количество времени, Ваш МТА примет его. При этом IP-адрес отправляющего МТА, электронные адреса отправителя и получателя будут внесены в белый список на достаточно длительное время, после чего письма будут приниматься без задержек.
Установка:
1 2 | [root@case.net.ru]$ cd /usr/ports/mail/postgrey/ [root@case.net.ru]$ make install clean |
Добавляем в rc.conf:
1 | postgrey_enable="YES" |
Прописываем правила проверки сообщения для postfix’a в main.cf:
1 | smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination, check_policy_service inet:127.0.0.1:10023 |
Добавляем в файл /usr/local/etc/postfix/postgrey_whitelist_recipients доверенные домены и почтовые ящики для которых не производится проверка postgrey’ем.
Запускаем postgrey:
1 | [root@case.net.ru]$ /usr/local/etc/rc.d/postgrey start |
Перезагружаем postfix:
1 | [root@case.net.ru]$ postfix reload |
Отчет о проделанной работе:
1 | $ cat /var/log/maillog | postgreyreport --dbdir=/var/db/postgrey --nosingle_line --check_sender=mx,a --separate_by_subnet=":======\n" |
Ссылки: http://argo-uln.blogspot.com/2007/11/blog-post.html
