Parametri ottimali impostati per Postfix “smtpd_recipient_rest restrizioni”


8

abbiamo ereditato il DNS da un altro ISP e ora il nostro server di posta è bombardato da circa 1000 e-mail al minuto, il 99,99% di queste e-mail sono solo spam. Stiamo cercando di ottimizzare il filtro / rifiuto dello spam senza troppa fortuna.

Quale sarebbe secondo te il set ottimale per smtpd_recipient_restrictions?

La configurazione del sistema: Ubuntu + Amavis + Postfix + MySQL + Fail2Ban-Postfix

Qualsiasi consiglio è il benvenuto!

UDPATE, 08-08-2012

All'alterazione della configurazione posftix come folows e configurazione del servizio Potrgey il livello di spam è decaduto 10 volte

smtpd_recipient_restrictions = 
permit_mynetworks, 
permit_sasl_authenticated, 
reject_non_fqdn_hostname, 
reject_invalid_hostname, 
reject_non_fqdn_sender, 
reject_unknown_sender_domain, 
reject_non_fqdn_recipient, 
reject_unknown_recipient_domain, 
check_policy_service inet:127.0.0.1:10023, 
reject_rbl_client zen.spamhaus.org, 
check_recipient_access mysql:/etc/postfix/mysql-virtual_recipient.cf,
reject_unauth_pipelining, 
reject_unauth_destination

inserisci qui la descrizione dell'immagine


1
Voglio comprare quel dominio! Si prega di inserire un'offerta.
mailq,

Cosa stai cercando di risolvere? Qual è il tuo problema? Dici solo che rifiuti lo spam. Ma questo non è un problema. Questa è una soluzione
mailq,

@mailq: in nessun modo mi dispiace
Igor,

@mailq: l'idea è di rifiutare lo spam in modo più efficace, ridurre i carichi di sistema
Igor

Risposte:


6

Si ordina di regole è molto male. Se vuoi mantenerli tutti e non aggiungere altro, l'ordine deve essere:

smtpd_recipient_restrictions = 
permit_mynetworks, 
permit_sasl_authenticated, 
reject_unauth_pipelining, 
reject_invalid_hostname, 
reject_non_fqdn_sender, 
reject_unknown_sender_domain, 
reject_unauth_destination, 
reject_unknown_recipient_domain, 
reject_rbl_client zen.spamhaus.org,
check_recipient_access proxy:mysql:/etc/postfix/mysql-virtual_recipient.cf, 
reject_non_fqdn_recipient

E se ciò non è ancora sufficiente, leggi postscreenin http://www.postfix.org/POSTSCREEN_README.html .


scusa ma l'ordine conta o no? in un certo senso postfix verifica dapprima "allow_mynetworks" e infine "reject_non_fqdn_recipient".
Igor,

1
Definitivamente! L'ordine è importante. Da sinistra a destra (o verso il basso). Come descritto in postfix.org/SMTPD_ACCESS_README.html
mailq

5

Suggerirei un smtpd_recipient_restriction simile al seguente:

smtpd_recipient_restricdtions = 
# Whitelisting or blacklisting:
check_recipient_access proxy:mysql:/etc/postfix/mysql-virtual_recipient.cf,
# Everyone should play after rules:
reject_non_fqdn_recipient,
reject_non_fqdn_sender,
reject_unknown_recipient_domain,
reject_unknown_sender_domain,
reject_unauth_pipelining,
# Mails from your users:
permit_mynetworks,
permit_sasl_authenticated,
# This will block mails from domains with no reverse DNS record. Will affect both spam and ham mails, but mostly spam. 
reject_unknown_reverse_client_hostname,
# Instead of reject_unknown_reverse_client_hostname you can also use reject_unknown_client_hostname, which is an even harder rule. 
# Reject ugly HELO/EHLO-hostnames (could also affect regular mails):
reject_non_fqdn_hostname,
reject_invalid_helo_hostname,
# Reject everything you're not responsible for:
reject_unauth_destination,
# Only take mails for existing accounts:
reject_unverified_recipient,
# DNS lookups are "expensive", therefore should be at bottom
reject_rbl_client zen.spamhaus.org

Informazioni dettagliate su smtpd_recipient_rest restrizioni sono disponibili qui: http://www.postfix.org/postconf.5.html#smtpd_recipient_rest restrizioni

Forse vuoi anche usare postgrey , postscreen , postfwd o qualche altro demone politico .

E controlla anche che stai utilizzando il tuo amavisd-new in modalità pre-coda.


Questo non va bene. La seconda riga blocca la posta per qualsiasi destinatario in uscita. Quindi non sei in grado di inviare e-mail dal tuo server al mondo esterno. Le query MySQL sono ugualmente costose come le query DNS. Quindi dovresti anche spostare le query MySQL in basso.
mailq
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.