Назад | Перейти на главную страницу

Как я могу отклонить письмо, отправленное конкретному пользователю на postfix и dovecot?

В моей компании есть пара заблокированных учетных записей пользователей. Некоторые спамеры нацелены на одну из них. Спамеры отправляют письма на аккаунт каждый день. Как я могу отклонить письмо, отправленное заблокированному пользователю?

Вы пытаетесь отклонить почту к заблокированный пользователь, а не просто почта от какого-то известного отправителя / домена? Тогда вам следует использовать check_recipient_access вместо того check_sender_access.

Для main.cf:

smtpd_recipient_restrictions =
    . . . 
    check_recipient_access hash:/etc/postfix/denied_recipients,
    . . . 

И /etc/postfix/denied_recipients имеет тот же формат, но для каждого получателя:

lockeduser@example.com   REJECT   Mailbox unavailable.

Поскольку это тоже hash: Berkeley DB, помните postmap /etc/postfix/denied_recipients.

В postfix вы можете создать файл / etc / postfix / sender_access, который в основном выглядит так:

# ADDRESS PATTERNS         # ACTION
sender@example.com         550 Blacklisted
domain.com                 REJECT
user@                      REJECT

Преобразуйте это в хеш, используя postmap и добавьте в свою конфигурацию такую ​​строку:

smtpd_recipient_restrictions = check_sender_access hash:/etc/postfix/sender_access

Однако при этом сообщение с ответом будет отклонено или занесено в черный список, и вы можете не захотеть, чтобы отправитель знал, что оно отклоняется. Вы также можете захотеть, чтобы письмо отклонялось только для определенного пользователя, и в этом случае я бы предложил использовать procmail или сервер политики. Procmail - мощный инструмент, но в него сложно проникнуть. Архитектура Postfix означает, что внешний сервер, даже простой spamassassin может делать то, что вам нужно.