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

Как я могу заставить Postfix отклонять пересылку почты на основе адресов?

Я хочу узнать, как запустить почтовый сервер, запустив почтовый сервер.

Чтобы быть в некоторой степени ответственным и не быть открытым ретранслятором, я хочу, чтобы Postfix отклонял всю почту, которая не адресована <допустимому пользователю> @ <hostname> ИЛИ (от <допустимого пользователя> @ <hostname> И соединение идет с localhost ). Будет ли он делать это по умолчанию или мне нужно будет настроить некоторую конфигурацию?

Postfix должен быть правильно настроен для не открытое реле, из коробки. Вам придется явно изменить настройки, чтобы сделать его открытым реле.

Есть много проверок, которые вы можете поставить внутри main.cf которые позволяют делать именно то, что вы хотите. Некоторые могут быть на месте, другие - нет. Например, Debian и Ubuntu часто имеют разумные значения по умолчанию, тогда как RHEL и т. Д. Часто не имеют.

В каноническом main.cf у вас обычно есть mydestination быть разделенным запятыми списком доменных имен, разрешенных в качестве доменов назначения. Кроме того, вы, вероятно, разрешили бы принимать только определенные вещи, такие как ретрансляция, установив mynetworks в список IP-адресов и подсетей (CIDR). И затем, чтобы собрать все вместе на основе (среди прочего) этих двух значений, которые вы установили smtpd_recipient_restrictions, например вот выдержка:

smtpd_recipient_restrictions =
    permit_sasl_authenticated,
    reject_invalid_hostname,
    reject_non_fqdn_sender,
    reject_non_fqdn_recipient,
    reject_unknown_sender_domain,
    reject_unknown_recipient_domain,
    reject_unauth_pipelining,
    permit_mynetworks,
    reject_unauth_destination,
    ...

Порядок ограничений делает иметь значение. Вы можете увидеть, как мы уже ограничиваем прием сообщений, прежде чем разрешить mynetworks (permit_mynetworks).

Лучше всего читать отличную документацию, например здесь о теме, которая вас больше всего беспокоит.