Exim4 - временно заморозить исходящие письма от конкретного пользователя

Мне нужно временно заморозить исходящие письма от конкретного отправителя с exim4. Отправитель входит в систему с помощью удаленного SMTP (т. Е. Через TCP/IP).

Я хочу заблокировать (но не запретить) все его электронные письма, чтобы я мог проверить очередь и разрешить или запретить дальнейшую обработку.

Любая помощь будет оценена.

2 ответа

Решение

Вам нужно будет внести следующие изменения в свой exim.conf файл:

В главном разделе конфигурации убедитесь, что вы включили acl_smtp_mail контролировать следующим образом:

acl_smtp_mail = acl_check_mail

Обязательно поменяй acl_check_mail на фактическое имя вашего списка контроля доступа, который обрабатывает acl_smtp_mail

Затем в acl_check_rcpt В разделе конфигурации ACL создайте новое правило:

accept   condition = ${lookup{$sender_address}lsearch{/etc/exim/freezelist_sender_addresses}{1}{0}}
         control   = freeze/no_tell


Сохраните файл конфигурации. Теперь создайте файл /etc/exim/freezelist_sender_addresses и поместите все адреса отправителей, которые должны быть заморожены в этот файл, по одному адресу в строке. Убедитесь, что вы установили правильные разрешения для этого файла, чтобы exim мог его прочитать.

Все письма отправлены с адресов в /etc/exim/freezelist_sender_addresses теперь будет принят в очередь (при условии, что они проходят другие ACL), а затем автоматически заморожен exim.

Чтобы разморозить эти сообщения, выполните эту команду, заменив user@domain.tld адресом отправителя, чья почта была заморожена:

exiqgrep -i -f user@domain.tld | xargs exim -Mt 

Можно ли использовать эту команду для разблокировки по идентификатору электронной почты или это другая команда?

Я имею в виду, если я захочу разморозить по адресу электронной почты, можно ли это использовать?

exiqgrep -i -f 1pUg6E-0003Dt-83 | xargs exim -Mt

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