Здравствуйте!
Возникла необходимость безусловно заблокировать (например режектнуть) доставку писем, отправляемых с определенных локальных ip-адресов на некоторые адреса E-Mail (рег. выражение). Примерно так:
[Rules]
client-ip:10.20.30.40 AND to:regex:^.*@blacklisted\.domain\.com$ stop REJECT
Но что написать в действии вместо REJECT? Штатно там предусмотрено только изменение параметров плагинов
Можно было бы легко сделать через плагин headresfilter, но у него нет условия выбора отправителя по ip-адресу. Конечно, можно сделать так:
RejectCondition = Received = '\[10\.20\.30\.40\]' AND To = '.*@blacklisted\.domain\.com'
Но КМК это не совсем надежно, т.к. "под раздачу" могут попасть и вполне допустимые сообщения, пришедшие из других сетей, у которых случайно оказалась такая же адресация, и заголовок Received: from ... [10.20.30.40] был установлен их почтовым сервером
Скомбинировать правила MailD и headersfilter?
[Rules]
client-ip:10.20.30.40 AND to:regex:^.*@blacklisted\.domain\.com$ stop headersfilter/RejectCondition=Received=.*, headersfilter/Action=Discard, quarantine=no
Так будет работать?
P.S. MailD 5.0.1
С уважением, Иван