Exim: молча отбрасывать сообщения указанным получателям?

У меня есть старое php-приложение, которое раньше отправляло журнал отладочных писем по каждому аспекту его работы. Из-за того, что никто не хочет отключать эту функцию, а также из-за того, что однажды нам может понадобиться эта рассылка для повторной отправки, я просто хочу остановить сообщения для некоторых получателей на моем Exim.

Таким образом, вопрос заключается в следующем: как я могу молча отбрасывать (скажем, перенаправлять в черную дыру) сообщения, которые отправляются получателям, адреса которых указаны в текстовом файле? Адрес является внешним, а не локальным.

Забавно сказать, что сравнить $local_part@$domain с текстовым файлом довольно просто, но я не смог найти переменную одного получателя. Я могу представить, что мне следует создать новый маршрутизатор в конфигурации exim,

driver = redirect
data   = :blackhole:

но я не смог построить правильное условие.

Возможно ли это вообще, и как правильно его заархивировать?

Спасибо!

1 ответ

Решение
dropper:
    driver          = accept
    condition       = ${lookup{$local_part}lsearch{/path/drop.list}{yes}}
    transport       = null_transport

/path/drop.list:

aaron
amanda
bob
. . . . . 

Каждый раз, когда приходит сообщение для указанного пользователя, оно будет отброшено. Большим преимуществом этого является то, что список проверяется для каждого входящего электронного письма. Таким образом, когда вы хотите включить / отключить получение сообщений для любого пользователя в любой момент, вы просто удаляете / добавляете имя пользователя (или комментируете / раскомментируете имя пользователя) в drop.list файл; перезагрузка exim не требуется.

Другие вопросы по тегам