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