J'essaie de cacher l'adresse IP du client des e-mails envoyés par postfix.
voici un exemple de ce que je veux dire:
Received: from mail.[removed].com (adsl-75-37-61-254.dsl.frs2ca.sbcglobal.net [75.37.61.254])
(using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
(No client certificate requested)
by mail.[removed].com (Postfix) with ESMTP id D50C7BF185DD
for <[removed]@gmail.com>; Thu, 2 Aug 2012 16:14:21 +0900 (JST)
Date: Thu, 02 Aug 2012 07:14:08 +0000
Remarquez cette ligne (adsl-75-37-61-254.dsl.frs2ca.sbcglobal.net [75.37.61.254])
Je souhaite supprimer cette ligne de l'e-mail.
J'ai essayé de faire ça:
/etc/postfix/main.cf:
smtp_header_checks = regexp:/etc/postfix/smtp_header_checks
smtp_header_checks:
/^((.*) [(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])])/ IGNORE
Mais mon adresse IP est toujours à l'intérieur de la partie reçue de l'e-mail. Si j'envoie un e-mail sur le serveur smtp localement, l'adresse IP devientlocalhost.localdomain [127.0.0.1]
Comment supprimer les adresses IP clientes de l'en-tête?
regexp:/etc/postfix/smtp_header_checks
pourpcre:/...
. J'ai ensuite redémarré postfix et surveillé maillog pour toute erreur. Aucune erreur n'a été affichée. L'e-mail affiche toujours mon adresse IP. XD Merci pour les efforts, Mike.postmap -q "Received: from mail.[removed].com (adsl-75-37-61-254.dsl.frs2ca.sbcglobal.net [75.37.61.254])" pcre:/etc/postfix/smtp_header_checks
et la sortie étaitIGNORE
telle qu'elle est travail. Cependant, il ne fait pas de changements dans l'e-mail ... Le champ à l'intérieur est-ilmain.cf
faux?smtp_header_checks
était censé êtreheader_checks
... Cela fonctionne maintenant. Je suis vraiment désolée d'avoir perdu votre temps. J'apprécie vos efforts. Je vous remercie. pcre fonctionne également. Je suis sur centos. Merci encore, mon frère.Ouvrez /etc/postfix/master.cf et recherchez:
cleanup unix n - n - 0 cleanup
Ajoutez sous ces lignes et devenez:
cleanup unix n - n - 0 cleanup -o header_checks=pcre:/etc/postfix/header_checks
Modifiez / etc / postfix / header_checks et ajoutez les codes ci-dessous:
/^Received:/ IGNORE
Redémarrez maintenant postfix. Disons sur CentOS:
service postfix restart
la source
Received
tête du courrier entrant.Pour supprimer l'adresse IP de l'expéditeur de l'en-tête Reçu pour les nouvelles soumissions de courrier, utilisez la
header_checks
clé au lieu de l'smtp_header_checks
option:L'
smtp_header_checks
option s'applique uniquement au courrier envoyé de Postfix à des serveurs externes, tandis que l'header_checks
option s'applique au courrier entrant envoyé par votre client à Postfix.Voir aussi Comment Postfix reçoit le courrier sur http://www.postfix.org/OVERVIEW.html pour une vue d'ensemble des composants, le courrier passe de smtpd -> nettoyage -> file d'attente entrante. Le
smtpd
processus reçoit du courrier et injecte l'en-Received
tête avec l'adresse IP de l'expéditeur. L'header_checks(5)
option est traitée par lecleanup(8)
composant qui nettoie les en-têtes des e-mails.Il n'est pas recommandé de définir une telle
header_checks
option globalement dans votre main.cf car cela modifierait l'en-tête Received dans tous les e-mails, même ceux reçus de serveurs externes. Au lieu de cela, vous devez configurer votre client pour envoyer des e-mails via un service de soumission dédié sur le port 587, et configurer Postfix pour réécrire les en-têtes pour ces soumissions authentifiées uniquement.Dans
/etc/postfix/master.cf
, ajoutez les-o
lignes suivantes après lasubmission
ligne:Il est temps de configurer le nettoyage service pour un uthenticated s ubmissions. Je choisis le nom
ascleanup
pour le garder court et aligné, mais tout nom fonctionne. Pour ce faire, dupliquez la ligne de service de nettoyage dans le mêmemaster.cf
fichier, mais renommez le premier champ et ajoutez une nouvelle option pour sélectionner le fichier de filtre:(L'utilisation de la
pcre
table nécessite une installationpostfix-pcre
sur Debian, qui se chargera automatiquement de la mise à jour du fichier dynamicmaps.cf. Aucune autre modification n'est nécessaire pour cela.)La dernière pièce est la configuration réelle du filtre
/etc/postfix/header_checks_submission
. Vous pourriez potentiellement utiliser quelque chose comme:ce qui supprimera la ligne d'en-tête Received complète, mais à la place, vous pouvez également supprimer la
from helo.host (reverse.host.name [192.0.2.1])
pièce tout en préservant les autres informations:Si vous avez changé l'
mail_name
option, changez lePostfix
mot pour qu'il corresponde à votre configuration. (Ce modèle est précis sur la base du code source de Postfix, smtpd / smtpd.c .)J'ai testé cela avec postfix 3.4.7-0 + deb10u1 sur Debian buster. Pour une autre description intéressante avec la même approche, voir Lors de l'envoi d'e-mails avec Postfix, comment puis-je masquer l'adresse IP et le nom d'utilisateur de l'expéditeur dans l'en-tête Reçu?
Avec la modification ci-dessus, ce qui suit est transformé en
Received: by ...
:la source
utilisez ceci:
n'utiliser que des
*
deux extrémitésla source