Parece que o seu caso foi semelhante a este exemplo de documentação do Amavisd
If for some reason SASL users connect to port 25, as an alternate method you could have all clients in Postfix' $mynetworks and SASL auth senders bypass checks and let everything else fall through to a catchall that sets the content_filter.
#main.cf
content_filter = smtp-amavis:[127.0.0.1]:10026
smtpd_data_restrictions =
reject_unauth_pipelining
permit_mynetworks
permit_sasl_authenticated
check_client_access regexp:/etc/postfix/filter-catchall.regexp
# /etc/postfix/filter-catchall.regexp:
/^/ FILTER smtp-amavis:[127.0.0.1]:10024
Neste modo,
- O usuário do SASL terá permissão de
permit_sasl_authenticated
para que ele caia no parâmetrocontent_filter
, ou seja,content_filter = smtp-amavis:[127.0.0.1]:10026
. - Outro email vai cair em catchall
check_client_access regexp:/etc/postfix/filter-catchall.regexp
. Então, ele passará pelo smtp-amavis: [127.0.0.1]: 10024.
A última parte é configurar o banco de políticas separado nas portas 10024 e 10026.
A configuração acima pode ser estendida para permitir a lista de permissões com base em outro fator, por exemplo: nome de usuário e domínio do remetente SASL.
-
Para o nome de usuário do SASL, você pode usar check_sasl_access antes do permit_sasl_authenticated. Observação: esse recurso estava disponível para o Postfix 2.11 e posterior.
# main.cf ... check_sasl_access hash:/etc/postfix/amavis-bypass-sasl permit_sasl_authenticated ... #/etc/postfix/amavis-bypass-sasl # Use this when smtpd_sasl_local_domain is empty. username FILTER smtp-amavis:[127.0.0.1]:10026 # Use this when smtpd_sasl_local_domain=example.com. [email protected] FILTER smtp-amavis:[127.0.0.1]:10026
-
Para o domínio do remetente, você pode usar check_sender_access
# main.cf ... check_sender_access hash:/etc/postfix/amavis-bypass-sender permit_sasl_authenticated ... #/etc/postfix/amavis-bypass-sasl # Use this when smtpd_sasl_local_domain is empty. internal.example.com FILTER smtp-amavis:[127.0.0.1]:10026 # Use this when smtpd_sasl_local_domain=example.com. whitelist.example.org FILTER smtp-amavis:[127.0.0.1]:10026