Рейтинг:0

Sievie для исходящей почты - голубятня

флаг jp

Мне нужно сделать фильтр для исходящей почты. Чтобы копировать сообщения, если «кому» содержит указанный адрес электронной почты. У меня есть:

# правило:[Копировать в slack]
если адрес: содержит "to" "[email protected]"
{
    перенаправить :copy "[email protected]";
}

и я пытаюсь

# правило:[Копировать в slack]
если адрес: содержит "to" "[email protected]"
{
    перенаправить: скопировать "[email protected]";
}

или же

# правило:[Копировать в ]
если адрес: содержит "to" "[email protected]"
{
      файл в "INBOX.Redmine";
}

Но каждый раз фильтр не работает.

Это работает только в том случае, если я отправляю с адреса, который у меня есть в «кому», или с другой локальной почты.

Любые идеи?

anx avatar
флаг fr
anx
Sieve интегрирован в Dovecot для срабатывания при *окончательной доставке* почты или при действиях через IMAP, а не при отправке. Пожалуйста, [отредактируйте] свой вопрос, чтобы уточнить контекст, в котором должен выполняться ваш скрипт. Как правило, отправленная почта не будет включать Dovecot, за исключением копии, которая может храниться в папке «Отправленные».
onev avatar
флаг jp
В данном случае «кому» — это внешняя электронная почта, например gmail.com.
onev avatar
флаг jp
Для локальных почтовых ящиков - работает исправно.
флаг in
он правильно работает для локальных почтовых ящиков, потому что это входящая почта для Dovecot. Dovecot не отправляет почту, это делает ваш MTA.
Рейтинг:1
флаг fr
anx

Это не работает, потому что это не может работать следующим образом: Если вы отправляете почту, вы отправляете ее на порт 465 напрямую в Postfix — скрипт Sieve выполняться не будет.

Если вы хотите использовать язык sieve для работы с исходящей почтой, вам придется приложить гораздо больше усилий, потому что он плохо интегрирован в обычное программное обеспечение, по крайней мере, далеко не так хорошо, как интеграция Pigeonhole Sieve в Dovecot, которая будет только триггер в двух конкретных случаях использования:

  1. при получении почты, т. е. конечная доставка этап почты, предназначенной для почтового ящика, которым управляет Dovecot, или
  2. при управлении почтовым ящиком, в частности действиях локального клиента или клиента, подключенного по IMAP, к почтовому ящику, которым управляет Dovecot.

Примечательно, что интеграция не будет обрабатывать случай отправки почты: хотя Dovecot включает прокси-сервер отправки, он, как правило, вообще не участвует в этом направлении, а в редких случаях, когда он используется, по-прежнему не обрабатывает Sieve.

Теперь у вас есть несколько вариантов:

  • запустить ваш скрипт для почты, которая хранится в почтовом ящике «отправлено» (но это не будет действовать на почту, которая не хранится в этом почтовом ящике)
  • замените свой скрипт встроенными функциями Postfix. получатель_bcc_maps приходит на ум
  • настроить постфикс header_checks просто отклонять почту, которая не соответствует вашей политике (например, пропускает желаемый заголовок To:, а затем отклоняет все неполные его версии)
  • настроить копию в каком-нибудь milter/filter
  • настройте (предпочтительно новый, локальный) адрес, который вы настроили для расширения до двух адресов, на которые вы хотите получать почту, пусть пользователи отправляют туда свою почту
  • направить почту для этого получателя в сценарий, возможно, с использованием вашего сценария Sieve (маловероятно, ваш лучший вариант: использование sieve вне варианта использования LDA просто плохо поддерживается каким-либо существующим программным обеспечением)
onev avatar
флаг jp
я пробую получатель_bcc_maps (эквивалент exim), но это работает только для адресов отправителя (мне нужны конкретные получатели) (а не пересылать только копию). ```copy_from_skrzynka: драйвер = перенаправление условие = ${if eq{$sender_address}{[email protected]}{да}{нет}} данные = [email protected] невидимый``` Но я не вижу глобальной функции для получателя. Я думаю о сценарии.Только как я могу отправить копии из каталога .Sent на выбранный адрес электронной почты
anx avatar
флаг fr
anx
Странно, что вы упоминаете *Exim*, но ваш вопрос помечен *Postfix*. Какому MTA вы подчиняетесь?
onev avatar
флаг jp
Извините, я дал неправильный тег. Эксим.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.