como filtrar e rejeitar emails no postfix com base no endereço 'to'

2

Meu servidor CentOS está configurado apenas para email de saída. Eu preciso de um filtro para rejeitar e-mails direcionados a destinos selecionados. Por exemplo, se eu testar com

> mail -s "test"  [email protected]

Eu quero que isso seja rejeitado e não enviado. Eu explorei o

smtpd_recipient_restrictions

flag [e outros], mas não consegui fazer isso funcionar. Os logs ainda mostram que o email foi enviado e removido da fila.

Dentro do arquivo main.cf, e sob o smtpd_recipient_restrictions, eu tenho:

> check_sender_access hash:/etc/postfix/maps/access_sender

onde eu tenho, por exemplo

@trash.com     REJECT

Gostaria de acrescentar que este servidor retransmite mensagens para outro, mas espero filtrar e-mails indesejados antes de retransmiti-los para o host. Por favor ajude. Obrigado

    
por pi. 13.01.2016 / 15:44

1 resposta

4

A opção check_sender_access aplica-se apenas ao endereço "De". Para filtrar com base no endereço "Para", você pode fazer isso de duas maneiras.

Se você quiser filtrar apenas o endereço "Para", basta alterar o check_sender_access para check_recipient_access e manter seu arquivo hash atual.

Uma maneira mais extensível de filtrar é por cabeçalhos. Adicione o seguinte ao seu arquivo main.cf :

header_checks = regexp:/etc/postfix/header_checks

Em seguida, crie o seguinte arquivo em /etc/postfix/header_checks :

/^To:.*[email protected].*$/ DISCARD blocked
/^To:.*[email protected].*$/ DISCARD blocked
/^To:.*[email protected].*$/ DISCARD blocked
/^To:.*[email protected].*$/ DISCARD blocked

E reinicie o Postfix.

Observação - DISCARD continuará aparecendo para enviar a mensagem, mas a mensagem será descartada em silêncio. Se você quiser forçar a rejeição da mensagem, use REJECT .

Documentação de referência:

link link

    
por 13.01.2016 / 15:51