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

Postfix блокирует внутренние коммуникации

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

john@localdomain.com <---> julie@localdomain.com ОТКЛЮЧИТЬ

john@localdomain.com <---> tom@gmail.com ОК

julie@localdomain.com <---> tom@gmail.com ОК

Я уже пытался настроить правила ограничения доступа, например

    /etc/postfix/main.cf:
    smtpd_recipient_restrictions =
        ...
        check_recipient_access hash:/etc/postfix/protected_destinations
        ...the usual stuff...

    smtpd_restriction_classes = insiders_only
    insiders_only = check_sender_access hash:/etc/postfix/insiders, reject

/etc/postfix/protected_destinations:
    all@my.domain   insiders_only
    all@my.hostname insiders_only

/etc/postfix/insiders:
    my.domain       OK  matches my.domain and subdomains
    another.domain  OK  matches another.domain and subdomains

Но это не помогло вызвать блокировку локального отправителя до проверки локального получателя и блокировку локального получателя до проверки внешнего.

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

Для вашего случая вам нужно изменить его

# /etc/postfix/main.cf:
smtpd_recipient_restrictions =
    ...
    check_recipient_access hash:/etc/postfix/protected_destinations
    ...the usual stuff...

smtpd_restriction_classes = reject_insiders
reject_insiders = check_sender_access hash:/etc/postfix/insiders, permit

# /etc/postfix/protected_destinations:
localdomain1.example.com   reject_insiders
localdomain2.example.com   reject_insiders

# /etc/postfix/insiders:
localdomain1.example.com   REJECT local email isn't allowed
localdomain2.example.com   REJECT local email isn't allowed