http://gate.udec.ntu-kpi.kiev.ua/~bat/exp/about-spam.html
Postgrey - Postfix Greylisting Policy Server (сервер на Perl для организации серых списков в postfix)
Принцип действия серых списков основан на тактике рассылки спама. Как правило, спам рассылается в очень короткое время.
Работа серого списка заключается в намеренной задержке писем на некоторое время. При этом адрес и время пересылки заносится в базу данных серого списка. Если удалённый компьютер является настоящим МТА, то он согласно RFC2821, должен сохранить письмо в очереди и повторять пересылку в течение пяти дней. Спам-боты, как правило, писем в очереди не сохраняют, поэтому спустя непродолжительное время, прекращают попытки переслать письмо. Экспериментальным путём установлено, что в среднем время рассылки спама составляет чуть больше часа.
При повторной пересылке письма с этого же адреса, если с момента первой попытки прошло необходимое количество времени, Ваш МТА примет его. При этом IP-адрес отправляющего МТА, электронные адреса отправителя и получателя будут внесены в белый список на достаточно длительное время, после чего письма будут приниматься без задержек.
Ставим из портов
/usr/ports/mail/postgrey
В
/etc/rc.conf
добавим
postgrey_enable="YES"
Вызов справки
perldoc postgrey
В файл
/usr/local/etc/postfix/main.cf
в параметр smtpd_recipient_restrictions
добавим
check_policy_service inet:127.0.0.1:10023
сразу после reject_unauth_destination
Например так
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_clients
Сюда заносим доверенные домены, почта с них не будет заноситься в серые списки/usr/local/etc/postfix/postgrey_whitelist_recipients
Сюда заносим свои адреса, почта на них не проваряется postgreyПерегружаем
postfix
и смотрим tail -f /var/log/maillog
Да еще в cron отчет о проделанной работе за вчера на мыло админу
#!/bin/sh
/usr/bin/bzcat /var/log/maillog.0.bz2 | \
/usr/local/sbin/postgreyreport --dbdir=/var/db/postgrey --nosingle_line \
--check_sender=mx,a \
--separate_by_subnet=":=============================================\n" \
| /usr/bin/mail -s "postgreyreport" postmaster@mydomen.com -F postgrey
Настройки по умолчанию я не менял, задержка стоит 5 мин.
Эффективность меня поразила.
Обсудить сообщение можно в форуме admins.arg.su
6 комментариев:
Ништячёк! Большое спасибо!!!
Postgrey... хорошо конечно.... Работал он у меня недели 2-3. Но есть одно большое НО, по моему мнению: хорошо все работает, если ты знаешь, с кем у тебя компания переписывается, а если нет? И всегда ли почтовик отправителя перешлет повторно исходное сообщение? По опыту эксплуатации: не всегда. Пример: почтовик obninsk.com не пересылал ни разу,а объеянить бухгалтерам почему почту получить не могут - проблема. То есть через два дня, когда к тебе обращаются, типа, что за лажа, начинаешь шарить в логах дабы занести в postgrey_whitelist_clients MTA отправителя ну проч. неприятные вещи.
А потом, всегда ли отправка идет с MX. Нет...Пример:
dig mail.ru mx
.....
mail.ru. 421 IN MX 10 mxs.mail.ru.
....
Заносим в postgrey_whitelist_clients запись о mxs.mail.ru...И что же..
А ничего, т .к. отправляется с mx48.mail.ru, mx40.mail.ru ну и т.д...
Короче, пока отказался..А жаль...
Перечисли подсети mail.ru и все будет в шоколаде.
Отказался по той же причине, что и выше написал автор. Почтовики далеко не все повторы делают, и ситуация с mail.ru тоже печальная. Whitelist не понимает маску *.mail.ru а вносить все руками неохота.
Я внёс просто mail.ru - работает.
Но сам тоже не уверен, что оставлю Postgrey.
Для тех кто сомневается в использовании postgrey рекомендую посмотреть на Maia.
Вот статейка на эту тему: Установка связки Postfix, MySQL, SpamAssassin, Maia в FreeBSD.
Отправить комментарий