Centos
如何刪除 Received: (from apache@localhost) and sendmail version from headers
如何從消息中刪除 Received 標頭?
我想隱藏 apache 使用者名和 sendmail 版本。
消息(從 PHP 腳本發送):
Delivered-To: peter@mydomain.co.uk Received: by 10.182.138.73 with SMTP id qo9csp2588531obb; Wed, 30 Sep 2015 06:15:48 -0700 (PDT) X-Received: by 10.194.209.240 with SMTP id mp16mr4259781wjc.100.1443618948845; Wed, 30 Sep 2015 06:15:48 -0700 (PDT) Return-Path: <no-reply@mailer.mydomain.co.uk> Received: from mailer.mydomain.co.uk (host81-149-XXX-XXX.in-addr.btopenworld.com. [81.149.XXX.XXX]) by mx.google.com with ESMTPS id p10si35980619wik.84.2015.09.30.06.15.48 for <peter@mydomain.co.uk> (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 30 Sep 2015 06:15:48 -0700 (PDT) Received-SPF: pass (google.com: domain of no-reply@mailer.mydomain.co.uk designates 81.149.XXX.XXX as permitted sender) client-ip=81.149.XXX.XXX; Authentication-Results: mx.google.com; spf=pass (google.com: domain of no-reply@mailer.mydomain.co.uk designates 81.149.XXX.XXX as permitted sender) smtp.mailfrom=no-reply@mailer.mydomain.co.uk; dkim=temperror (no key for signature) header.i=@mailer.mydomain.co.uk Received: internal info suppressed DKIM-Filter: OpenDKIM Filter v2.10.3 mailer.mydomain.co.uk t8UDFhWP002575 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mailer.mydomain.co.uk; s=default; t=1443618943; bh=g3nQPcNP98itYjSOtoKgMzN1zvSZ6LEJL6OFN1iIxG4=; h=To:Subject:Date:From:From; b=UMc4qr45/zHJtN0ehAZHFadX9MwW8HhSOMW+EPh257UVzptUvKNKR88hRdkQP27nz iRX9/+/L9PJEen751up4aHEI892AV30bapj8gtju/iUlbwMNBvJoMSoHw/hcN/FqB5 jJwGUq3KraD67AvLsRPCJhpLxWmNB5Dt7/YdXLiI= // I want to get rid of this! Received: (from apache@localhost) by mailer.mydomain.co.uk (8.14.4/8.14.4/Submit) id t8UDFgZp002574; Wed, 30 Sep 2015 14:15:42 +0100 To: peter@mydomain.co.uk Subject: Test subjecT Date: Wed, 30 Sep 2015 14:15:42 +0100 From: Root User <no-reply@mailer.mydomain.co.uk> Message-ID: <512823cdf14f75789632427d632307b5@erp> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="iso-8859-1" Test body 560be07ebabe4
請注意
Received: internal info suppressed
(這是我隱藏收到的標頭的嘗試之一)我嘗試了幾個小時的一切……
變化
php.ini
:sendmail_path = /usr/sbin/sendmail -t -i -fno-reply@mailer.mydomain.co.uk
(它之所以有效,是因為我有 X-Authentication-Error 警告,我通過將 apache 添加到受信任的使用者來超越它)
變化
sendmail.mc
:MASQUERADE_AS(`mailer.mydomain.co.uk')dnl FEATURE(masquerade_envelope)dnl FEATURE(masquerade_entire_domain)dnl FEATURE(allmasquerade)dnl MASQUERADE_DOMAIN(localhost)dnl MASQUERADE_DOMAIN(localhost.localdomain)dnl MASQUERADE_DOMAIN(erp.mydomain.co.uk)dnl define(`confDOMAIN_NAME', `mailer.mydomain.co.uk')dnl define(`confRECEIVED_HEADER', `internal info suppressed')dnl
生成
sendmail.cf
:######################### # Format of headers # ######################### H?P?Return-Path: <$g> HReceived: internal info suppressed H?D?Resent-Date: $a H?D?Date: $a H?F?Resent-From: $?x$x <$g>$|$g$. H?F?From: $?x$x <$g>$|$g$. H?x?Full-Name: $x # HPosted-Date: $a # H?l?Received-Date: $b H?M?Resent-Message-Id: <$t.$i@$j> H?M?Message-Id: <$t.$i@$j>
/etc/hosts
:127.0.0.1 mailer.mydomain.co.uk localhost localhost.localdomain localhost4 localhost4.localdomain4 erp 192.168.1.100 erp.mydomain.co.uk ::1 mailer.mydomain.co.uk localhost localhost.localdomain localhost6 localhost6.localdomain6
hostname -f
:mailer.mydomain.co.uk
sendmail -d0.4 -bv root
:Version 8.14.4 Compiled with: DNSMAP HESIOD HES_GETMAILHOST LDAPMAP LOG MAP_REGEX MATCHGECOS MILTER MIME7TO8 MIME8TO7 NAMED_BIND NETINET NETINET6 NETUNIX NEWDB NIS PIPELINING SASLv2 SCANF SOCKETMAP STARTTLS TCPWRAPPERS USERDB USE_LDAP_INIT Canonical name: mailer.mydomain.co.uk UUCP nodename: erp.mydomain.co.uk a.k.a.: localhost a.k.a.: localhost.localdomain a.k.a.: localhost4 a.k.a.: localhost4.localdomain4 a.k.a.: erp a.k.a.: 192.168.1.100 a.k.a.: erp.mydomain.co.uk a.k.a.: [127.0.0.1] ============ SYSTEM IDENTITY (after readcf) ============ (short domain name) $w = mailer (canonical domain name) $j = mailer.mydomain.co.uk (subdomain name) $m = mydomain.co.uk (node name) $k = erp.mydomain.co.uk ========================================================
我沒有想法,我想做的就是擺脫這個標題:
Received: (from apache@localhost) by mailer.mydomain.co.uk (8.14.4/8.14.4/Submit) id t8UDFgZp002574; Wed, 30 Sep 2015 14:15:42 +0100
我怎樣才能做到這一點?
我正在使用 Centos 6.7
我真的不想使用 postfix,因為一些伺服器軟體已經在使用 sendmail,我不想安裝兩個 MTA
好的,我發現了問題。我不得不把
define(`confRECEIVED_HEADER', `internal info suppressed')dnl
進
submit.mc
也。我一直在尋找解決方案幾個小時,我不敢相信我在我在這裡發布問題後就想通了。
將此添加到 sendmail.mc 對我來說是一個更好的解決方案:
define(`confRECEIVED_HEADER',`$?{auth_type}from auth (localhost [127.0.0.1]) $|_REC_HDR_$. _REC_BY_ _REC_TLS_ _REC_END_')
這有條件地查看 auth_type,如果有身份驗證,則顯示 localhost,如果沒有,例如,如果消息從外部到達,您將獲得正常接收的標頭。這絕對是你想要的。
參考和歸功於:Sendmail 中經過身份驗證的發件人的 IP 抑制