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

Письма помечаются как спам

Привет. Мы настроили DKIM на нашем почтовом сервере с помощью sendmail, а также настроили нашу запись DNS. Тем не менее, наши письма помечаются как спам. Также, когда мы отправляем почту из Outlook, аутентификация с ключом домена проходит, тогда как когда почта отправляется из PHP (PEAR package MAIL), Yahoo отмечает аутентификацию как неудачную.

При отправке через PHP Yahoo добавляет следующий заголовок Authentication-Results: mta150.mail.in.yahoo.com from = mydomain.com; domainkeys = fail (плохой сигнал); from = mydomain.com; dkim = permerror (плохой сигнал)

При отправке из Outlook заголовок - Authentication-Results: mta175.mail.in.yahoo.com from = mydomain.com; domainkeys = пройти (ок); from = mydomain.com; dkim = pass (ok), который указывает, что аутентификация по ключу домена прошла

Я изучил заголовки при отправке из PHP и сравнил их с тем, что добавляет Outlook, и не увидел большой разницы. При отправке с PHP я добавляю заголовки From, To, Message-ID, Mime-Version, Date, Subject, Content-Type, и Outlook также имеет то же самое,

Что еще может быть не так в почте при отправке почты через PHP из-за сбоя аутентификации

PHP не использует локальный MTA на сервере, он подключается к SMTP-серверу (SendMail), который находится на другом компьютере. PEAR MAIL использует API сокетов для подключения к SMTP-серверу и использует протокол SMTP, я не думаю, что почта подписывается на веб-сервере, она подписывается только на SMTP-сервере.

Мы используем SendMail на почтовом сервере, и Outlook и PHP используют один и тот же SMTP-сервер с одинаковым логином и паролем и одним и тем же механизмом аутентификации.

Вот почему я не понимаю, в чем может быть проблема. Есть ли какой-то стандартный способ создания почты, который может влиять на подписание почты, что Outlook делает правильно, но когда это делается через PHP, почта создается по-другому, по крайней мере, мы проверили, что заголовки совпадают.

Ниже указаны заголовки, полученные Yahoo, когда я отправил письмо на этот аккаунт Yahoo. Это письмо отправлено PHP Zend framework.

Раньше я отправлял почту с помощью пакета PHP PEAR. В то время Yahoo добавляла следующий заголовок Authentication-Results: mta150.mail.in.yahoo [dot] com from = mydomain [dot] com; domainkeys = fail (плохой сигнал); from = mydomain [точка] com; dkim = permerror (плохой сигнал).

Но теперь, когда я использую PHP Zend framework для отправки почты, dkim настроен на проход (нормально), но domainkeys = fail. Заголовок выглядит следующим образом Authentication-Results: mta153.mail.in.yahoo [точка] com from = mydomain [точка] com; domainkeys = fail (плохой сигнал); from = mydomain [точка] com; dkim = пройти (хорошо).

Итак, что означает dominkeys = fail (плохой знак)? и чем он отличается от dkim = pass (ok)

X-Apparently-To       :  ravi.cybertechie@yahoo[dot]com via 203.104.18.180; Wed, 
                         28 Oct 2009 18:03:13 +0530
Return-Path           :  <admin@mydomain[dot]com>
X-YMailISG            :  YISh33wWLDtwDNH0f_08ONu7pG42J7wuD.SOtD4sPZcX_x7EOghleA5_M5U7vRhdf7ZIIIo0yVtS35PCaQRAY2w8Naq8c3wgufoQrWvJyQt6jIH0BRkuwgUERH7N7FHGLQpnCT0A9ig_TvthXoXJ3Vc.mQFe.OPT4CE6Vz1kgCsBEVxb.M2Zcr4BYK27XARjHg7hCsNDFi_ddp.Y.s6njtr7fnbQl0SD0gCcK2qNVxxKNhoukmuvpE4BPA_EyVEgNqJGjcBYh_GYqsapic4zKDWhcb4nOBAAzDR0XtydFiX3nj_TqDI0v_zNwuUK0K53tYdnI3HCSg--
X-Originating-IP      :  [my_smtpserver_ipaddress]
Authentication-Results: mta153.mail.in.yahoo[dot]com from=mydomain[dot]com; 
                        domainkeys=fail (bad sig); from=mydomain[dot]com;
                        dkim=pass (ok)
Received              : from my_smtpserver_ipaddress (EHLO my_smtpserver_hostname)
                        (my_domain_ip_address) by mta153.mail.in.yahoo[dot]com with SMTP; Wed,
                        28 Oct 2009 18:03:13 +0530
Received-SPF          : pass (my_smtpserver_hostname: authenticated connection)
                        receiver=my_smtpserver_hostname; client-ip=my_mailclient_ipaddress;
                        helo=localhost; envelope-from=admin@mydomain[dot]com;
                        x-software=spfmilter 0.97 
                        http://www.acme[dot]com/software/spfmilter/ with libspf2-1.0.0;
Received              : from localhost ([my_mailclient_ipaddress]) (authenticated bits=0) 
                        by my_smtpserver_hostname (8.14.2/8.14.2) 
                        with ESMTP id n9SCX6ml017820 for ; 
                        Wed, 28 Oct 2009 08:33:08 -0400
X-DKIM                : Sendmail DKIM Filter v2.5.1
                        my_smtpserver_hostname n9SCX6ml017820
DKIM-Signature        : v=1; a=rsa-sha256; c=simple/simple; d=mydomain[dot]com; s=mydomain;
                        t=1256733190; bh=oBeBoCqUcTrV/4cgaMK58OrPkchqCMzB2Vax aRRph6g=;
                        h=From:To:Subject:Date:Content-Type:MIME-Version;
                        b=faLHQ jAakBDkxbz8xhGmfi2ZfBHXUBFOWTZs9BAfaksB8lJghho6YmUPKIY5oMJMsCkh/QLQ 8RXD8dUPf04X6A==
X-DomainKeys          : Sendmail DomainKeys Filter v1.0.2 
                        my_smtpserver_hostname n9SCX6ml017820
DomainKey-Signature   : a=rsa-sha1; s=mydomain; d=mydomain[dot]com; c=simple; q=dns;                        b=3Wazgw8//NzW95FYyQGZdXDuc4mLkp6+OdOIv224+aC0imfrA3GoeSEIt0UTyaT9d ygfHc6OKuxy7cz0/a3FnA==
Message-Id            : 
From                  : mydomain Admin  Add sender to Contacts
To                    : Recipient 
Subject               : Mail from zend
Date                  : Wed, 28 Oct 2009 12:33:05 +0000
Content-Type          : multipart/alternative; charset="iso-8859-1";
                        boundary="=_2f9550c6ce7fb246f62d84f1221854d7"
MIME-Version         : 1.0
Content-Length       : 4918

Если я правильно понимаю, то говорится следующее:

  1. PHP (+ PEAR MAIL) установлен на веб-сервере.
  2. Когда вы отправляете электронное письмо через него, оно использует локальный MTA на веб-сервере.
  3. Добавление вашей подписи DKIM происходит в другом MTA.
  4. Поэтому PHP DKIM не работает, пока Outlook в порядке.

Вы можете сравнить настройки SMTP-сервера Outlook с настройками PHP и убедиться, что они такие же. Если нет, сделайте ретрансляцию PHP через тот же SMTP-сервер, который используется Outlook.

Похоже, ваши сценарии PHP не отправляют почту с помощью локального MTA, в то время как ваш клиент Outlook. Это тот MTA, который должен применять подпись DKIM к каждому сообщению, прежде чем оно будет передано на серверы другой организации. Итак, проверьте конфигурацию и код PHP.

Ниже приведены заголовки, полученные Yahoo, когда я отправил письмо на этот аккаунт Yahoo. Это письмо отправлено PHP Zend framework.

Раньше я отправлял почту с помощью пакета PHP PEAR. В то время Yahoo добавляла следующий заголовок

Authentication-Results: mta150.mail.in.yahoo[dot]com from=mydomain[dot]com; 
domainkeys=fail (bad sig); from=mydomain[dot]com; dkim=permerror (bad sig). 

Но теперь, когда я использую PHP Zend framework для отправки почты, dkim настроен на проход (нормально), но domainkeys = fail. Заголовок выглядит следующим образом

Authentication-Results: mta153.mail.in.yahoo[dot]com from=mydomain[dot]com; domainkeys=fail (bad sig); from=mydomain[dot]com;
dkim=pass (ok).

So what does dominkeys=fail ( bad sig ) mean ? and how is it different from dkim=pass (ok )



X-Apparently-To       :  ravi.cybertechie@yahoo[dot]com via 203.104.18.180; Wed, 
                         28 Oct 2009 18:03:13 +0530

Return-Path           :  <admin@mydomain[dot]com>

X-YMailISG            :  YISh33wWLDtwDNH0f_08ONu7pG42J7wuD.SOtD4sPZcX_x7EOghleA5_M5U7vRhdf7ZIIIo0yVtS35PCaQRAY2w8Naq8c3wgufoQrWvJyQt6jIH0BRkuwgUERH7N7FHGLQpnCT0A9ig_TvthXoXJ3Vc.mQFe.OPT4CE6Vz1kgCsBEVxb.M2Zcr4BYK27XARjHg7hCsNDFi_ddp.Y.s6njtr7fnbQl0SD0gCcK2qNVxxKNhoukmuvpE4BPA_EyVEgNqJGjcBYh_GYqsapic4zKDWhcb4nOBAAzDR0XtydFiX3nj_TqDI0v_zNwuUK0K53tYdnI3HCSg--

X-Originating-IP      :  [my_smtpserver_ipaddress]

Authentication-Results: mta153.mail.in.yahoo[dot]com from=mydomain[dot]com; 
                        domainkeys=fail (bad sig); from=mydomain[dot]com;
                        dkim=pass (ok)

Received              : from my_smtpserver_ipaddress (EHLO my_smtpserver_hostname)
                        (my_domain_ip_address) by mta153.mail.in.yahoo[dot]com with SMTP; Wed,
                        28 Oct 2009 18:03:13 +0530

Received-SPF          : pass (my_smtpserver_hostname: authenticated connection)
                        receiver=my_smtpserver_hostname; client-ip=my_mailclient_ipaddress;
                        helo=localhost; envelope-from=admin@mydomain[dot]com;
                        x-software=spfmilter 0.97 
                        http://www.acme[dot]com/software/spfmilter/ with libspf2-1.0.0;

Received              : from localhost ([my_mailclient_ipaddress]) (authenticated bits=0) 
                        by my_smtpserver_hostname (8.14.2/8.14.2) 
                        with ESMTP id n9SCX6ml017820 for <ravi.cybertechie@yahoo[dot]com>; 
                        Wed, 28 Oct 2009 08:33:08 -0400

X-DKIM                : Sendmail DKIM Filter v2.5.1
                        my_smtpserver_hostname n9SCX6ml017820

DKIM-Signature        : v=1; a=rsa-sha256; c=simple/simple; d=mydomain[dot]com; s=mydomain;
                        t=1256733190; bh=oBeBoCqUcTrV/4cgaMK58OrPkchqCMzB2Vax aRRph6g=;
                        h=From:To:Subject:Date:Content-Type:MIME-Version;
                        b=faLHQ jAakBDkxbz8xhGmfi2ZfBHXUBFOWTZs9BAfaksB8lJghho6YmUPKIY5oMJMsCkh/QLQ 8RXD8dUPf04X6A==

X-DomainKeys          : Sendmail DomainKeys Filter v1.0.2 
                        my_smtpserver_hostname n9SCX6ml017820

DomainKey-Signature   : a=rsa-sha1; s=mydomain; d=mydomain[dot]com; c=simple; q=dns;
                        b=3Wazgw8//NzW95FYyQGZdXDuc4mLkp6+OdOIv224+aC0imfrA3GoeSEIt0UTyaT9d ygfHc6OKuxy7cz0/a3FnA==

Message-Id            : <200910281233.n9SCX6ml017820@my_smtpserver_hostname>

From                  : mydomain Admin <admin@mydomain[dot]com> Add sender to Contacts

To                    : Recipient <ravi.cybertechie@yahoo[dot]com>

Subject               : Mail from zend

Date                  : Wed, 28 Oct 2009 12:33:05 +0000

Content-Type          : multipart/alternative; charset="iso-8859-1";
                        boundary="=_2f9550c6ce7fb246f62d84f1221854d7"

MIME-Version         : 1.0

Длина содержимого: 4918