- Настройка SPF-записи
- Основной синтаксис
- ip4 / ip6
- include
- redirect
- Прочие механизмы
- exists
- Примеры настроек
- Настройка SPF для «Почты для доменов» от Mail.Ru
- Настройка SPF для Яндекс.Почты
- Настройка SPF для Google
- Другие примеры
- Видеоинструкция
- Настройка SPF и DKIM
- Настройка SPF (Sender Policy Framework).
- Настройка SPF записи
- Настройка DKIM (DomainKeys Identified Mail).
- Настройка поддержки DKIM почтовым сервером Postfix.
- Читайте другие интересные статьи
Настройка SPF-записи
SPF (Sender Policy Framework) — это DNS-запись, содержащая список доверенных серверов, с которых может отправляться почта данного домена, и сведения о механизме обработки писем, отправленных с других серверов. Корректная настройка SPF позволит снизить вероятность рассылки спама злоумышленниками от вашего имени.
В панели Timeweb SPF настраивается в разделе «Домены и поддомены» — «Настройки DNS» — «Добавить DNS запись» — «TXT». Если TXT-запись с параметрами SPF уже создана, необходимо ее отредактировать. Не рекомендуется создавать несколько SPF-записей для домена, так как это может вызывать проблемы с доставкой почты.
Для доменов, делегированных на наши NS-серверы, SPF-запись указывается автоматически и выглядит примерно следующим образом:
Такая запись означает, что письма с данного домена могут отправляться из подсетей 176.57.223.0/24 и 92.53.116.0/22, а письма, пришедшие с других серверов (all), должны проходить дополнительную проверку (
Основной синтаксис
Любая SPF-запись начинается с v=spf1, этот параметр не изменяется. Он указывает на версию записи, и в настоящее время поддерживается только spf1.
Далее указываются параметры (механизмы). Чаще всего используются следующие: all, ip4, ip6, a, mx, include, redirect. Также существуют, но используются значительно реже: ptr, exists, exp. Они все будут рассмотрены ниже.
Помимо механизмов используются префиксы (определители):
- «+» — Pass, принимать почту. Прописывать этот параметр необязательно, он установлен по умолчанию (т.е. значения «+a +mx» и «a mx» — идентичны).
- «—» — Fail, отклонять почту.
- »
» — SoftFail, «мягко» отклонять (принимать почту, но помещать ее в «Спам»).
Параметр «all» подразумевает все серверы, не упомянутые отдельно в SPF-записи. «All» задает обработку полученных с них писем и указывается в конце записи.
— принимать почту только из подсети 176.57.223.0/24; письма с других адресов должны быть помечены как спам.
— принимать почту только с A-записи домена; письма с других адресов должны отвергаться.
— отвергать все письма с домена. Такую настройку можно использовать для доменов, с которых не должна отправляться вообще никакая почта.
В последующих примерах мы не будем дополнительно комментировать значения параметров
all и -all в SPF-записях.
ip4 / ip6
Используется для указания конкретных адресов и подсетей, из которых могут отправляться письма. Синтаксис для IPv4 и IPv6 идентичен.
— принимать почту из подсети 176.57.223.0/24.
— принимать почту с IPv6-адреса 2001:db8::10.
IP отправителя проверяется на соответствие A-записи домена.
— принимать почту с A-записи текущего домена.
— принимать почту с A-записи домена sub.domain.com.
IP отправителя проверяется на соответствие IP-адресам серверов, указанных в MX-записях домена. На текущий день для многих современных сервисов эта директива уже не так важна, так как серверы входящей и исходящей почты зачастую имеют разные IP.
— принимать почту с MX-серверов текущего домена и домена sub.domain.com.
— принимать почту из подсети, в которую входят MX-серверы текущего домена.
include
Позволяет учитывать в SPF-записи настройки SPF другого домена.
— принимать почту с A-записи текущего домена и серверов, указанных в SPF-записи домена other-domain.com.
При такой настройке проверяется SPF домена other-domain.com; если это, допустим, «v=spf1 a -all», то далее IP отправителя проверяется на соответствие A-записи домена other-domain.com.
redirect
Технически, redirect является модификатором, а не механизмом. Он выполняет одну основную функцию: сообщает, что необходимо применять настройки SPF другого домена.
— почта должна приниматься или отклоняться согласно настройкам домена other-domain.com.
Прочие механизмы
Здесь мы рассмотрим оставшиеся механизмы, которые используются в настройках значительно реже.
PTR-запись IP-адреса отправителя проверяется на соответствие указанному домену. Данный механизм требует большого количества DNS-запросов при проверке, поэтому без острой необходимости использовать его в SPF не рекомендуется.
— принимать почту со всех адресов, PTR-запись которых направлена на домен other-domain.com
exists
Запрашивается А-запись указанного домена; если она существует, проверка считается пройденной. Другими словами, проверяется, резолвится ли домен на какой-либо (любой) IP-адрес.
— принимать почту, если существует A-запись домена mydomain.com.
Параметр «exp» применяется для отправки сообщения об ошибке отправителю письма. С помощью «exp» в SPF прописывается определенный поддомен, в TXT-записи которого указан текст сообщения об ошибке. Имя поддомена и текст ошибки может быть любым.
Параметр «exp» всегда указывается в конце записи (после all).
При этом TXT-запись домена error-spf.mydomain.com содержит: «Not authorized to send mail for this domain».
Примеры настроек
Настройка SPF для «Почты для доменов» от Mail.Ru
(подробнее о настройке DNS для Mail.ru см. здесь)
Если вы отправляете почту только с серверов Mail.Ru:
Если вы отправляете почту так же и с других серверов (укажите IP-адреса или подсети вместо IP1, IP2 и т.д.):
Настройка SPF для Яндекс.Почты
(подробнее о настройке DNS для Яндекса см. здесь)
При использовании только серверов Яндекса:
При использовании также и других серверов (укажите IP-адреса или подсети вместо IP1, IP2 и т.д.):
Настройка SPF для Google
(подробнее о настройке DNS для Google см. здесь)
При использовании только серверов Google:
При использовании также и других серверов (укажите IP-адреса или подсети вместо IP1, IP2 и т.д.):
Другие примеры
— принимать почту с IP-адресов, соответствующих A-записям текущего домена, с IP-адреса 176.57.223.12 и серверов, указанных в SPF-записи domain2.com; прочие письма отклонять.
— принимать почту из подсети, в которую входят MX-серверы текущего домена, и из подсети, в которую входят A-записи домена domain2.com; прочие письма отклонять.
— принимать почту с A-записи текущего домена, IP-адреса 176.57.223.12, а также с серверов, указанных в SPF домена domain2.com.
Видеоинструкция
- 00:00 | Зачем нужна SPF-запись?
- 00:50 | Что происходит с письмом после отправки?
- 2:44 | Настраиваем бесплатный домен и почту
- 5:18 | Где редактировать почтовые записи. Виды записей
- 6:50 | Проверяем письмо на подозрительность
- 8:06 | Как уберечь свою почту от спама?
Источник
Настройка SPF и DKIM
SPF и DKIM – это механизмы верификации почтового сервера, позволяющие проверить его подлинность. Многие почтовые сервера используют их при получении почты, чтобы быть уверенным в том, что получаемая почта не является спамом. Если вы организуете рассылку со своего почтового сервера, например, периодическую рассылку, либо рассылку писем от вашего интернет-магазина, вам, скорее всего, придется настраивать оба механизма, поскольку это позволит быть уверенным в том, что ваши письма доставляются и автоматически не определяются как спам.
Настройка SPF (Sender Policy Framework).
Настройка SPF является достаточно простой. Для этого достаточно создать записи DNS, определяющие, с каких серверов разрешена отправка почты для данного домена. Использоваться могут два типа записи – TXT и SPF.
В данном примере указывается, что отправка почты данного домена разрешена только с хоста с адресом , для которого есть записи типа A и MX, со всех остальных отправка запрещена.
После добавления записей не забудьте изменить serial для зоны DNS и перезагрузить информацию о доменной зоне. Если вы всё сделали правильно, то при отправке письма на другой домен, например, на gmail.com, в заголовках письма вы увидите следующий заголовок:
Настройка SPF записи
SPF-запись — проверка отправителя.
Как всем известно, протокол отправки электронной почты SMTP, подразумевает, что в качестве отправителя можно указать любой почтовый ящик. Таким образом можно послать письмо, подставив в поле «From» вымышленное значение. Процесс такого почтового обмана называется Спуфинг (e-mail spoofing). Чтобы бороться с этим явлением, был разработан и введен в действие стандарт SPF – Sender Policy Framework (структура политики отправителя).
SPF позволяет владельцу домена указать в TXT-записи домена специальным образом сформированную строку, указывающую список серверов, имеющих право отправлять email-сообщения с обратными адресами в этом домене.
Рассмотрим простой пример SPF-записи:
Теперь более детально о допустимых опциях. Рассмотрим варианты поведения получателя, в зависимости от используемых опций:
- «v=spf1» — используемая версия SPF.
- «+» — принимать корреспонденцию (Pass). Этот параметр установлен по умолчанию. Тоесть, если никаких параметров не установлено, то это «Pass»;
- «-» — Отклонить (Fail);
- «
» — «мягкое» отклонение (SoftFail). Письмо будет принято, но будет помечено как СПАМ;
Итак, попробуем разобраться, что же значит SPF-запись, указанная выше.
- «+a» — разрешает прием писем от узла, IP-адрес которого совпадает с IP-адресом в A-записи для example.org;
- «+mx» — разрешает прием писем, если отправляющий хост указан в одной из MX-записей для example.org;
- «-all» — все сообщения, не прошедшие верификацию с использованием перечисленных механизмов, следует отвергать.
Для лучшего понимания того, как работает SPF, рассмотрим еще один, более сложный пример:
Теперь более подробно о используемых опциях.
- «mx» — принимать письма от серверов, указанных в MX-записях;
- «ip4:78.110.50.123» — принимать письма, отправленные с IP-адреса 78.110.50.123;
- «+a:mail.ht-systems.ru» — то же, что и a:mail.ht-systems.ru. Принимать от mail.ht-systems.ru;
- «include:gmail.com» — принимать письма с серверов, разрешенных SPF-записями gmail.com;
- «
all» — принимать письма со всех остальных серверов, но помечать их как СПАМ
А теперь рассмотрим еще более «экзотичный» пример. В описании возможных опций указывалось, что возможно указание сетей ip-адресов. Стоит отметить, что это применимо и к записям «a» и «mx». Рассмотрим следующий пример:
«mx/24» — в список разрешенных отправителей входят все IP-адреса, находящихся в тех же сетях класса С, что и MX-ы домена;
«a:hts.ru/24» — в список разрешенных отправителей входят все IP-адреса, находящихся в тех же сетях класса С, что и А-записи домена hts.ru;
«-all» — всех остальных отправителей — блокируем.
Иногда можно встретить следующие записи (очень редко):
«ptr» — проверяет PTR-запись IP-адреса отправителя. Если она сходится с указаным доменом, то механизм проверки выдает положительный результат. Тоесть, разрешено отправлять всем IP-адресам, PTR-запись которых направлены на указанный домен. Серьезным недостатком даного метода есть то, что генерируется очень большое количество DNS-запросов;
«exists» — выполняется проверка, резолвится ли домен на какой-либо IP-адрес. Тоесть, по существу, выполняется проверка работоспособности доменного имени. Кстати, не имеет значения, на какой IP-адрес резолвится домен, даже если это «серые» сети (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) или loopback (127.0.0.1).
Также не будет излишним ознакомиться со следующими опциями: redirect и exp.
«redirect» — указывает получателю, что нужно проверять SPF-запись указаного домена, вместо текущего домена. Пример:
В даном примере будет проводится проверка SPF-записи домена example.com, а не example.org.
«exp» — использование даной опции позволяет задать сообщение о ошибке, которое будет передано отправителю при возникновении таковой. Размещается в конце SPF-записи, даже после опции all. Рассмотрим более детально механизм работы опции exp.
Допустим, что у домена example.org следущая SPF-запись:
Теперь содаем TXT-запись для домена spf.example.org:
В результате этих шаманских действий SPF-запись будет контролировать, чтобы почта доставлялась только от валидных хостов, а всем остальным будет отправляться сообщение о ошибке, прописанное в TXT-записи домена spf.example.org.
Так же стоит обратить внимание, что любое решение о блокировке или маркировке письма как спам, решает программа которая обрабатывает получение почты на сервере, иногда даже почтовые программы это тоже делают.
Настройка DKIM (DomainKeys Identified Mail).
Настройка DKIM несколько сложнее, чем настройка SPF. Для работы этого механизма необходимо следующее:
– Почтовый сервер должен уметь подписывать письма
– Должны быть созданы приватный и публичный ключи
– Должны присутствовать записи в DNS, указывающие на наличие поддержки DKIM
Ключи можно сгенерировать при помощи OpenSSL. Генерация приватного ключа:
После генерации приватного ключа необходимо изменить права доступа к нему:
Генерация публичного ключа:
Ключи готовы. Их можно разместить в директории, где хранятся другие ключи. Для Debian’а это директория /etc/ssl/private. Сгенерировать их можно также при помощи программы opendkim-genkey, входящую в пакет opendkim-tools. Теперь надо добавить записи в DNS. Записей будет две.
То, что идет после «p=» – это ключ, содержащийся в файле dkimpublic.key, он записывается в одну строчку. А запись «_adsp._domainkey.domain.ru» определяет, должны ли подписываться письма. Возможные варианты:
«dkim=all» – все письма должны подписываться
«dkim=discardable» – неподписанные письма не должны приниматься
«dkim=unknown» – то же самое, что и отсутствие такой записи.
После создания записей изменяем serial и перезагружаем настройки bind’а, если у вас установлен он. И теперь осталось последнее – настроить почтовый сервер. В качестве почтового сервера возьмем Postfix.
Настройка поддержки DKIM почтовым сервером Postfix.
Последняя и, пожалуй, самая важная часть – включение подписи писем почтовым сервером. Самое первое, что нужно сделать на этом этапе, – это установить opendkim:
Теперь необходимо настроить этот сервис. Первым делом поменяем файл /etc/default/opendkim. Впишем туда следующую строчку:
Теперь наш сервер будет запускаться на порту 10024 на loopback-интерфейсе. Следующий файл, который необходимо изменить, – это /etc/opendkim.conf.
Раскомментируем строчку со словом Domain, вписываем название нашего домена:
Теперь указываем файл с приватным ключом:
После этого указываем селектор, который мы использовали для сгенерированного ранее публичного ключа, указывая его в записи DNS. В нашем случае это «mail»:
Теперь можно рестартовать opendkim:
И последний шаг – настройка непосредственно Postfix’а. Изменяем файл /etc/postfix/main.cf. Добавим туда следующие строчки:
Теперь перезапускаем postfix и отправляем письмо. После получения смотрим заголовки письма. В них должен присутствовать следующий заголовок:
Если вы видите строчки «spf=pass» и «dkim=pass», значит вы все сделали правильно и ваш почтовый сервер теперь будет значительно лучше восприниматься другими почтовыми серверами, с чем я вас и поздравляю
Читайте другие интересные статьи
Понравилась статья, расскажи о ней друзьям, нажми кнопку!
Источник