La mia configurazione: sto gestendo un sito Web Magento su un server Amazon Linux (che sembra fondamentalmente CentOS) con un server web Apache. Uso anche Google Apps per gestire la posta di mydomain.com.
Sono stato in grado di impostare correttamente i record MX, SPF e DKIM per il server e di averli fatti funzionare, in modo da ricevere un "Pass" sia per SPF che per DKIM quando invio e-mail. Tuttavia, ho riscontrato uno strano problema che non riesco a superare --- parte dell'intestazione per le e-mail che invio sembra sempre dire:
Received: (from apache@localhost) by mydomain.com
Ho cercato in alto e in basso un modo per cambiarlo per usare invece "mail@mydomain.com", ma non riesco proprio a capirlo.
Tra le cose che ho provato:
- Cambiando php.ini per dire: / usr / sbin / sendmail -t -i -f mail@mydomain.com
- Aggiungendo al virtualhost di mydomain.conf la riga: ServerAdmin mail@mydomain.com
- Impostando Return-Path su "Sì" nel backend Magento (Sistema -> Configurazione -> Avanzate -> Sistema -> Impostazioni invio posta.
Se aiuta, i contenuti del mio file / etc / hosts sono i seguenti:
127.0.0.1 www.mydomain.com
127.0.0.1 mydomain.com
127.0.0.1 localhost localhost.localdomain
Per l'ultima riga del file hosts, ho anche provato la variante ...
127.0.0.1 localhost.localdomain mydomain.com
... ma ancora non ha funzionato.
Ho pensato che potesse essere d'aiuto anche se avessi aggiunto le intestazioni dell'e-mail, nel caso in cui ciò potesse fornire alcuni indizi su ciò che potrebbe accadere (ho cambiato molti valori per mantenerlo generalizzato).
Delivered-To: zerowing@email.com
Received: by 123.123.123.123 with SMTP id abcdefg123456790;
Fri, 3 Apr 2015 08:35:04 -0700 (PDT)
X-Received: by 456.456.456.456 with SMTP id asdfqwerhjkl234hjkl.789.78909876789;
Fri, 03 Apr 2015 08:35:03 -0700 (PDT)
Return-Path: <mail@mydomain.com>
Received: from mydomain.com (ec2-11-11-111-11.amazonaws.com. [66.66.777.77])
by mx.google.com with ESMTPS id asdkfjhkjdfha839383.105.2015.04.03.08.35.02
for <zerowing@email.com>
(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
Fri, 03 Apr 2015 08:35:03 -0700 (PDT)
Received-SPF: pass (google.com: domain of mail@mydomain.com designates 66.66.777.77 as permitted sender) client-ip=66.66.777.77;
Authentication-Results: mx.google.com;
spf=pass (google.com: domain of mail@mydomain.com designates 66.66.777.77 as permitted sender) smtp.mail=mail@mydomain.com;
dkim=pass header.i=@mydomain.com
Received: from mydomain.com (www.mydomain.com [127.0.0.1])
by mydomain.com (8.14.4/8.14.4) with ESMTP id t33FZ29p004251
for <zerowing@email.com>; Fri, 3 Apr 2015 15:35:02 GMT
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=mydomain.com;
s=default; t=fjIFDJF9049;
bh=fjO4J4f09j409JF04J909f4j904JF940F9/Y=;
h=To:Subject:From:Date;
b=F4J90FJ490j09j490FJ094J0j94f90j409j490Jf90j904JF09j490fj904jf094J
f09J40F9J904fj049J099j49J049J0FJijffjdlfjldkDLFJKLdjflEJFOIJFOEIEO
JF9JF049j409j0F094J09FJ049jf049j=
Received: (from apache@localhost) <----------- THIS IS WHAT I'M TRYING TO CHANGE
by mydomain.com (8.14.4/8.14.4/Submit) id fkdjfljlfsra39393;
Fri, 3 Apr 2015 15:35:01 GMT
Message-Id: <201504031535.fkdjfljlfsra39393@mydomain.com>
To: =?utf-8?B?Sm9lIEdhcmNpYQ==?= <zerowing@email.com>
Subject: =?utf-8?B?VGVzdCBOZXdzbGV0dGVyLCBwbGVhc2UgaWdub3Jl?=
X-PHP-Originating-Script: 48:Sendmail.php
From: "mydomain.com" <mail@mydomain.com>
Date: Fri, 03 Apr 2015 15:35:01 +0000
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline
MIME-Version: 1.0
Una parte di me non è sicura se questo è normale, e immagino non sono sicuro di cosa potrebbe causare la comparsa di apache @ localhost, ma se qualcuno ha un'idea sarebbe molto apprezzato, grazie!
Modifica L'MTA che sto usando è Sendmail. Ecco le modifiche di configurazione che ho apportato al file sendmail.mc per adattarle al mio sito.
MASQUERADE_AS(`mydomain.com')dnl
FEATURE(masquerade_envelope)dnl
FEATURE(masquerade_entire_domain)dnl
INPUT_MAIL_FILTER(`opendkim', `S=inet:8891@127.0.0.1')
define(`confCW_FILE', `/etc/mail/local-host-names')dnl
dnl define(`confDOMAIN_NAME', `mydomain.com')dnl
Modifica Non sono sicuro che questa domanda sia stata contrassegnata nuovamente come duplicata, quindi ho pensato di enfatizzare il ragionamento sul perché non si basa sulla domanda sottoposta sul perché non lo sia. Passare a Postfix non è una soluzione, ma una soluzione alternativa. Odierei sradicare tutte le impostazioni che ho fatto con Sendmail finora solo per incontrare altri potenziali problemi cercando di far funzionare Postfix. Ho anche menzionato la modifica del comando sendmail in php.ini, se leggi i punti elenco sopra menzionati.
Modifica Ho pensato che potrei anche menzionare alcune delle altre cose che ho provato a fare che non ha funzionato. Ho aggiunto a sendmail.mc le seguenti righe:
FEATURE(`genericstable',`hash -o /etc/mail/genericstable.db')dnl
GENERICS_DOMAIN_FILE(`/etc/mail/generics-domains')dnl
Ho quindi creato un file generics-domains con la sola riga "mydomain.com" al suo interno. Quindi, ho creato un file genericstable con la sola riga "apache mail@homebrewsupply.com" al suo interno. Ho eseguito make nella directory di posta, ricreato il file cf e riavviato sendmail, ma nessun dado.
Ho provato a modificare il file / etc / aliases. Ho provato a cambiare la riga "apache: root" per dire "apache: root, mail @ mydomain.com", così come solo "apache: mail@mydomain.com", ma neanche quello ha fatto nulla.
Ho anche provato ad aggiungere al file / etc / mail / virtuserstable la riga singola "apache @ localhost mail@mydomain.com". Neanche quello ha fatto nulla.
Sono sorpreso da quanto sia frustrante farlo funzionare correttamente. Sono così vicino ad averlo dove ne ho bisogno, ma onestamente non so dove cercare di sostituire la linea "apache @ localhost".