Как отключить проверки SPF для локальных сетей?

Вопрос или проблема

При настройке Postfix, как мне требовать SPF, но только если это не от отправителя из локальной сети? Я попробовал следующее:

smtpd_recipient_restrictions=
    reject_invalid_hostname,
    permit_sasl_authenticated,permit_mynetworks,
    check_policy_service unix:private/policyd-spf,
    reject_unknown_helo_hostname

…и я думал, что в таком порядке permit_networks будет проверяться перед проверкой политики SPF и разрешит отправку. Однако это не так, и SPF не проходит, отклоняя любые письма из локальной сети. Я не уверен, как решить эту проблему.

Если это важно, я пробовал это на Postfix 3.9.

Ответ или решение

Чтобы отключить проверки SPF для локальных сетей в Postfix, вам необходимо правильно настроить порядок проверок в вашей конфигурации. В вашем случае приоритет правил оказывается некорректным, что и приводит к отказу в обработке писем от локальных отправителей.

Ниже представлен корректный пример конфигурации, который позволит не выполнять проверки SPF для отправителей из локальной сети:

smtpd_recipient_restrictions =
    reject_invalid_hostname,
    permit_sasl_authenticated,
    permit_mynetworks,
    # Для проверки SPF переместите check_policy_service после permit_mynetworks
    check_policy_service unix:private/policyd-spf,
    reject_unknown_helo_hostname

Изменение здесь заключается в том, что check_policy_service unix:private/policyd-spf должно идти после permit_mynetworks. Таким образом, если письмо отправлено из одной из ваших локальных сетей (определенных в параметре mynetworks), то оно будет пропущено, и проверка SPF не будет производиться.

Если вы также хотите убедиться, что настройки mynetworks корректно определены, добавьте их в конфигурацию, если это еще не сделано. Пример конфигурации для mynetworks может выглядеть следующим образом:

mynetworks = 127.0.0.0/8, [::1]/128, YOUR_LOCAL_NETWORK/24

Где YOUR_LOCAL_NETWORK/24 – это ваша локальная сеть, например 192.168.1.0/24.

После внесения изменений не забудьте перезапустить Postfix для применения новой конфигурации:

sudo systemctl restart postfix

Итак, пересмотрите и скорректируйте ваши настройки, как указано выше, для успешного отключения проверок SPF для локальных сетей. Если у вас по-прежнему возникают трудности, проверьте логи Postfix для получения дополнительной информации о том, почему проверка SPF может все еще ошибаться для ваших локальных отправителей.

Оцените материал
Добавить комментарий

Капча загружается...