Код: Выделить всё
begin routers
dnslookup:
driver = dnslookup
debug_print = "R: dnslookup for $local_part@$domain"
domains = ! +local_domains
transport = remote_smtp
pass_on_timeout
ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8
no_more
# следующий роутер будет в работе, если сработает pass_on_timeout от предыдущего роутера
notlocal_smarthost:
driver = manualroute
debug_print = "R: notlocal_smarthost for $local_part@$domain"
domains = !+local_domains
transport = remote_smtp
route_list = * mail.domen.ru byname
# здесь все как у всех, вопросов нет
system_aliases:
driver = redirect
debug_print = "R: system_aliases for $local_part@$domain"
allow_fail
allow_defer
data = ${lookup mysql{SELECT `goto` FROM `alias` WHERE `address`='${quote_mysql:$local_part@$domain}' OR$
`address`='${quote_mysql:@$domain}'}}
headers_add = "X-Delivered-To: $local_part@$domain"
# А дальше ступор. Я использую DSPAM для проверки входящей почты. Вот вроде бы этот роутер все делает правильно
# но является типом accept. Т.е. если принял - то все. А как же обрабатываются остальные роутеры?
dspam_spamscan_router:
driver = accept
debug_print = "R: dspam_spamscan_router for $local_part@$domain"
domains = +local_domains
no_verify
condition = "${if and {{!eq {$received_protocol}{spam-scanned}} \
{!eq {$received_protocol}{local}} } {1}{0}}"
transport = dspam_spamcheck_transport
require_files = /usr/bin/dspam
address_test = false
# дальше у меня идут vacation_director
vacation_director:
driver = accept
debug_print = "R: vacation_director for $local_part@$domain"
domains = ${lookup mysql{SELECT domain FROM vacation WHERE \
domain='${quote_mysql:$domain}' AND \
email='${quote_mysql:$local_part@$domain}' AND \
active='1'}{$value}}
transport = vacation_autoreply
unseen
# а дальше передаем dovecot
dovecot_user:
driver = accept
debug_print = "R: dovecot_user for $local_part@$domain"
condition = ${lookup mysql{SELECT `goto` FROM \
`alias` WHERE \
`address`='${quote_mysql:$local_part@$domain}' OR \
`address`='${quote_mysql:@$domain}'}{yes}{no}}
transport = dovecot_delivery