Меню

Настройка dkim exim4 debian



DKIM + EXIM4 (Debian 7)

#1 Demonik

  • Администраторы
  • 43 сообщений
  • Начиная с версии Exim 4.7+ DKIM встроен в него. Достаточно просто создать подпись:

    1.Создаем папочку /etc/exim4/dkim и генерим секретный ключ через openssl

    где example.com — доменное имя нашего почтовика

    На выходе получаем ключ вида:

    2. Генерим публичный ключ на основе секретного

    На выходе получаем в файле publick.key:

    3. Правим конфиг Exim4 «/etc/exim4/exim4.conf»

    Пишем в в начало файла exim4.conf

    Далее задаем переменные и пишем их до строчки remote_smtp:

    DKIM_DOMAIN = example.mydomain.ru (только так у меня заработало dkim=pass(в отличии от верхней строки), возможно потому что у меня на данный момент серверс рассылками и там отправляется почта от другого домена)

    (где dkim_selector это любое слово dkim, dkimcompany, другой селектор)

    Эта конструкция позволит использовать разные Private key для разных доменов.

    (некоторые электронные письма, подписанные)

  • (все письма подписаны)
  • ! (Все подписано, нет подписи 3ей стороны)
  • . (Не отправляются письма)
  • Значений dkim= может быть три:

    • all — Все письма должны быть подписаны
    • discardable — Не подписанные письма не должны приниматься
    • unknown — Аналогично отсутствию записи

    Источник

    Настройка DKIM в Exim

    Чтобы письма, которые посылает наш почтовый сервер, не так часто попадали в Спам, необходимо настроить DKIM (DomainKeys Identified Mail). Делать мы это будем на примере Exim, ОС — Ubuntu.

    Описание

    Первым делом, нам необходимо создать каталог, в котором мы будем хранить наш приватный ключ.

    Далее нам необходимо сгенерировать приватный ключ, который будет только у нас на сервере и публичный ключ, который мы потом внесем в DNS запись.
    Переходим в папку /etc/exim4/dkim

    Генерируем приватный ключ example.com.key

    Генерируем публичный ключ example.com.public из нашего приватного ключа example.com.key

    Меняем владельца каталога /etc/exim4/dkim и всех файлов внутри на Debian-exim, именно под этим пользователем запускается Exim. Эту нужно, чтобы он имел доступ к файлу приватного ключа.

    Далее, нам необходимо внести изменения в файл конфигурации Exim /etc/exim4/exim4.conf.template , чтобы он использовал наш приватный ключ. Для этого, открываем файл конфигурации и вносим следующие строчки перед секцией remote_smtp:

    Сохраняем изменения и перезапускаем Exim следующей командой:

    Чтобы проверить конфигурацию, можно воспользоваться следующей командой:

    Теперь нам необходимо создать в DNS зоне нашего домена запись типа TXT, в которой указать наш публичный ключ в соответствующем формате. В поле имя указываем:

    Где email — это селектор из предыдущего пункта настройки.
    А в поле самой записи, указываем следующую строку:

    v=DKIM1 — версия DKIM
    h=sha256 — предпочитаемый hash-алгоритм, может быть sha1 и sha256
    k=rsa — тип публичного ключа p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDcbu6mvGWmF65Suqazr3Krb2Ky/EXs8qaT1yMDfc00YJD77dq6jCnAwxQUHHuKanlELGd1uqoVpKzmmVoquUChbmTzs5MBuzw0TCEhzIyyiD+ZZBbJQa85a7OhdLoDs7MkwlF2Asqj4k44CpJo0c7gAySdbIQNaY9YpTW0L1TatwIDAQAB — сам публичный ключ, который лежит у нас в файлике /etc/exim4/dkim/example.com.public

    Протестировать работу DKIM можно с помощью следующих сервисов:
    Проверяем, что на DNS сервере существует DKIM запись и она корректна этим сервисом.
    Если все хорошо, то можно приступать к проверке корректной работы Exim и послать тестовое письмо, для этого, можно воспользоваться этим сервисом.

    Источник

    Настройка DKIM для Exim в Debian

    Лично мне всегда Exim в качестве MTA всегда нравился больше, нежели Postfix. А тут ещё и оказалось, что начиная с версии 4.2 поддержка DKIM встроена в exim и нет необходимости устанавливать какие либо дополнительные пакеты. Сравните при этом как настраивается DKIM в postfix.
    Проверяем версию Exim на нашем сервере

    Отлично. Поддержка уже имеется. Осталось только сгенерировать сертификат и внести настройки в Exim и DNS
    Займёмся генерацией сертификатов

    Из приватного ключика нам нужно получить публичный. Он нам понадобится для создания доменной записи

    Ну и спрячем его от посторонних глаз

    Далее настройка Exim. Всё очень просто
    Меняем

    Обратите внимание на селектор, подсеченный в коде. Его имя должно совпадать с теми данными, которые будем добавлять в DNS. Имя выбирайте абсолютно любое, главное что бы в настройках Exim и в доменной записи был один и тот же

    Настройка DNS

    Правильная настройка DNS записи заключается в том, что бы добавить корректную TXT-запись в доменную зону
    Шаблон зоны выглядит так:
    selector._domainkey.domain.name
    О селекторе уже вспоминали. В нашем случае это main
    Для того что бы сформировать тело записи, нам нужно получить ключик от нашего селектора. Для этого мы выше выполняли команду для генерации публичного ключа. Посмотрим на его содержимое

    Читайте также:  Настройка дисков и драйверов устройств

    Нам нужно всё, что находится между ——BEGIN PUBLIC KEY—— и ——END PUBLIC KEY——
    Обратите внимание, что ключ должен располагаться в одну строку и не иметь пробелов. В итоге мы должны добавить TXT-запись main._domainkey.example.com.ua со значением:

    О том как проверить правильность я писал в предыдущей статье.
    Кроме того можно воспользоваться онлайн утилитами как эта или эта

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

    Для отправки комментария вам необходимо авторизоваться.

    Источник

    Настройка Exim DKIM в Debian

    Настроим на нашем почтовым сервере Exim DKIM подписи, для того чтобы письма с нашего почтового сервера не попадали в спам и быстрее проходили проверку в различных спам-фильтрах, а также повысить доверие к нашему почтовому серверу со стороны популярных почтовых систем mail, yandex, gmail.

    И добавим в DNS нашего домена необходимых записей о наличии поддержки DKIM.

    Рассмотрим настройку DKIM при помощи opendkim-tool

    создаем папку dkim в которой будет лежать наш приватный ключ

    Меняем права на папку с root на Debian-exim

    Генерируем открытый и закрытый ключи для домена adminunix.ru:

    D

          Каталог в который будут сгенерированы ключи

    d

        Называет домена, который будет использовать этот ключ для подписания

    После выполнения будут созданы файлы etc/exim4/dkim/mail.private и /etc/exim4/dkim/email.txt, с секретным и публичными ключами соответственно.

    переходим в папку /etc/exim4/dkim/ и переименовываем mail.private в adminunix.ru.key

    Меняем права adminunix.ru.private (файл закрытого ключа) с root на Debian-exim

    Настройки DNS

    посмотрим содержимое файла mail.txt

    email._domainkey В TXT «v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxweK5
    +F42YFdkRQqZI922yCQc68pdgWUhYr7CSeCxcQ5P10oKi2mXtYxOOKmeA7NExY6U5jrGEJ6gyr
    BfsJPUp25PwApbpGZ+cIRB2/N3KcevEfiOVyyO7f7WduM+jmz69nyLozWO7QM2QjCCxWx6aKZm» ; —— DKIM ключ почты для adminunix.ru

    И добавляем эту информацию в нашу DNS зону в TXT запись.

    Добавляем в поле имя
    email._domainkey

    а в поле Контент

    v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxweK5
    +F42YFdkRQqZI922yCQc68pdgWUhYr7CSeCxcQ5P10oKi2mXtYxOOKmeA7NExY6U5jrGEJ6gyr
    BfsJPUp25PwApbpGZ+cIRB2/N3KcevEfiOVyyO7f7WduM+jmz69nyLozWO7QM2QjCCxWx6aKZm

    После того как мы добавили запись в DNS домена то mail.txt можно удалять файл.

    Проверяем добавление записи в DNS

    в ответ должны получить

    email._domainkey.adminunix.ru. 2214 IN TXT «v=DKIM1\; k=rsa\; t=s\; p=MIIBIj.

    Последним этапом настройки DKIM подписи является определение DKIM Author Domain Signing Practices (DKIM ADSP)
    Добавляем еще одну запись TXT в DNS домена.

    all

          — отправка неподписанных сообщений запрещена,

    discardable

          — все неподписанные сообщения должны быть заблокированы на стороне получателя.

    unknown

        — домен может подписывать некоторые или все письма

    Настройка Exim

    Добавляем в конфиг /etc/exim4/exim4.conf.template перед секцией remote_smtp:

    # DKIM:
    DKIM_DOMAIN = $>
    DKIM_KEY_FILE = /etc/exim4/dkim/DKIM_DOMAIN.key
    DKIM_PRIVATE_KEY = $<0>>
    DKIM_SELECTOR = email

    или если конфиг разделен (при установке exim4 был вопрос «разделить конфиги на мелкие файлы?»), то писать в /etc/exim4/conf.d/transport/30_exim4-config_remote_smtp

    Если вы в ручную создали конфигурационный файл /etc/exim4/exim4.conf, то добавлять надо в него.

    И так для каждого домена. И потом рестарт екзима:
    /etc/init.d/exim4 restart

    Посмотрим наши записи в конфигурационным файлом Exim

    где dkim_selector это первое слово перед ._domainkey в открытом ключе

    И проверяем через сервис [urlspan]сервис[/urlspan] всели у нас получилось.

    Читайте другие интересные статьи

    Понравилась статья, расскажи о ней друзьям, нажми кнопку!

    Источник

    Настройка dkim exim4 debian

    DKIM (расшифровывается как DomainKeys Identified Mail) — метод идентификации письма по доменным ключам. DKIM настраивается на почтовом сервере для того, чтобы подписывать исходящие письма цифровой подписью.

    Наличие такой подписи в заголовке отправленного письма сообщает серверу-получателю, что оно действительно было отправлено с указанного домена.


    Рассмотрим настройку DKIM при помощи opendkim-tool

    Cоздаем папку dkim в которой будет лежать наш приватный ключ:

    Меняем права на папку с root на Debian-exim

    Генерируем открытый и закрытый ключи для домена vacadem.ru:

    После выполнения будут созданы файлы etc/exim4/dkim/email.private и /etc/exim4/dkim/email.txt, с секретным и публичными ключами соответственно.

    переходим в папку /etc/exim4/dkim/ и переименовываем mail.private в vacadem.ru.key

    Читайте также:  Настройка распредвала эстонец 2

    Меняем права vacadem.ru.private (файл закрытого ключа) с root на Debian-exim

    Настройки DNS

    посмотрим содержимое файла email.txt

    И добавляем эту информацию в нашу DNS зону в TXT запись либо у регистратора, либо на нашем DNS сервере.

    После того как мы добавили запись в DNS домена то email.txt можно удалять.

    Настройка Exim

    В конфиг /etc/exim4/exim4.conf.template пишем:

    это писать перед секцией:
    remote_smtp:

    или если конфиг разделен (при инсталле exim4 был вопрос «разделить конфиги на мелкие файлы?»),
    то писать в /etc/exim4/conf.d/transport/30_exim4-config_remote_smtp

    При этом значение DKIM_SELECTOR и начальная часть DNS-записи должны совпадать (в этом примере: email).

    Источник

    Как не попасть в спам? Настройка PTR, SPF, DKIM на Exim

    Если вы выполнили все шаги, описанные в предыдущей статье, ваш сайт на Drupal готов отправлять письма пользователям. Теперь необходимо сделать так, чтобы отправляемые сайтом уведомления и прочая корреспонденция попадали во “Входящие”, а не “Спам”. В этом материале мы рассмотрим варианты решения этой задачи. 100% результат, к сожалению, гарантировать невозможно, но уменьшить вероятность фильтрации ваших писем в нежелательную почту вполне реально.

    Повысить доверие к вашим письмам и, соответственно, уменьшить шансы их попадания в “Спам”, можно с помощью:

    • настройки PTR записи;
    • настройки SPF записи;
    • настройки DKIM.

    Настройка PTR записи

    PTR запись связывает IP адрес с доменом вашего сайта. DNS-серверы хранят так называемые А записи, по которым сопоставляется домен и IP адрес сервера, на котором расположен сайт. PTR запись обратна A записи: она показывает связку IP адреса и домена. Иногда PTR называют Reverse DNS.

    В целях борьбы со спамом, почтовые сервисы в большинстве своём проверяют PTR у IP адреса сервера, с которого пришло письмо, а затем либо отправляют это письмо во «Входящее», либо фильтруют его в “Спам”. Соответственно, наличие этой записи и её совпадение с именем домена, который фигурирует в адресе отправителя, повышает доверие к приходящим с этого адреса письмам.

    Зачем и как указывать PTR запись?

    PTR запись указывается владельцем IP адреса сервера, с которого работает ваш сайт. Нужна та запись только в том случае, если вы используете VPS или выделенный сервер. На виртуальных хостингах PTR обычно есть и так, и указывает эта запись на имя сервера хостинг-провайдера.

    Как посмотреть PTR запись?

    Узнать PTR запись можно с помощью следующих команд:

    Команды запускаются в терминале (командной строке); вместо “ip адрес” следует подставлять реальный IP.

    Настройка SPF записи

    SPF расшифровывается как Sender Policy Framework, что можно перевести как “инфраструктура политики отправителя”. Это расширение для протокола отправки электронной почты через SMTP, которое позволяет добавить DNS записи типа TXT к доменному имени и указать в этих записях IP адреса серверов, с которых разрешена отправка электронной почты.

    SPF используется как фактор повышения доверия к исходящей от домена почте и в целях снижения вероятности попадания писем в “Спам”. Репутация домена, которую SPF позволяет защитить, также имеет не последнее значение: при рассылке спама или фишинговых писем, злоумышленники могут подставить в поле “От” любой адрес в любом домене, что может стать причиной проблем для владельца такого домена. IP адрес почтового сервера, с другой стороны, подделать невозможно, поэтому когда SPF запись для домена есть, принимающая сторона (почтовая служба) проверяет её и действует соответственно.

    Как создать SPF запись?

    SPF запись — текст с определённым синтаксисом. Пример SPF записи:

    В записи указано, что следует принимать почту с IP адресов, которые указаны в DNS записях типа A и MX для домена, сопровождаемого этой записью. Если же адреса иные, почту лучше отклонить. Запись может быть немного короче: «v=spf1 a mx -all», её суть и функциональность от этого не меняются.

    Синтаксис SPF записи

    «v=spf1» — используемая версия SPF.

    «+» — принимать почту. Этот знак не является обязательным.

    « — принимать почту, но фильтровать её в “Спам”.

    «?» — воспринимать письмо нейтрально, то есть применять к нему обычные правила.

    Читайте также:  Лодка и мотор настройка

    «mx» — IP адреса всех серверов, указанных в DNS записях типа MX для домена.

    «ip4» — здесь можно указать конкретные IPv4 адреса.

    «ip6» — здесь можно указать конкретные IPv6 адреса.

    «a» — IP адреса, которые указаны в DNS записях типа A для домена.

    «include» — разрешает применение SPF другого домена.

    «all» — устанавливает правила для всех других доменов, которых нет в SPF записи.

    Пример SPF записи

    Рассмотрим такую SPF запись:

    mx — принимать почту со своих почтовых серверов.

    a — принимать почту с серверов, которые указаны в записях типа A для своего домена.

    ip4:123.45.125.94— принимать почту, отправленную с IP 123.45.125.94. Здесь можно указывать подсети в формате 123.45.125.0/24.

    a:example.com — принимать почту с серверов, которые указаны в записях типа A для домена example.com. Здесь подсети можно указать в формате example.com/24.

    mx:example.com — принимать почту с почтовых серверов, указанных в записях типа MX для домена example.com. Подсети можно указывать, как и в a:example.com.

    include:example.com — разрешение на получение почты по правилам, указанным в SPF домена example.com.

    all — вся почта с доменов, не указанных в SPF, будет направляться в “Спам”. Если тильду заменить на минус (-all), такая корреспонденция вообще не будет приниматься.

    Настройка DKIM

    DKIM расшифровывается как DomainKeys Identified Mail, что можно перевести как “Идентифицированная ключом домена почта”. Это метод аутентификации, дающий возможность проверить, действительно ли письмо отправлено с домена, фигурирующего в поле “От”. DKIM — эффективный метод борьбы с фишинговыми письмами и спамом.

    Создание ключей DKIM при помощи opendkim-tool

    1. Для начала, необходимо установить opendkim-tools. Сделать это можно с помощью следующей команды:

    2. Затем надо создать папку dkim, в которой будут хранится ключи:

    3. Права на папку необходимо поменять с root на Debian-exim:

    4. Следующей командой генерируются открытый и закрытый ключи для домена example.com:

    D — каталог, в который будут сгенерированы ключи;

    d — домен, который будет использовать этот ключ для подписания;

    s — mymail — имя селектора, строкового идентификатора, который, в принципе, может быть любым.

    В результате, вы получите файлы etc/exim4/dkim/mymail.private и /etc/exim4/dkim/mymail.txt с секретным и публичными ключами соответственно.

    5. Теперь надо перейти в папку /etc/exim4/dkim/ и переименовать mail.private в example.com.key:

    6. Права на example.com.private (файл закрытого ключа) следует поменять с root на Debian-exim:

    Настройки DNS

    В файле mail.txt (cat /etc/exim4/dkim/mymail.txt) должно быть следущее содержимое:

    Эту информацию необходимо добавить в TXT запись DNS зоны. В поле имя надо добавить

    Теперь mymail.txt можно просто удалить.

    Чтобы проверить, всё ли в порядке с добавленными записями, надо выполнить следующую команду:

    Ответ должен быть такого вида:

    Определение DKIM Author Domain Signing Practices (DKIM ADSP)

    Чтобы указать практики DKIM Author Domain Signing Practices (DKIM ADSP), следует добавить в TXT DNS домена ещё одну запись:

    all — отправка неподписанных сообщений запрещена;

    discardable — все неподписанные сообщения должны быть заблокированы на стороне получателя;

    unknown — домен может подписывать некоторые или все письма.

    Настройка Exim

    Настройка Exim начинается с добавления следующих строк в конфигурационный файл /etc/exim4/exim4.conf.template (перед секцией remote_smtp):

    Конфигурационный файл может быть разделён на несколько более мелких файлов в процессе установки exim4. В таком случае, указанные строки необходимо добавить в файл /etc/exim4/conf.d/transport/30_exim4-config_remote_smtp

    Ещё один вариант — ручное создание конфигурационного файла /etc/exim4/exim4.conf. В таком случае, добавлять строки следует в этот файл.

    Операцию следует повторить для каждого домена, а затем перезапустить exim командой:

    Проверка записей в конфигурационным файле Exim

    Чтобы проверить записи в конфигурационном файле Exim, следует выполнить следующую команду:

    Ответ должен иметь следующий вид:

    где dkim_selector это первое слово перед ._domainkey в открытом ключе

    Итого, SPF запись и PTR запись настроены, сервер готов для работы с DKIM. Результат — больше писем во “Входящих”, а не в “Спаме”.

    Источник

    Adblock
    detector