Question

Je rencontre un problème avec un serveur de messagerie nouvellement configuré: les messages indésirables spoofés provenant du domaine local sont réellement acceptés par le serveur de messagerie; le message n'est pas livré tel quel, mais le spamassassin le qualifie de spam, puis l'envoie. un e-mail "Un courrier non restitué a été renvoyé à l'expéditeur". à l'utilisateur local usurpé.

Je sais qu'il existe un moyen de résoudre ce problème dans la configuration, mais je ne sais pas où, j'espère que quelqu'un pourra me diriger dans la bonne direction.

Pour être clair, le serveur de courrier n’est pas en train de relayer, c’est seulement un problème d’utilisateur local. Je veux que postfix rejette tous les courriels supposés émaner d'utilisateurs locaux qui ne sont pas envoyés en interne. Cela arrêterait ce problème.

Voici un email pour vous montrer ce qui se passe. J'ai changé le domaine en example.com.au.

  ################################################
     


  Ceci est le système de messagerie de l'hôte example.com.au.
  
  Je suis désolé de devoir vous informer que votre message n'a pas pu être
  être livré à un ou plusieurs destinataires. Il est attaché ci-dessous.
  
  Pour obtenir de l'aide, veuillez envoyer un courrier à postmaster.
  
  Si vous le faites, veuillez inclure ce rapport de problème. Vous pouvez
  supprimez votre propre texte du message renvoyé en pièce jointe.
  
  Le système de messagerie
  
  : hôte 127.0.0.1 [127.0.0.1] a dit: 554 5.7.0 Rejeter, id = 11887-07 - SPAM (en réponse à la fin de la commande DATA)
?
  Reporting-MTA: dns; example.com.au
  X-Postfix-Queue-ID: 661DC5D1DE
  X-Postfix-Sender: rfc822; dan@example.com.au
  Date d'arrivée: mar. 5 mai 2009 06:21:38 +1000 (EST)
  
  Récipiendaire final: rfc822; dan@example.com.au
  Destinataire original: rfc822; dan@example.com.au
  Action: Failed Status: 5.7.0
  Remote-MTA: dns; 127.0.0.1
  Code de diagnostic: smtp; 554 5.7.0 Reject, id = 11887-07 - SPAM?
  
   De: Bérénice Penez
  Date: lun, 4
  May 2009 22:21:41 +0200
   À: Objet: Étiez-vous sur le forum?
  
  Qualité fiable et sans retard avec
  livraison! Super boutique en ligne pour
  traitement de la maladie
   http://www.xopfekec.cn/
  

     ################################################

Postfix main.cf (les parties importantes non complétées)

  

readme_directory = / usr / share / doc / postfix

  mydomain_fallback = localhost
  message_size_limit = 0
  mailbox_size_limit = 0
  myhostname = example.com.au
  mailbox_transport = cyrus
  mydomain = example.com.au
  inet_interfaces = all
  enable_server_options = yes
  mydestination = $ myhostname, localhost. $ mydomain, localhost, example.com.au
  smtpd_sasl_auth_enable = yes
  smtpd_use_pw_server = yes
  smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, rejeter_unauth_destination, rejeter_unknown_recipient_domain, rejeter_unknown_sender_domain, rejeter_invalide_nom_hôte
  smtpd_pw_server_security_options = plain, identifiez-vous
  content_filter = smtp-amavis: [127.0.0.1]: 10024
  mynetworks = 127.0.0.0/8, 10.0.1.0/24
  smtpd_client_restrictions = permit_sasl_authenticated, rejet_rbl_client dnsbl.sorbs.net

Était-ce utile?

La solution

Quelques points différents:

  • Cela devrait être sur serverfault.com, mais comme je ne suis pas sur la version bêta, je vais y répondre ici.

  • La sortie de postconf -n vaut mieux que d'inclure ce que vous pensez être les lignes pertinentes dans main.cf. Incluez également les lignes pertinentes de master.cf si vous avez des remplacements de paramètres ou d’autres personnalisations.

  • N'acceptez pas alors de faire rebondir le courrier comme ça. Si vous utilisez SpamAssassin en tant que filtre d’après-file d'attente dans Postfix (son mode d’exécution habituel), vous devez taguer et remettre (et filtrer avec des règles côté client) ou mettre le courrier en quarantaine sans en avertir l’expéditeur. D'après l'apparence de votre question, vous êtes probablement une source de rétrodiffusion. Arrête ça. Voir, par exemple, http://www.postfix.org/BACKSCATTER_README.html . Prenez en considération amavisd-new pour l’intégration de SpamAssassin dans Postfix avec toutes sortes de fonctionnalités utiles.

  • Envisagez de regrouper toutes vos restrictions dans smtpd_recipient_restrictions. Il est généralement plus facile de gérer le flux linéaire de restrictions de ce type que de gérer les interactions entre smtpd_ {client, helo, expéditeur, destinataire} _restrictions.

  • Pour empêcher Postfix d’accepter du courrier de l’extérieur, ajoutez une mappe sender_access qui rejette le courrier prétendant provenir de vos domaines:

smtpd_recipient_restrictions = 
  permit_sasl_authenticated, 
  permit_mynetworks, 
  reject_unauth_destination, 
  check_sender_access hash:$config_directory/reject_mydomains
  reject_unknown_recipient_domain,
  reject_unknown_sender_domain,
  reject_invalid_hostname

Et dans le rejet_mydomains

example.com.au REJECT you are not me

Cela sera probablement sujet à de faux positifs avec un courrier provenant d'expéditeurs ayant une raison légitime (?) d'utiliser votre domaine en tant qu'envoyeur d'enveloppe (cartes électroniques, invitations, peut-être un service externalisé tel que des sondages ou autre). Vous pouvez ajouter une liste blanche autour de vos règles vous-ne-êtes-pas-moi avec une carte client_access avant votre carte sender_access qui renvoie OK ou une classe de restriction appropriée (voir http://www.postfix.org/RESTRICTION_CLASS_README.html ).

Vous pouvez utiliser des contrôles HELO similaires pour éliminer les clients HELO-ing avec votre propre nom d'hôte / IP ou des chaînes HELO mauvaises connues

smtpd_recipient_restrictions = 
  permit_sasl_authenticated, 
  permit_mynetworks, 
  reject_unauth_destination, 
  check_helo_access hash:$config_directory/helo_checks
  check_sender_access hash:$config_directory/reject_mydomains
  reject_unknown_recipient_domain,
  reject_unknown_sender_domain,
  reject_invalid_hostname

et dans helo_checks:

example.com.au             REJECT BAD-HELO you are not example.com.au
mailserver.example.com.au  REJECT BAD-HELO you are not me
localhost                  REJECT BAD-HELO you are not me
localhost.localdomain      REJECT BAD-HELO you are not me
# where 1.2.3.4 is the IP of your server
1.2.3.4                    REJECT BAD-HELO you are not me
127.0.0.1                  REJECT BAD-HELO you are not me

Enfin, c’est une très bonne idée de vous abonner à un service de bonne réputation tel qu’un RBL. La meilleure RBL, dans la plupart des cas, est zen.spamhaus.org . Il est gratuit pour les charges légères à modérées, et si votre consommation est suffisamment élevée pour dépasser leur seuil gratuit / payé, le coût en vaut la peine. Pour configurer dans Postfix, ajoutez

reject_rbl_client zen.spamhaus.org

à votre smtpd_recipient_restrictions. Faites-le après vos vérifications locales bon marché pour économiser sur la charge et la latence des requêtes DNS, mais avant des vérifications locales coûteuses telles queject_unverified_recipient (vous ne l'utilisez pas et n'en avez probablement pas besoin de la description de votre problème).

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top