У меня два веб-сайта, размещенных на одном сервере. Я установил второй сайт после того, как уже установил первый сайт и соответствующий ему почтовый сервер. Это скорее вопрос DNS. Первый сервер долгое время работал без проблем, его запись SPF проверялась отлично, и я отправляю почту без проблем. Я установил второй веб-сервер, используя apache vhost, и использовал iRedAdmin для настройки второго почтового домена. Проблема, по-видимому, связана с моей записью SPF, и всякий раз, когда я отправляю почту со второго домена, она помечается как спам. Я установил его, используя исходный почтовый сервер в качестве MX, но я никогда не делал два почтовых сервера на одном IP-адресе, и я не уверен, что я его испортил.
Вот две записи SPF для справки (имена хостов скрыты):
Это отлично работает:
v=spf1 a mx a:server1.com mx:mail.server1.com ip4:x.x.x.x ~all
Это не работает:
v=spf1 a mx a:server2.com mx:mail.server1.com ip4:x.x.x.x ~all
А идеи? Сервер 2 в том, что касается почты, является просто прикрытием для server1. Вы можете отправлять почту на test@server2.com, но она будет маршрутизироваться через сервер iredmail на server1.com.
Любая информация будет оценена, так как мне нужно, чтобы мои сообщения перестали помечаться как спам.
Received-SPF: neutral (google.com: x.x.x.x is neither permitted nor denied by best guess record for domain of mymail@server2.com) client-ip=x.x.x.x;
Хорошо. Меня не волнует, знаете ли вы мои IP-адреса, мне просто нужно знать, почему Gmail отправляет это в папку спама. Судя по заголовкам в сообщении, он проходит тесты SPF и т. Д.
Delivered-To: spuy767@gmail.com
Received: by 10.58.206.18 with SMTP id lk18csp38915vec;
Fri, 22 Feb 2013 11:17:09 -0800 (PST)
X-Received: by 10.68.203.100 with SMTP id kp4mr4779507pbc.186.1361560628737;
Fri, 22 Feb 2013 11:17:08 -0800 (PST)
Return-Path: <clay@claygarland.com>
Received: from signtelligence.com ([198.71.84.238])
by mx.google.com with ESMTP id d10si3813292paz.55.2013.02.22.11.17.08;
Fri, 22 Feb 2013 11:17:08 -0800 (PST)
Received-SPF: pass (google.com: domain of clay@claygarland.com designates 198.71.84.238 as permitted sender) client-ip=198.71.84.238;
Authentication-Results: mx.google.com;
spf=pass (google.com: domain of clay@claygarland.com designates 198.71.84.238 as permitted sender) smtp.mail=clay@claygarland.com
Received: from localhost (localhost.localdomain [127.0.0.1])
by signtelligence.com (Postfix) with ESMTP id DD33E5362890
for <spuy767@gmail.com>; Fri, 22 Feb 2013 23:17:07 +0400 (MSK)
X-Virus-Scanned: Debian amavisd-new at signtelligence.com
Received: from signtelligence.com ([127.0.0.1])
by localhost (signtelligence.com [127.0.0.1]) (amavisd-new, port 10024)
with ESMTP id NhgKkX5jwSBC for <spuy767@gmail.com>;
Fri, 22 Feb 2013 23:17:07 +0400 (MSK)
Received: from claygarland.com (localhost.localdomain [127.0.0.1])
by signtelligence.com (Postfix) with ESMTPA id 76033536288F
for <spuy767@gmail.com>; Fri, 22 Feb 2013 23:17:06 +0400 (MSK)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8;
format=flowed
Content-Transfer-Encoding: 7bit
Date: Fri, 22 Feb 2013 14:17:06 -0500
From: clay@claygarland.com
To: <spuy767@gmail.com>
Subject: It's been a long time.
Message-ID: <59b5ce9cc073e86a1bc8bd15475a9a8c@claygarland.com>
X-Sender: clay@claygarland.com
User-Agent: RoundCube WebMail
Hey. I just wanted to say hello. It's been a long time since we've
talked. My new phone number is (xxx) xxx-xxxx. Give me a ring!
Peace,
Clay
Во-первых, в ваших записях есть избыточный синтаксис.
Я предполагаю, потому что нам действительно понадобятся правильные домены и IP, чтобы сделать что-либо наверняка.
v=spf1 a mx a:server1.com mx:mail.server1.com ip4:192.168.1.254 ~all
Если указанный выше SPF является SPF для server1.com, тогда;
v=spf1 a ~all
является синонимом
v=spf1 a:server1.com ~all
Кроме того, если 192.168.1.254 является IP-адресом A-записи записи MX, то он тоже является избыточным.
Кстати, я надеюсь, что 192.168.1.254 - это обфусцированный IP ... в вашем SPF НЕ должен быть немаршрутизируемый IP, указанный в них.
Итак, предположим, что вы отправляете электронные письма, используя записи MX на server1.com из обоих доменов, ваши записи SPF будут выглядеть следующим образом;
На server1.com;
v=spf1 +mx ~all
На server2.com;
v=spf1 +mx:server1.com ~all
Кроме того, если оба домена имеют одинаковые записи MX, вы можете использовать один и тот же SPF для обоих доменов.
На server1.com и server2.com
v=spf1 +mx ~all
В + перед mx гарантирует, что результат будет Проходить в отличие от Нейтральный результат. Тем более, что вы используете мягкий провал (~ все)
Наконец, я предлагаю вам прочитать Документация по синтаксису OpenSPF.
Я думаю, вы неправильно понимаете, как работают записи SPF. Вот разбивка того, что у вас есть.
a:server1.com
: Если IP-адрес отправляющего сервера разрешается как server1.com, разрешите этому аппарату отправлять почту.
mx:mail.server1.com
: Получить записи MX для домена mail.server1.com. Если какой-либо из них (их может быть несколько) разрешает IP-адрес отправляющего сервера, разрешите этому компьютеру отправлять почту.
ip4:192.168.1.254
: разрешить этому IP отправлять почту для этого домена.
Итак, если у вас здесь только один компьютер, он должен работать, если запись SPF для второго домена такая же, как и для первого. Т.е.
v=spf1 a mx a:server1.com mx:mail.server1.com ip4:192.168.1.254 ~all
Хотя вы можете упростить это в зависимости от того, как IP-адреса разрешают:
v=spf1 a a:server1.com ip4:192.168.1.254 ~all
Еще нужно проверить, правильно ли настроена запись PTR. Независимо от того, с какого IP-адреса сервер отправляет, должна быть запись обратного просмотра для того, что делает сам сервер HELO.
Удачи!