Доброго времени суток!
При отправки почты нескольким адресатам своего домена, postfix длительное время проверяет, существует ли данный пользователь в базе sql, затем, если одного из получателей нет в этой базе, то письмо не уходит, в почтовом клиенте появляется ошибка "Recipient address rejected: User unknown in virtual mailbox table." Собственно вопрос: возможно ли сделать так, чтобы проверка не происходила в момент отправки, письмо отправлялось, а по несуществующим ящикам присылалось ответное письмо "Recipient address rejected: User unknown in virtual mailbox table."?
Нужно поправить именно для отправки виртуальным пользователям. Подскажите, где посмотреть?
> Нужно поправить именно для отправки виртуальным пользователям. Подскажите, где посмотреть?Не надо так делать.
>> Нужно поправить именно для отправки виртуальным пользователям. Подскажите, где посмотреть?
> Не надо так делать.Почему же? Для внутренних пользователей нечего бояться... Проблема заключается в скорости отправки сообщений. Может есть возможность отключить данную проверку для определенных учеток?
>postfix длительное время проверяет, существует ли данный пользователь в базе sql,А длительное время - это сколько ?
main.cflocal_recipient_maps =
> main.cf
> local_recipient_maps =В main.cf local_recipient_maps присутствует в
proxy_read_maps = $canonical_maps $lmtp_generic_maps $local_recipient_maps $mydestination $mynetworks $recipient_bcc_maps $recipient_canonical_maps $relay_domains $relay_recipient_maps $relocated_maps $sender_bcc_maps $sender_canonical_maps $smtp_generic_maps $smtpd_sender_login_maps $transport_maps $virtual_alias_domains $virtual_alias_maps $virtual_mailbox_domains $virtual_mailbox_maps $smtpd_sender_restrictions
в master.cf
127.0.0.1:10025 inet n - - - - smtpd
-o content_filter=
-o local_recipient_maps=
-o relay_recipient_maps=
-o smtpd_restriction_classes=
-o smtpd_delay_reject=no
-o smtpd_tls_security_level=none
-o smtpd_client_restrictions=permit_mynetworks,reject
-o smtpd_helo_restrictions=
-o smtpd_sender_restrictions=
-o smtpd_recipient_restrictions=permit_mynetworks,reject
-o smtpd_end_of_data_restrictions=
-o mynetworks_style=host
-o mynetworks=127.0.0.0/8
-o strict_rfc821_envelopes=yes
-o smtpd_error_sleep_time=0
-o smtpd_soft_error_limit=1001
-o smtpd_hard_error_limit=1000
-o smtpd_client_connection_count_limit=0
-o smtpd_client_connection_rate_limit=0
-o receive_override_options=no_header_body_checks,no_unknown_recipient_checks,no_address_mappingsто есть нужно в main.cf и master.cf удалить local_recipient_maps?
долго - это секунд 10 при четырех адресатах
> то есть нужно в main.cf и master.cf удалить local_recipient_maps?
> долго - это секунд 10 при четырех адресатахlocal_recipient_maps в этом случае должен быть пустым
local_recipient_maps =
добавил в самый низ main.cf local_recipient_maps =
service postfix reload
все равно при отправке "Ошибка отправления почты. Почтовый сервер ответил: 5.1.1 <ss@domen.ru>: Recipient address rejected: User unknown in virtual mailbox table. Проверьте правильность написания адреса ss@domen.ru и попробуйте снова."
> добавил в самый низ main.cf local_recipient_maps =# postconf -n |grep local_recipient_maps
> # postconf -n |grep local_recipient_mapsroot@mail:/etc/postfix# postconf -n |grep local_recipient_maps
local_recipient_maps =
proxy_read_maps = $canonical_maps $lmtp_generic_maps $local_recipient_maps $mydestination $mynetworks $recipient_bcc_maps $recipient_canonical_maps $relay_domains $relay_recipient_maps $relocated_maps $sender_bcc_maps $sender_canonical_maps $smtp_generic_maps $smtpd_sender_login_maps $transport_maps $virtual_alias_domains $virtual_alias_maps $virtual_mailbox_domains $virtual_mailbox_maps $smtpd_sender_restrictions
Ваших виртуальных пользователей перевести в локальные.
> Ваших виртуальных пользователей перевести в локальные.По другому никак? С внешних ящиков приходят письма на правильные адреса, по неверным - редирект. Хочется чтобы и для локальных был редирект.
The local_recipient_maps parameter specifies lookup tables with all names or addresses of local recipients. A recipient address is local when its domain matches $mydestination, $inet_interfaces or $proxy_interfaces. If a local username or address is not listed in $local_recipient_maps, then the Postfix SMTP server will reject the address with "User unknown in local recipient table".The default setting, shown below, assumes that you use the default Postfix local(8) delivery agent for local delivery, where recipients are either UNIX accounts or local aliases:
/etc/postfix/main.cf:
local_recipient_maps = proxy:unix:passwd.byname $alias_mapsTo turn off unknown local recipient rejects by the SMTP server, specify:
/etc/postfix/main.cf:
local_recipient_maps =That is, an empty value. With this setting, the Postfix SMTP server will not reject mail with "User unknown in local recipient table". Don't do this on systems that receive mail directly from the Internet. With today's worms and viruses, Postfix will become a backscatter source: it accepts mail for non-existent recipients and then tries to return that mail as "undeliverable" to the often forged sender address.
> To turn off unknown local recipient rejects by the SMTP server, specify:
> /etc/postfix/main.cf:
> local_recipient_maps =Дело в том что при отправки почты с внешнего адреса на несуществующий адрес, письмо принимается, хотя local_recipient_maps не прописан в main.cf. Как же всетаки заставить postfix выполнять проверку после отправки внутренний пользователь -> внутренний пользователь?