Classe postfix check_*_access para verificar simultaneamente o remetente E o destinatário

Classe postfix check_*_access para verificar simultaneamente o remetente E o destinatário

Queremos permitir que alguns servidores específicos da nossa rede enviem e-mails sem autenticação. Eu sei disso check_sender_accesse check_recipient_accessambos podem testar o remetente ( MAIL FROM) ou o destinatário ( RCPT TO).

Para evitar o uso intenso, smtp_restriction_classesestou procurando uma maneira de fazer essa pesquisa imediatamente. Ou seja

# /etc/postfix/check_noauth_servers
root@bi-server     [email protected]
root@bi-server     [email protected]
user@reporting     [email protected]

Existe uma solução ou restrição de acesso que possa fazer essa pesquisa?

Responder1

Você parece estar fazendo duas perguntas não relacionadas.

O primeiro,

Queremos permitir que alguns servidores específicos da nossa rede enviem e-mails sem autenticação.

É facilmente resolvido colocando check_client_access na frente de permit_sasl_authenticated:

smtpd_recipient_restrictions = check_client_access hash:/etc/postfix/no-auth, permit_sasl_authenticated, reject_unauth_destination

e em /etc/postfix/no-auth:

your.server.name.or.ip    OK
  • A segunda parte da pergunta, entretanto, parece falar sobre mapas de acesso do remetente e do destinatário, ao mesmo tempo.

É exatamente para isso que smtpd_restriction_classesservem:

smtpd_restriction_classes = noauth
noauth = check_recipient_access hash:/etc/postfix/allowed_recipients
smtpd_recipient_restrictions = permit_sasl_authenticated, check_sender_access hash:/etc/postfix/allowed_senders, reject_unauth_destination

e em /etc/postfix/allowed_senders:

[email protected]  noauth
[email protected]  noauth

e em /etc/postfix/allowed_recipients:

[email protected]  OK
[email protected]  OK

A ordem em que você aplica as verificações de acesso depende de você.

Se você precisar de regras mais complexas (que combinem remetentes e destinatários em um cheque, por exemplo), consultepós-fwd, o daemon Postfix FireWall.

Isso permite regras complexas à la iptables, aplicadas como um servidor de políticas (check_policy_service); a vantagem de um serviço de política é que ele tem acesso a todos os parâmetros pré-DADOS (cliente, helo, remetente, destinatário) de uma só vez.

informação relacionada