Назад | Перейти на главную страницу

Как удалить Received: (из apache @ localhost) и версию sendmail из заголовков

Как удалить заголовки "Получено" из сообщения?

Я хочу скрыть имя пользователя 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, а если нет, например, если сообщение пришло извне, вы получаете обычные полученные заголовки. Это определенно то, что вам нужно.

Ссылка и ссылка на: Подавить IP аутентифицированных отправителей в Sendmail