[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Postfix: проверка получателя



On Tue, 09 Oct 2007 14:04:17 +0300 Mikolaj Golub wrote:

 MG> On Tue, 09 Oct 2007 12:59:31 +0300 Покотиленко Костик wrote:

 MG>  ПК> В Вто, 09/10/2007 в 12:14 +0300, Mikolaj Golub пишет:
 MG>  ПК> Вот фрагменты конфигов:

 MG>  ПК> main.cf:
 MG>  ПК> --------------------------------------------------------
 MG>  ПК> mailbox_transport = lmtp:unix:/var/run/cyrus/socket/lmtp
 MG>  ПК> virtual_transport = lmtp:unix:/var/run/cyrus/socket/lmtp
 MG>  ПК> local_recipient_maps = $virtual_mailbox_maps

 MG> $virtual_mailbox_maps на сколько я вижу у Вас пустой? Поэтому
 MG> local_recipient_maps тоже пустой, т.о. Вы отключили "user unknown" режект (как
 MG> гласит документация).

 MG>  ПК> smtpd_client_restrictions = check_client_access
 MG>  ПК> cidr:/etc/postfix/access, permit_sasl_authenticated

 MG>  ПК> address_verify_negative_cache = yes
 MG>  ПК> address_verify_negative_expire_time = 3d
 MG>  ПК> address_verify_negative_refresh_time = 2h 

 MG>  ПК> address_verify_positive_cache = yes
 MG>  ПК> address_verify_positive_expire_time = 3d
 MG>  ПК> address_verify_positive_refresh_time = 2h 

 MG>  ПК> address_verify_default_transport = $default_transport
 MG>  ПК> address_verify_local_transport = $local_transport
 MG>  ПК> address_verify_relay_transport = $relay_transport
 MG>  ПК> address_verify_relayhost = $relayhost
 MG>  ПК> address_verify_transport_maps = $transport_maps
 MG>  ПК> address_verify_virtual_transport = $virtual_transport

 MG>  ПК> smtpd_recipient_restrictions = permit_sasl_authenticated,
 MG>  ПК> reject_unauth_destination, reject_unverified_recipient,
 MG>  ПК> reject_unlisted_recipient

 MG>  ПК> smtpd_milters = unix:/sockets/spamass.sock
 MG>  ПК> milter_default_action = tempfail
 MG>  ПК> --------------------------------------------------------

 MG>  ПК> master.cf:
 MG>  ПК> --------------------------------------------------------
 MG>  ПК> smtp      inet  n       -       -       -       -       smtpd
 MG>  ПК> # To add support for spamassasin
 MG>  ПК> #smtp      inet  n       -       -       -       -       smtpd -o
 MG>  ПК> content_filter=spamassassin:
 MG>  ПК> --------------------------------------------------------

 MG>  ПК> Фрагменты логов:
 MG>  ПК> --------------------------------------------------------
 MG>  ПК> Oct  9 12:56:20 darkstar postfix/smtpd[21708]: connect from
 MG>  ПК> email.wccta.net[207.177.68.11]
 MG>  ПК> Oct  9 12:56:21 darkstar postfix/smtpd[21708]: NOQUEUE: reject: RCPT
 MG>  ПК> from email.wccta.net[207.177.68.11]: 450 4.1.1
 MG>  ПК> <secretbr@expometeor.com>: Recipient address rejected: undeliverable
 MG>  ПК> address: host darkstar[/var/run/cyrus/socket/lmtp] said: 550-Mailbox
 MG>  ПК> unknown.  Either there is no mailbox associated with this 550-name or
 MG>  ПК> you do not have authorization to see it. 550 5.1.1 User unknown (in
 MG>  ПК> reply to RCPT TO command); from=<anniavanessa@gmail.com>
 MG>  ПК> to=<secretbr@expometeor.com> proto=ESMTP helo=<email.wccta.net>
 MG>  ПК> Oct  9 12:56:21 darkstar postfix/smtpd[21708]: disconnect from
 MG>  ПК> email.wccta.net[207.177.68.11]

 MG> Все равно здесь что-то не так :-). Клиент получает 450 вместо 550 и будет
 MG> продолжать в течение n дней слать письмо на нечуществующий адрес.

 MG> Здесь до конца мне не понятно. Я всегда предполагал, что постфикс сначала
 MG> принимает письмо в очередь, а потом уже пробует его доставить в
 MG> мейлбокс. Здесь же действительно получается, что smtpd сразу передает RCPT
 MG> мейлбокс-траспорту (возможно для проверки юзера, тогда почему 450
 MG> возвращает?). Что-то не могу с ходу найти в документации объянения
 MG> происходящему.

Ага, все из-за reject_unverified_recipient в smtpd_recipient_restrictions,
который использует verify(8) сервер для проверки получателя посредством
посылки "зонда" (в данном случае, поскольку адрес признан как mydestination,
зонд шлется на local_transport, т.е. /var/run/cyrus/socket/lmtp).  А
возвращает smtpd 450, потому как такое по умолчанию прописано в
unverified_sender_reject_code.

Не сообразил сразу, т.к. никогда не использовал verify. Хотя, судя по варнингу
в ADDRESS_VERIFICATION_README, и правильно делал.

-- 
to my, trociny



Reply to: