postfix фильтрует входящие письма на основе «mail from» и «rcpt to»

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

Я считаю, что это должно быть просто, потому что адреса «mail from» и «rcpt to» поставляются прямо в начале переговоров smtp. Но я не могу найти способ сделать это с помощью postfix, и не уверен, нужен ли мне дополнительный пакет (milter?).

3 Solutions collect form web for “postfix фильтрует входящие письма на основе «mail from» и «rcpt to»”

Добавьте в класс ограничений . Например:

/etc/postfix/main.cf: smtpd_recipient_restrictions = check_recipient_access hash:/etc/postfix/recipient_access smtpd_restriction_classes = no_russians no_russians = check_sender_access pcre:/etc/postfix/no_russians /etc/postfix/recipient_access: recipient1@mydomain.com no_russians recipient2@mydomain.com no_russians /etc/postfix/no_russians: /\.ru$/ REJECT 

Посмотрите директивы smtpd_recipient_restrictions и smtpd_recipient_restrictions . Используя их, вы можете настроить хеш-карты, содержащие нужные вам фильтры.

 smtpd_sender_restrictions = check_sender_access hash:/etc/postfix/sender_access /etc/postfix/sender_access: .ru REJECT someone@domain.com REJECT и smtpd_sender_restrictions = check_sender_access hash:/etc/postfix/sender_access /etc/postfix/sender_access: .ru REJECT someone@domain.com REJECT 

См. Также http://www.postfix.org/ADDRESS_VERIFICATION_README.html и http://www.postfix.org/SMTPD_ACCESS_README.html.

В основном копирование / вставка из http://code.metager.de/source/xref/postfix-debian/examples/smtpd-policy/greylist.pl#257 и адаптация, как мы идем, вот простой скрипт Perl для реализации no_ru.pl как простой скрипт check_policy_service . См. http://www.postfix.org/SMTPD_POLICY_README.html, как его подключить.

Untested, YMMV и т. Д. Вероятно, вам нужно use и, возможно, инициализировать несколько объектов, таких как syslog сначала попробуйте это из командной строки.

 # Unbuffer standard output. # select((select(STDOUT), $| = 1)[0]); # # Receive a bunch of attributes, evaluate the policy, send the result. # %attr = (); $ru_sender = $ru_rcpt = 0; while (<STDIN>) { if (/^\s*sender=.*\.ru\n/i) { $ru_sender = 1; } elsif (/^\s*recipient=.*\.ru$/i) { $ru_rcpt = 1; } elsif ($_ eq "\n") { if ($verbose) { syslog $syslog_priority, "ru_sender %i, ru_rcpt %i", $ru_sender, $ru_rcpt; } $action = ($ru_sender && $ru_rcpt) ? "reject" : "dunno"; syslog $syslog_priority, "Action: %s", $action if $verbose; print STDOUT "action=$action\n\n"; %attr = (); } else { chop; syslog $syslog_priority, "warning: ignoring garbage: %.100s", $_; } } 
  • Проблема подключения SMTP в Zenoss («Соединение неожиданно закрыто»)
  • exim4 на debian 7.8 отправлено письмо никогда не приходит @gmail
  • Как включить перенаправление SMTP?
  • SMTP Auth - SASL на Dovecot, Postfix и CentOS 6.2 (и Open-Xchange)
  • Попытка использовать TLS SMTP против Exim, получив ошибку безопасности; что не так?
  • Centos 6 и postfix: Внутренние сообщения электронной почты, отложенные / telnet, были отключены из SSH
  • gpg: дешифрование без пароля работает в терминале, но не в msmtp / mutt на основе tmux (невозможно открыть / dev / tty)
  • Доступ к ретрансляции запрещен при использовании SMTP для внешних получателей POSTFIX FREEBSD
  • Исправления Sendmail «Сообщение об ошибке 530» требуется при отправке authinfo
  • Почему служба SMTP работает по умолчанию после установки?
  • Postfix + dovecot, отключить проверку подлинности на порту 25
  • Linux и Unix - лучшая ОС в мире.