включить редактирование

письма с сервера postfix попадают в спам

Создан:

Как настраивать почтовый сервер написано здесь

Настройка postfix dovecot mysql

Проверяем:
Заголовок Return-Path
Устанавливаем его в php.ini, ищем sendmail_path и приводим к виду: "sendmail_path = /usr/sbin/postfix -t -i -f no-reply@info-linux.ru".

Заголовки Received: from и Received: by также являются важными.

root@mail:/# vim /etc/postfix/main.cf
myhostname = info-linux.ru
mydomain = info-linux.ru
root@mail:/# service postfix restart

Имя Вашего домена должно быть указано в SPF записи! (рассмотрим далее)
Не лишнее будет указать в файле /etc/hosts строку

Не проверял но где то видел, что в /etc/hosts добавляют строку например "95.71.126.194 info-linux.ru", типа в помощь заголовкам Received: from и Received: by, не знаю на сколько это необходимо, если собственный DNS сервер резолвит это имя.
Далее в файле /etc/sysconfig/network убеждаемся что HOSTNAME=info-linux.ru.

Важный момент - SPF (Sender Policy Framework - структура политики отправителя)

Агенты передачи электронной почты с помощью простого DNS-запроса запрашивают SPF-информацию, таким образом идентифицируя сервер отправителя. Правила SPF определены в RFC 4408.
В SPF записи указываете какие серверы имеют моральное право отправлять почту с Вашего домена. В самом простом случае запись выглядит так:

info-linux.ru. IN TXT "v=spf1 a mx ~all"
или/и (если NS позволяет создавать SPF записи)
info-linux.ru. IN SPF "v=spf1 a mx ~all"
Таким образом с DNS записью в секции «a»  сервер имеет право отправлять почту и в секции «mx» - почтовый сервер.
 На официальной странице http://www.openspf.org/SPF_Record_Syntax есть много написанного о синтаксисе SPF записей.
Прописываем в нашем DNS-сервере строку вида:
v=spf1 +mx +a:info-linux.ru +ip4:95.71.126.194 include:_spf.google.com ~all

Далее пропишем обратную ДНС зону PTR (ip пишем в обратном порядке):

194.126.71.95.in-addr.arpa IN PTR info-linux.ru.

проверка nslookup 95.71.126.194 или nslookup -type=PTR 95.71.126.194
Далее обязательно проверить и если её нет, то прописать MX запись например:

IN MX 1 info-linux.ru.

Далее важным является

подпись электронной почты DKIM

DomainKeys Identified Mail — аутентификация E-mail. Технология DKIM предоставляет возможность антифишинга и антиспама, целью является повышение качества идентификации и классификация легитимной электронной почты.

DKIM добавляет к сообщению цифровую подпись, которая непосредственно связанна с именем домена. Затем на стороне получателя проверяется подпись DKIM.

Для этого нам нужен dkim-filter.

Ставим его:

root@mail:/# apt-get install dkim-filter

Открываем /etc/dkim-filter.conf и дописываем в конец:

Canonicalization    relaxed/relaxed
KeyList         /etc/dkim-keys.conf
Domain *
BodyLengths yes

Создаем каталог для ключей с соответсвующими правами:

mkdir -p /etc/postfix/dkim/
chgrp postfix /etc/postfix/dkim/
chmod 750 /etc/postfix/dkim/
cd /etc/postfix/dkim/

Сгенерируем ключи для info-linux.ru, один ключ открытый, а второй-закрытый:

dkim-genkey -d info-linux.ru -s mail -r 

-r ключ будет использован только для почты
-s задает имя dkim-selector (указываете любое имя например свого домена)

Посмотрим на сгенерированный mail.txt:

root@mail:/etc/postfix/dkim# cat mail.txt 
mail._domainkey IN TXT "v=DKIM1; g=*; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBi..." ; ----- DKIM mail for info-linux.ru

Копируем содержимое файла и заносим в описание зоны на нашем DNS сервере.
Переименуем файл mail.private в просто mail.

root@mail:/etc/postfix/dkim# mv mail.private mail

В файле /etc/dkim-keys.conf пишем какие домены и каким ключом необходимо подписывать, но для начала создаем его:

root@mail:/home/awful# touch /etc/dkim-keys.conf
root@mail:/home/awful# ls -la /etc/dkim*
-rw-r--r-- 1 root root 1854 Апр 27 13:21 /etc/dkim-filter.conf
-rw-r--r-- 1 root root    0 Апр 27 13:35 /etc/dkim-keys.conf

root@mail:/home/awful# cat /etc/dkim-keys.conf 
*@info-linux.ru:info-linux.ru:/etc/postfix/dkim/mail
*:info-linux.ru:/etc/postfix/dkim/mail

*@example.com:example.com:/etc/postfix/dkim/mail
*:example.com:/etc/postfix/dkim/mail

Далее /etc/default/dkim-filter укажем dkim-демону, где ждать подключений:

SOCKET="inet:8891@localhost"

Затем, пишем в конец /etc/postfix/main.cf:

milter_default_action = accept
milter_protocol = 2
smtpd_milters = inet:localhost:8891
non_smtpd_milters = inet:localhost:8891

Не забудьте добавить TXT запись и затем проверяем, что она присутствует:

dig txt mail._info-linux.ru

Ребут postfix и dkim-filter:

root@mail:/home/awful# /etc/init.d/postfix restart
Stopping Postfix Mail Transport Agent: postfix.
Starting Postfix Mail Transport Agent: postfix
root@mail:/home/awful# /etc/init.d/dkim-filter restart
Restarting DKIM Filter: dkim-filter.

На Яндекс или Гугле проверяем подпись:
В случае успешной проверки запрещаем без подписи, принимать нашу почту, добавляем ADSP запись:

_adsp._domainkey IN TXT "dkim=all"

Все.

Автор: awful Просмотров: 7560


Рейтинг статьи: 888

Общий рейтинг по отношению ко всем статьям автора :
{10 [888]}[max] [ * * * * * * * * * * ]

Общий рейтинг из всех статей на сайте :
{10 [888]}[max] [ * * * * * * * * * * ]

[?]
комментариев к данной статье нет

Добавить комментарий к статье


Ctrl+Enter

Для активации кнопки, введите символы, которые Вы видите на картинки.

новая

тема

Заметки на тему IT

Монитор поиска
[x]
Новое сообщение

Сообщения в чате

Вы спрашиваете у гостей/у зарегистрированных/ У Вас спрашивают
всем Ctrl+Enter
зарегистрированным Ctrl+Enter
Ctrl+Enter

Краткая инструкция по работе с чатом

  • Вы должны ввести имя, которое будет запомнено и применяться для чата и комментариев на сайте.
  • Выбрать одну из возможностей
    "Вы спрашиваете у гостей/
    у зарегистрированных/
    У Вас спрашивают"
  • Кликните на один из способов и появиться дополнительная информация