Anton Kvashin пишет: > Aleksey Avdeev пишет: >> Vladimir V. Kamarzin пишет: >>>>>>>> On 15 Nov 2007 at 02:52 "AA" == Aleksey Avdeev writes: >>>>> В принципе можно вообще не использовать таблицы, а обойтись лишь recipient >>>>> verification, заведя отдельный restriction_class, в котором бы осуществлялась >>>>> проверка reject_unverified_recipient для локальных доменов. См. пример >>>>> http://www.freesource.info/wiki/Dokumentacija/Postfix/BackupMX/recipientverification/rejectunverifiedrecipient?v=ze5& >>>>> >>>>> Допустим, SMTP-клиент пытается залить нам мыло для юзера user@domain. Постфикс >>>>> генерирует конверт и пытается доставить его допустим по lmtp dovecot-у. Если >>>>> Dovecot говорит 550 user unknown, постфикс SMTP-клиента посылает тоже с 550, а >>>>> точнее, клиенту будет процитирован ответ dovecot-а. Соответственно, если >>>>> Dovecot говорит 450, SMTP-клиенту отдаётся тоже 450. >>> AA> А можно ли вклиниться в эту идиллию так, чтобы при этом (срыве >>> AA> доставки по lmtp) сообщения о недоставке (от MAILER-DAEMON@), >>> AA> отправителю не уходили (кроме списка доменов заданного руками)? >>> >>> Гмм, я вижу только один вариант "срыва доставки по lmtp", приводящий к >>> генерации баунсов: если в кэше результат проверки конкретного >>> реципиента положительный (status=deliverable), а MDA по какой-либо причине >>> перестал принимать почту для данного реципиента (например исчерпана квота, >>> юзера удалли, и т.п.), то постфикс будет слать баунсы на envelope-from до тех >>> пор, пока не истечёт время address_verify_positive_refresh_time (default: >>> 7d). В общем, тут важно правильно подобрать параметры кэширования. >> Распишу подробнее: >> >> 1. В качестве imap сервера использую cyrus (не dovecot), и списком >> пользователей владеет именно он. > > Он может видеть/использовать список пользователей из sql/ldap, т.е. > не единоличное владение. На данный момент они у меня в sasldb. > >> 2. Всю приходящую на домен почту (после всех поверок) -- postfix >> пересылает cyrus`у по lmtp. > > Не использую postfix, но по памяти virtual_table можно направить в > sql/ldap. И он на этапе rcpt to (если postfix может такое) говорить > 550 unknown user. Это знаю, но для этого сначала нужно перейти на sql/ldap (что в планах, но не быстрых). > >> 3. В качестве одного из промежуточных фильтров (до передачи по lmtp) -- >> используется amavis-new (который тоже в какой-то момент перестал >> проставлять заголовки, но вирусы по прежнему ловит)... >> >> Пока писал, подумал что наблюдаемое вполне может быть из-за amavis`а >> (и/или любого другого фильтра с отложенной обработкой), т. к. он >> обрабатывает сообщения уже находящиеся в очереди postfix`а, _после_ >> завершения входящей SMTP сессии. Т. е. из-за использования в процессе >> доставки фильтра обрабатывающего очередь, postfix получает отлуп от >> принимающего по lmtp не в момент существования входящей SMTP сессии, а >> уже после её завершения... > > Посмотрите exim. Он позволяет делать контентную фильтрацию в > SMTP-сессии на этапе DATA, без прослоек. > OK, может быть гляну. -- С уважением. Алексей.