Fetchmail et blackliste

Salut,

J’ai installé fetchmail pour récupérer des boites externes et les rediriger sur les boites internes correspondantes. J’ai cru comprendre que fetchmail récupérait puis renvoyait les mails vers postfix (dans mon cas, puisque c’est ce MTA que j’ai installé), qui devrait alors les traiter comme les mails qui lui sont envoyés directement, c’est à dire en prenant en compte mes blacklist (entre autres, le fichier /etc/postfix/sender-access).

Or, autant cette blacklist est efficace pour les courriers entrants directs, autant j’ai des expéditeurs blacklistés qui passent lorsque les mails proviennent des boites externes via fetchmail.

Ai-je oublié quelque chose dans ma config ? Comment faire pour que ces mails arrivant via fetchmail soient bien blacklistés ?

J’ai construit mon /etc/fetchmailrc (je n’ai aucun ~/.fetchmailrc) de la manière suivante :

set daemon 900

poll imap.externe1.tld with proto imap user ma.boite@externe1.tld there with password XXXX is maboite.ici.tld here options fetchall ssl
poll imap.externe2.tld with proto imap user ma.boite2@externe2.tld there with password YYYY is maboite2.ici.tld here options fetchall ssl

J’ai mon fichier /etc/sender_access qui contient :

domaine.spammeur1.tld     DISCARD
spammeur2@domaine.spammeur2.tld DISCARD

Les mails récupérés par fetchmail dont le “From” contient domaine.spammeur1.tld ou spammeur2@domaine.spammeur2.tld passent, alors que ceux blacklistés de la même manière reçus directement par postix sont bien éliminés. (oui, j’ai bien régénéré la base par
postmap /etc/postfix/sender_access
et relancé postfix après modif).

C’est certainement là dessus que se situe la couille, parceque fetchmail ne fait que rajouter un header de plus du genre :

Reçu: from <la machine relevée par fetchmail> [##.##.##.##]
        by localhost with IMAP (fetchmail-6.4.0.beta4)
        for <l'email vers lequel tu envoies les mails relevés> (single-drop); Wed, 15 Jan 2020 01:06:40 +0100 (CET)

Et c’est tout ce que ça fait sur les headers, ça ne réécrit pas le “From:” ou autre, à part le destinataire initial qui est modifié par le fetchmail, ça ajoute juste cette info supplémentaire de routage.
Désolé, pas plus de piste.

Merci de ta réponse :slight_smile:

Oui, effectivement, fetchmail ne change rien dans le mail initial qui puisse expliquer mon problème. Mais qu’est-ce qu’il y aurait de faux dans mon /etc/postfix/sender-access, sachant que je fais la même chose pour blacklister les domaines et expéditeurs arrivant directement et ceux arrivant via fetchmail ?

J’ai plutôt l’impression que quelque chose fait qu’ils ne passent pas par les filtres postfix, et sont remis directement dans les boites aux lettres… Une option, si j’ai bien compris, qui est possible avec fetchmail, mais qui n’est normalement pas celle par défaut ?

Alors comme ça intuitivement, je me dis que ce n’est peut être pas dans la config de sender-access elle même.
Je ne sais pas comment est configuré le passage par ce filtre dans ton postfix, mais pour mon filtrage amavis/spamassassin, ce qui arrive sur le port 25 est ensuite redirigé sous condition vers le port 10024 ou c’est traité par amavis, et il y a un autre master qui écoute sur le port 10025 je ne me souviens plus comment il intervient dans le chainage des “milter” machin.
Ce qui est possible, c’est peut être que ton postfix soit configuré pour ne pas faire passer par ton filtre “sender-access” les mails qui viennent par exemple du localhost.
Et comme fetchmail fait sa desserte smtp en local, ça pourrait être que postfix ne l’envoie pas dans le filtre de “sender-access” (qui ne me dit rien, je ne sais pas ce que c’est).
Tu vois ce que je veux dire ?
Peut être qu’en voyant ton main.cf et master.cf on verrait le problème ?
Je ne sais pas hein, je réfléchis avec toi.

Tes réflexions sont intéressantes ! :slight_smile:

Effectivement, je n’y avais pas pensé mais je dois avoir quelque part soit un white-listage soit un autre moyen pour que les comptes locaux ne risquent pas d’être filtrés. Il faut effectivement que je regarde ça de près !

Mais bon, après va certainement venir la question : comment je fais pour que les comptes locaux ne soient pas filtrés, mais pour que ce qui arrive par fetchmail le soit ?