Пересылка электронной почты виртуального пользователя с помощью фильтра exim

Пересылка электронной почты виртуального пользователя с помощью фильтра exim

Я использую файловую конфигурацию (без dbm и sql) для моих нескольких виртуальных доменов/пользователей с exim/dovecot.

Мой configureсодержит следующее routers:

virtual_filter:
  driver = redirect
  allow_filter
  no_check_local_user
  condition = ${if exists{/home/mail/${domain}/${local_part}/filter}{yes}{no}}
  domains = dsearch;/etc/mail/virtual
  router_home_directory = /home/mail/${domain}/${local_part}
  user = mailnull
  group = mail
  file = /home/mail/${domain}/${local_part}/filter
  file_transport = virtual_address_file
  pipe_transport = address_pipe
  retry_use_local_part
  no_verify

virtual_user:
     ....

virtual_aliases:
     ....
     no_more

поэтому, если он существует, /home/mail/virtualdomain.com/username/filterexim будет его использовать.

Один из моих пользователей попросил скопировать все входящие письма на его аккаунт gmail. Потому что

  • в моей конфигурации нет .forwardпроверки виртуальных пользователей
  • и aliasesдля виртуальных доменов проверяются толькопослемаршрут virtual_userдоставки, поэтому только если указанный адрес не имеет виртуального почтового ящика
  • но вышеприведенное virtual_filterявляется первым правилом в маршрутизаторах

ищу способ скопировать всю входящую электронную почту для этого пользователя, используя его filter.

Я попробовал

unseen deliver <[email protected]>

но это привело только к отправке всех писем на gmail без доставки на dovecot, а я хочу, чтобы оба варианта: 1.) через маршрут virtual_userдоставлялись как стандарт,и 2.) отправьте копию сообщения[email protected]

Любое предложение?

решение1

Только что выяснил, достаточно добавить:

/home/mail/myvirtualdomain.com/myuser/filter

следующие две строки

unseen noerror deliver <[email protected]>
deliver <[email protected]>

Итак, отправьте одну копию на Gmail, а другую на обычный почтовый ящик.

Связанный контент