Certifique-se de que os mapas dos destinatários estejam configurados corretamente em main.cf ou você provavelmente terá um backscatter. Pelo menos, em seguida, saltando não será tão ofensivo.
Para rejeitar mensagens, adicione uma entrada para main.cf como:
smtpd_recipient_restrictions = permit_mynetworks,
# permit_sasl_authenticated,
reject_non_fqdn_sender,
reject_non_fqdn_recipient,
reject_unknown_sender_domain,
reject_unlisted_recipient, # !!! should strictly enforce relay_recipient_maps
reject_unknown_recipient_domain, # less strict, probably redundant on most configurations
reject_unauth_pipelining,
reject_unauth_destination,
reject_invalid_hostname,
reject_non_fqdn_hostname,
# check_policy_service unix:private/spf-policy,
reject_multi_recipient_bounce
Algumas dessas verificações posteriores, como rejeitar non_fqdn_hostname, são desejáveis, mas talvez problemáticas ou inúteis em um ambiente de LAN; permit_mynetworks deve permitir que você trabalhe em torno disso. Eles estão chegando ao fim porque provavelmente é o uso intensivo da CPU para checar o DNS. A autenticação SPF e SASL é desejável, mas você não diz se as usa.
Veja a configuração do postconf .
Para obter um controle mais refinado e responder à sua segunda pergunta, use as verificações de cabeçalho do postfix. main.cf recebe uma linha como:
header_checks = regexp:/etc/postfix/header_checks
Então / etc / postfix / header_checks recebe todos os tipos de regex
/^From: "spammer/ REJECT
/^Received: from .*\.pubye\.com \(.*\.pubye\.com \[.*\]\)/ REJECT
Em vez de REJECT, você pode fazer o DISCARD e ele será aceito e jogado fora. Por exemplo, para descartar um remetente de classe C:
/^Received: from .* \[104\.140\.32\..*/ DISCARD
Você pode querer usar o maildrop do Sivet ou do Courier ou algo do tipo para filtrar o spam em uma pasta de lixo eletrônico, em vez de rejeitá-lo imediatamente.