Когда я пытаюсь отправить письмо на user1@domain.tk оно отбрасывается. В почтовом логе:2019-02-11 04:44:07 1gt3Ru-0005D1-W7 <= mailer@domain.tk H=(dev.leagues.domain.tk) [127.0.0.1] P=esmtp S=785 id=fc84d76c89fda9944c18621cfc4419ae@dev.leagues.domain.tk
2019-02-11 04:44:07 1gt3Ru-0005D1-W7 => :blackhole: <user_another@another_domain.tk> R=virtual
2019-02-11 04:44:07 1gt3Ru-0005D1-W7 CompletedЧто означает этот blackhole? типа перенаправление письма на /dev/null?
В каталоге /etc/exim/virtual присутствуют несколько файлов с именами доменов:
domain.tk
another_domain.tk
и т.д.
В файле /etc/exim/virtual/another_domain.tk есть такая строка:
kev: user_another
Файл /etc/exim/virtual/domain.tk состоит из строчек типа:
donotreply: :blackhole:
webmaster: kev
unsubscribe: kev
webdev: webdev
kev: kev
user1: kev
user2: kev
user3: kev
*: :blackhole:
Т.е. другими словами почта адресованная user@domain.tk почему-то перенаправляется на user_another@another_domain.tk и все равно никуда не доходит...И непонятно что означает последняя строка в файле:
*: :blackhole:
В exim.conf так описан роутер virtual:virtual:
driver = redirect
allow_fail
domains = +virtual_domains
data = ${lookup{$local_part}lsearch*{/etc/exim/virtual/$domain}}
no_more
pipe_transport = address_pipe
также в exim.conf присутствует:domainlist local_domains = @
domainlist relay_to_domains = dsearch;/etc/exim/virtual
domainlist virtual_domains = dsearch;/etc/exim/virtual
hostlist host_auth_accept_relay = *
> В exim.conf так описан роутер virtual:
> virtual:
> driver = redirect
> allow_fail
> domains = +virtual_domains
> data = ${lookup{$local_part}lsearch*{/etc/exim/virtual/$domain}}
> no_more
> pipe_transport = address_pipeno_more должен идти в самом конце
>> В exim.conf так описан роутер virtual:
>> virtual:
>> driver = redirect
>> allow_fail
>> domains = +virtual_domains
>> data = ${lookup{$local_part}lsearch*{/etc/exim/virtual/$domain}}
>> no_more
>> pipe_transport = address_pipe
> no_more должен идти в самом концесделал так:
virtual:
driver = redirect
allow_fail
domains = +virtual_domains
data = ${lookup{$local_part}lsearch*{/etc/exim/virtual/$domain}}
pipe_transport = address_pipe
no_moreне помогло...
> сделал так:
> virtual:
> driver = redirect
> allow_fail
> domains = +virtual_domains
> data = ${lookup{$local_part}lsearch*{/etc/exim/virtual/$domain}}
> pipe_transport = address_pipe
> no_more
> не помогло...и не должно, no_more вы дальше прерываете дальнейшую обработку.
> И непонятно что означает последняя строка в файле:
> *: :blackhole:* означает для всех остальных (catch-all), :blackhole: означает не принимать/дропать
в итоге получаете: для всех остальных пользователей дропать почту.
> * означает для всех остальных (catch-all), :blackhole: означает не принимать/дропать
> в итоге получаете: для всех остальных пользователей дропать почту.ясненько, спс.
Когда я запустил тестирование проверки почты:# exim -bt -d user1@domain.tk 2>&1
обнаружил такие строки:
internal_search_find: file="/etc/exim/virtual/domain.tk"
type=lsearch key="user1"
file lookup required for user
in /etc/exim/virtual/domain.tk
lookup yielded: kev
expanded: kev
file is not a filter file
parse_forward_list: kev
extract item: kev
virtual router generated kev@another_domain.tk
errors_to=NULL transport=NULL
uid=unset gid=unset home=NULL
routed by virtual router
envelope to: user1@domain.tk
transport: <none>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>Considering kev@another_domain.tk
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>routing kev@another_domain.tk
Получается, что почему-то Exim не считает файл /etc/exim/virtual/domain.tk filter file и перенаправляет письмо далее на kev@another_domain.tk?
> Получается, что почему-то Exim не считает файл /etc/exim/virtual/domain.tk filter file
> и перенаправляет письмо далее на kev@another_domain.tk?читает все правильно, но вот считает another_domain.tk как основной домен. как уже ранее сказал, без полного конфига exim сидеть и гадать смысла нет.
> Т.е. другими словами почта адресованная user@domain.tk почему-то перенаправляется на
> user_another@another_domain.tk и все равно никуда не доходит...скорее всего вы хотели сказать user1@domain.tk. если webmaster'у отправить письмо, оно тоже дропается?
потому что по файлу видно, если письмо адресовано user1@domain.tk то оно должно уходить kev. для kev есть тоже правило kev ? потом получается почему-то срабатывает kev: user_another (причем для другого домена).
может скорее всего использовать типа: user1: kev@localhost чтобы не образовывать петли?
> скорее всего вы хотели сказать user1@domain.tk. если webmaster'у отправить письмо, оно
> тоже дропается?да, письмо webmaster_у тоже дропается
> потому что по файлу видно, если письмо адресовано user1@domain.tk то оно должно
> уходить kev. для kev есть тоже правило kev ? потом получается
> почему-то срабатывает kev: user_another (причем для другого домена).есть просто такое правило для kev:
kev kev> может скорее всего использовать типа: user1: kev@localhost чтобы не образовывать петли?
нет, не помогло, тоже письмо отбрасывается, пытаясь его доставить
another_use@another_domain.tk
Почему-то так происходит:file lookup required for webmaster
in /etc/exim/virtual/domain.tk
lookup yielded: kev
expanded: kev
file is not a filter file
parse_forward_list: kev
extract item: kev
virtual router generated kev@another_domain.tk
errors_to=NULL transport=NULL
uid=unset gid=unset home=NULL
routed by virtual router
envelope to: webmaster@domain.tk
transport: <none>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>Considering kev@another_domain.tk
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
> есть просто такое правило для kev:
> kev kevдля чего это правило?
для проверки может попробуете проверить убрав kev: user_another для второго домена?с вашими конфигами кусочками очень сложно разобраться ;)
> скорее всего вы хотели сказать user1@domain.tk.нет именно так, когда я пытаюсь слать почту на user1@domain.tk она отправляется на kev@another_domain.tk и дропается...
> может скорее всего использовать типа: user1: kev@localhost чтобы не образовывать петли?Когда я указал
user1: kev@localhostпоявилось:
dnslookup router called for kev@localhost
domain = localhost
DNS lookup of localhost (MX) gave HOST_NOT_FOUND
returning DNS_NOMATCH
dnslookup router declined for kev@localhost
"more" is false: skipping remaining routers
no more routers
kev@localhost is undeliverable: Unrouteable address
А что значит строка file is not a filter file в выводе:file lookup required for webmaster
in /etc/exim/virtual/domain.tk
lookup yielded: kev
expanded: kev
file is not a filter file
parse_forward_list: kev
extract item: kevполучается файл /etc/exim/virtual/domain.tk не соответствует каким-то правилам форматирования?
>[оверквотинг удален]
> user1: kev@localhost
> появилось:
> dnslookup router called for kev@localhost
> domain = localhost
> DNS lookup of localhost (MX) gave HOST_NOT_FOUND
> returning DNS_NOMATCH
> dnslookup router declined for kev@localhost
> "more" is false: skipping remaining routers
> no more routers
> kev@localhost is undeliverable: Unrouteable addressне надо просто тыкая указывать. формат virtual файла такой: пользователь: почтовый_ящик@domain.tld
если указали kev@localhost, exim должен понимать, для того нужно поправить:
domainlist local_domains = @:localhost:dsearch;/etc/exim4/virtual
.forward случаем в папке kev нету?