Paramètres optimaux définis pour Postfix «smtpd_recipient_restrictions»


8

nous avons hérité du DNS d'un autre FAI et maintenant notre serveur de messagerie est bombardé par environ 1000 e-mails par minute, 99,99% de ces e-mails ne sont que du spam. Nous essayons d'optimiser le filtrage / rejet du spam sans beaucoup de chance.

Quel serait selon vous l'ensemble optimal smtpd_recipient_restrictions?

La configuration du système: Ubuntu + Amavis + Postfix + MySQL + Fail2Ban-Postfix

Tout conseil est le bienvenu!

UDPATE, 2012-08-08

Lors de la modification de la configuration posftix en tant que suivis et de la configuration du service Potrgey, le niveau de spam a diminué 10 fois

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

entrez la description de l'image ici


1
Je veux acheter ce domaine! Veuillez placer une offre.
— mailq

Qu'essayez-vous de résoudre? Quel est votre problème? Vous dites seulement que vous rejetez le spam. Mais ce n'est pas un problème. Ceci est une solution.
— mailq

@mailq: pas moyen je suis désolé
— Igor

@mailq: l'idée est de rejeter le spam plus efficacement, de réduire les charges du système
— Igor

Réponses:


6

Votre ordre de règles est très mauvais. Si vous souhaitez les conserver tous et ne rien ajouter d'autre, la commande doit être:

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

Et si cela ne suffit toujours pas, lisez-le postscreendans http://www.postfix.org/POSTSCREEN_README.html .


désolé mais la commande est-elle importante ou non? dans un sens, postfix vérifie d'abord "permit_mynetworks" et enfin "rejette_non_fqdn_recipient".
— Igor

1
Définitivement! L'ordre est important. De gauche à droite (ou de haut en bas). Comme décrit dans postfix.org/SMTPD_ACCESS_README.html
— mailq

5

Je suggérerais une smtpd_recipient_restriction semblable à ce qui suit:

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

Des informations détaillées sur smtpd_recipient_restrictions peuvent être trouvées ici: http://www.postfix.org/postconf.5.html#smtpd_recipient_restrictions

Peut-être que vous souhaitez également utiliser postgrey , postscreen , postfwd ou un autre démon de stratégie .

Et vérifiez également que vous utilisez votre amavisd-new en mode pré-file d'attente.


C'est mauvais. La deuxième ligne bloque le courrier pour tout destinataire sortant. Vous n'êtes donc pas en mesure d'envoyer des e-mails de votre serveur vers le monde extérieur. Les requêtes MySQL sont tout aussi chères que les requêtes DNS. Vous devez donc également déplacer les requêtes MySQL vers le bas.
— mailq
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.