Кто-нибудь может сказать мне, как отклонить все домены с определенным именем, но независимо от TLD? Я хочу заблокировать всю почту, приходящую с доменов с именем bulksender
, лайк bulksender.com
, bulksender.org
, bulksender.biz
, bulksender.vn
и т.п.
У меня есть файл postmap client_checks.postmap
который я включил в main.cf
как это:
check_client_access hash:/etc/postfix/client_checks.postmap
В этом файле я пробовал:
bulksender. REJECT 550 5.1.0 Go away!
Но не вышло.
Есть что-то вроде *@bulksender.*
который заблокировал бы все домены с именем bulksender, независимо от того, какой у них окончание TLD?
Постфикс с Поддержка PCRE позволяет использовать регулярные выражения для проверки адреса отправителя.
smtpd_recipient_restrictions = check_sender_access pcre:/etc/postfix/sender_access
Я используемый это для блокировки целых TLD
/\.icu$/ 554 https://blocked.icu/
но он также должен соответствовать вашим требованиям:
/@bulksender\./ 554 Go away!
/\100bulksender\./ 554 Go away!
Чтобы включить все поддомены этих доменов:
/@.*\.?bulksender\./ 554 Go away!
Заметь check_sender_access
делает это ограничение отправителя, но я намеренно использую его в smtpd_recipient_restrictions
заставляя его стрелять только после полного набора HELO
, MAIL FROM
и RCPT TO
команды. Таким образом, в журналах не будет отсутствовать информация о получателях на случай, если что-то пойдет не так.
В check_client_access
не проверяет адреса электронной почты, но клиент подключение к вашему SMTP-серверу:
check_sender_access type:table
Искать в указанномдоступ (5) база данных для
MAIL FROM
адрес, домен, родительские домены илиlocalpart@,
и выполните соответствующее действие.check_client_access type:table
Найдите в указанной базе данных доступа имя хоста клиента, родительские домены, IP-адрес клиента или сети, полученные путем удаления наименее значимых октетов. Увидетьдоступ (5) страницу руководства для подробностей.