Разное

Zimbra dkim: Настройка DKIM, SPF и DMARC в Zimbra Collaboration Suite / Блог компании Zextras Technology / Хабр

Содержание

Настройка DKIM, SPF и DMARC в Zimbra Collaboration Suite / Блог компании Zextras Technology / Хабр

Если при попытке отправить сообщение на почтовые сервера Gmail вы вдруг получили ошибку типа «Our system has detected that this message is 550-5.7.1 likely unsolicited mail. To reduce the amount of spam sent to Gmail, 550-5.7.1 this message has been blocked.», то это почти всегда значит, что на вашем почтовом сервере не настроены DKIM, SFP и DMARC. Крупные почтовые серверы (Gmail, mail.ru, Яндекс) требуют наличие данных записей. Сегодня мы расскажем, как это сделать в Zimbra Collaboration Suite.

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

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

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

DKIM стал доступен с версии Zimbra 8.0. Настройка подписи состоит из двух этапов:

Первый этап: генерация ключей и селектора

Добавляем данные DKIM к домену, у которого еще нет существующей конфигурации DKIM:

# su zimbra

$ /opt/zimbra/libexec/zmdkimkeyutil -a -d example.com

Получаем:

DKIM Data added to LDAP for domain example.com with selector ECAC22D2-DCA2-11E6-BA30-B554729FE32A

Public signature to enter into DNS:

ECAC22D2-DCA2-11E6-BA30-B554729FE32B._domainkey IN TXT ( "v=DKIM1; k=rsa; "

"p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAs5OCY0sX04ziF+sOHt/1kq3A7iAzAjBjb4JteaoFzu1q2uBOiQS0uyaFeY6CgSgRRbvPnq8cWLG/XMU0tM9gSGtgtWDmHOs6/+QgKp6zRmetfsyABA2Y2U+XJlVURUE5ai3KIA/njt7IGZ5yeFsdZIKmhOCAOPGCovq10xkZXHdjRwiqxbCYGXv2m3o74BcWtOLPfEvexD5PYx"

"aTWFbelJpGlDN7WdBCE+ObpLGkJ9co/1sVOcd3c9SHfPq3jcBAFm7oPX2ak7Fb7cslVK77lA2hBgMYqI2Sh+T64o6R33dU++Ej7CuImmv7PAqVUn5MjYr05t3LK9dwWM8Cm6aJ/QIDAQAA" ) ; ----- DKIM key ECAC22D2-DCA2-11E6-BA30-B554729FE32A for example.com

Также можно обновить DKIM данные для домена:

$ /opt/zimbra/libexec/zmdkimkeyutil -u -d example.com

Удалить DKIM данных для домена:

$ /opt/zimbra/libexec/zmdkimkeyutil -r -d example.com

Извлечь сохраненные данных DKIM для домена:

$ /opt/zimbra/libexec/zmdkimkeyutil -q -d example.com

Второй этап: обновление DNS-записей

Публичный ключ нужно добавить как TXT-запись в домен:

$ORIGIN example.com.

ECAC22D2-DCA2-11E6-BA30-B554729FE32B._domainkey IN TXT ( "v=DKIM1; k=rsa; "

"p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAs5OCY0sX04ziF+sOHt/1kq3A7iAzAjBjb4JteaoFzu1q2uBOiQS0uyaFeY6CgSgRRbvPnq8cWLG/XMU0tM9gSGtgtWDmHOs6/+QgKp6zRmetfsyABA2Y2U+XJlVURUE5ai3KIA/njt7IGZ5yeFsdZIKmhOCAOPGCovq10xkZXHdjRwiqxbCYGXv2m3o74BcWtOLPfEvexD5PYx"

"aTWFbelJpGlDN7WdBCE+ObpLGkJ9co/1sVOcd3c9SHfPq3jcBAFm7oPX2ak7Fb7cslVK77lA2hBgMYqI2Sh+T64o6R33dU++Ej7CuImmv7PAqVUn5MjYr05t3LK9dwWM8Cm6aJ/QIDAQAA" ) ; ----- DKIM key ECAC22D2-DCA2-11E6-BA30-B554729FE32A for example.com

Обновите DNS, и проверьте результат выполнения команды:

# host -t txt SELECTOR._domainkey.DOMAIN

Например:

# host -t txt ECAC22D2-DCA2-11E6-BA30-B554729FE32B._domainkey.example.com ns1.example.com

Если ключ извлекается используйте /opt/zimbra/common/sbin/opendkim-testkey, чтобы убедиться, что открытый ключ соответствует закрытому.

$ opendkim-testkey -d example.com -s ECAC22D2-DCA2-11E6-BA30-B554729FE32B -x /opt/zimbra/conf/opendkim.conf

Если получили ошибку:

opendkim-testkey: /opt/zimbra/conf/opendkim.conf: configuration error at line 0

Это означает, что файла /opt/zimbra/conf/opendkim.conf не существует, создать его можно командой:

$ zmprov ms `zmhostname` +zimbraServiceEnabled opendkim ./libexec/configrewrite opendkim

Если возникнет необходимость отозвать ключ подписи DKIM, установите пустой «р=» тег в записи TXT.

По умолчанию создается 1024-битный ключ (зависит от версии ZCS), изменить размер можно параметром -b.

Sender Policy Framework (SPF)

SPF (Sender Policy Framework) — расширение для протокола отправки электронной почты через SMTP. SPF определен в RFC 7208. SPF-запись защищает от подделки вашего домена и позволяет предотвратить попадание в спам писем, отправленных с ваших адресов. SPF настраивается для адреса, используемого в envelope-from (SMTP конверте).

С помощью spf-записи владелец домена может указать список серверов, имеющих право отправлять email-сообщения для домена. В общем случае порядок следующий:

[версия] [механизмы] [-all | ~all | redirect]

Версия всегда spf1, модификаторы сообщают, кто может посылать почту:

  • a, mx — сервера из DNS записей A или MX соответственно,
  • ip4, ip6 — адрес сервера (можно указывать подсети, например: ip4:1.2.3.4/24),
  • include — взять данные с другого адреса

Параметры:

  • -all означает не принимать почту, если проверка механизма не прошла,
  • ~all если проверка не прошла, то действовать на усмотрение сервера получателя.
  • redirect означает забрать правила с другого сервера.

Рассмотрим примеры:

Пример 1

example.com. IN TXT «v=spf1 ip4:62.220.58.72 a mx -all»

Для домена example.com принимать письма, отправленные с ip-адреса 62.220.58.72, так же принимать с серверов указанных в A и MX записях, сообщения с других серверов должны быть отклонены.

Пример 2

example.com. IN TXT «v=spf1 redirect:example.org»

Получить правила с домена example.com.

Пример 3

example.com. IN TXT «v=spf1 include:_spf.google.com -all»

Получать письма только с smtp-серверов компании Google.

Настройка DMARC

Domain-based Message Authentication, Reporting and Conformance (идентификация сообщений, создание отчётов и определение соответствия по доменному имени) или DMARC — это техническая спецификация, созданная группой организаций для борьбы со спамерами, подделывающими адреса отправителей. Она основана на идентификации почтовых доменов отправителя на основании правил и признаков, заданных на почтовом сервере получателя.

Таким образом почтовый сервер сам решает, хорошее сообщение или плохое и действует согласно DMARC записи. Благодаря настройке DMARC владельцы доменов могут создавать правила обработки писем, которые поступили с доменов, не прошедших авторизацию.

После создания записей SPF и DKIM необходимо настроить проверку DMARC, добавив в DNS запись типа TXT (аналогично SPF). Параметры могут быть следующими:

Более подробно можно узнать в реестре тегов DMARC.

Правило для домена (что делать серверу-получателю, если проверка на spf и dkim не прошла) может быть одним из трех:

  • none — просто регистрировать сообщения для отчета, с самими сообщения ничего не делать;
  • quarantine – помечать такие сообщения как спам;
  • reject – отклонить получение сообщения на уровне SMTP.

Если вы хотите получать отчеты не забудьте указать адрес электронной почты в теге rua:

_dmarc.example.com IN TXT "v=DMARC1; p=none; rua=mailto:[email protected]"

Результат добавления DNS-записей

Ниже показан пример dns записий, для зоны example.com:

$ORIGIN .

$TTL 3600

example.com IN SOA example.com. hostmaster.example.com. (

2017011011 ; serial

3600 ; refresh [1h]

600; retry [10m]

1209600 ; expire [14d]

3600 ; min TTL [1h]

)

NS ns1.example.com.

MX 10 ns1.example.com.

A 62.220.58.71

IN TXT "v=spf1 a mx ip4:62.220.58.71 ~all"

$ORIGIN example.com.

ECAC22D2-DCA2-11E6-BA30-B554729FE32B._domainkey IN TXT ( «v=DKIM1; k=rsa; «

«p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAs5OCY0sX04ziF+sOHt/1kq3A7iAzAjBjb4JteaoFzu1q2uBOiQS0uyaFeY6CgSgRRbvPnq8cWLG/XMU0tM9gSGtgtWDmHOs6/+QgKp6zRmetfsyABA2Y2U+XJlVURUE5ai3KIA/njt7IGZ5yeFsdZIKmhOCAOPGCovq10xkZXHdjRwiqxbCYGXv2m3o74BcWtOLPfEvexD5PYx»

«aTWFbelJpGlDN7WdBCE+ObpLGkJ9co/1sVOcd3c9SHfPq3jcBAFm7oPX2ak7Fb7cslVK77lA2hBgMYqI2Sh+T64o6R33dU++Ej7CuImmv7PAqVUn5MjYr05t3LK9dwWM8Cm6aJ/QIDAQAB» ) ; —— DKIM key ECAC22D2-DCA2-11E6-BA30-B554729FE32B for example.com

_dmarc IN TXT «v=DMARC1; p=none; rua=mailto:[email protected]»

ns1 IN A 62.220.58.71

www 86400 IN CNAME example.com.

По всем вопросам, связанными c Zextras Suite вы можете обратиться к Представителю компании «Zextras Technology» Екатерине Триандафилиди по электронной почте [email protected]

Настройка DKIM, SPF и DMARC в Zimbra – ЗАПИСКИ КРАСНОДАРСКОГО СИСАДМИНА

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

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

Сначала – генерация ключей и селектора. Добавляем данные DKIM к домену, у которого еще нет существующей конфигурации DKIM

/opt/zimbra/libexec/zmdkimkeyutil -a -d mailserver.com -s mail

Получаем

DKIM Data added to LDAP for domain mailserver.com with selector mail

Public signature to enter into DNS:

mail._domainkey IN TXT ( "v=DKIM1; k=rsa; "

  "p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2FOAZIEtDpzzPnlwWgDqYh3C1UUTrI+QALLHAQfqtmo/r/T6spzyjAbMHPXyiksBOX8kyGKN5/C9eMM/gQsAPOHPELJTUT6yzm4yiHvWdP7TXyMxrgeh3yDNHsl5as2qwh5UrnRD86okuZZLPrMvukeq98Csi8eX6tJ6srpzoSNgMrxI7idYjYBwaw8SixsDixEqCprXfeLUd5"

  "bQu6CN/M4DvCfQQ1iATAQlGTzKWII0XY5oXNjIizd4IBHku3emy1WR6/nh5SsnFgOG3ocgKi0ulCgwCVzjhPVsyN4S6z1BdN50EyQOj8r3xALyZqIf8g3xq72kjTyvtJxmZDg7fQIDAQAB" )  ; ----- DKIM key mail for mailserver.com

Также можно обновить DKIM данные для домена

/opt/zimbra/libexec/zmdkimkeyutil -u -d mailserver.com

Удалить DKIM данных для домена

/opt/zimbra/libexec/zmdkimkeyutil -r -d mailserver.com

Извлечь сохраненные данных DKIM для домена

/opt/zimbra/libexec/zmdkimkeyutil -q -d mailserver.com

Теперь – обновление DNS-записей домена.

Если возникнет необходимость отозвать ключ подписи DKIM, нужно установить пустой «р=» тег в записи TXT.

Проверить созданные записи можно с помощью онлайн-сервиса http://dkimcore.org/tools/

Sender Policy Framework (SPF)

SPF (Sender Policy Framework) — расширение для протокола отправки электронной почты через SMTP. SPF определен в RFC 7208. SPF-запись защищает от подделки вашего домена и позволяет предотвратить попадание в спам писем, отправленных с ваших адресов. SPF настраивается для адреса, используемого в envelope-from (SMTP конверте).

С помощью spf-записи владелец домена может указать список серверов, имеющих право отправлять email-сообщения для домена. В общем случае порядок следующий:

[версия] [механизмы] [-all | ~all | redirect]
Версия всегда spf1, модификаторы сообщают, кто может посылать почту:

a, mx — сервера из DNS записей A или MX соответственно,
ip4, ip6 — адрес сервера (можно указывать подсети, например: ip4:1.2.3.4/24),
include — взять данные с другого адреса

Параметры:

-all означает не принимать почту, если проверка механизма не прошла,
~all если проверка не прошла, то действовать на усмотрение сервера получателя.
redirect означает забрать правила с другого сервера

Принимать письма, отправленные с серверов указанных в A и MX записях, сообщения с других серверов должны быть отклонены.
Настройка DMARC

Domain-based Message Authentication, Reporting and Conformance (идентификация сообщений, создание отчётов и определение соответствия по доменному имени) или DMARC — это техническая спецификация, созданная группой организаций для борьбы со спамерами, подделывающими адреса отправителей. Она основана на идентификации почтовых доменов отправителя на основании правил и признаков, заданных на почтовом сервере получателя. Таким образом почтовый сервер сам решает, хорошее сообщение или плохое и действует согласно DMARC записи. Благодаря настройке DMARC владельцы доменов могут создавать правила обработки писем, которые поступили с доменов, не прошедших авторизацию.

DMARC-запись может быть сгенерирована с помощью online-сервиса http://www.kitterman.com/dmarc/assistant.html

DMARC record for: mailserver.com 
Record should be published at _dmarc.mailserver.com

v=DMARC1; p=quarantine; rua=mailto:[email protected]; ruf=mailto:[email protected]; sp=quarantine

 

Онлайн сервисы для проверки DNS-записей:

https://mxtoolbox.com/SuperTool.aspx
https://dmarcian.com/dmarc-inspector
http://dkimcore.org/tools/keycheck.html




4 600

Настройка DKIM, SPF и DMARC в Zimbra Collaboration Suite

Если при попытке отправить сообщение на почтовые сервера Gmail вы вдруг получили ответ:

550-5.7.1 [62.220.58.71 12] Our system has detected that this message
is 550-5.7.1 likely unsolicited mail. To reduce the amount of spam sent to
Gmail, 550-5.7.1 this message has been blocked. Please visit 550-5.7.1
https://support.google.com/mail/?p=UnsolicitedMessageError 550 5.7.1 for
more information.

Скорее всего, это означает что у вас не настроены DKIM, SFP и DMARC. Все больше крупных почтовых серверов (mail.ru, Яндекс) требуют наличие данных записей.

  • DomainKeys Identified Mail (DKIM) — используется для защиты от спуфинга при помощи добавления цифровой подписи в заголовки исходящих сообщений.
  • Sender Policy Framework (SPF) — это расширение для протокола отправки электронной почты через SMTP, благодаря которому можно проверить, не подделан ли домен отправителя.
  • Domain-based Message Authentication, Reporting and Conformance (DMARC) — это техническая спецификация, предусматривающая механизмы для обмена информацией между отправителем и получателем о качестве фильтрации спама и фишинговых атаках.

Настроим каждую из этих систем.

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

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

DKIM стал доступен начиная с версии Zimbra 8.0. Настройка подписи состоит из двух этапов (по материалам wiki.zimbra.com):

Первый этап: генерация ключей и селектора

Добавление данных DKIM к домену, у которого еще нет существующей конфигурации DKIM

# su zimbra
$ /opt/zimbra/libexec/zmdkimkeyutil -a -d example.com

DKIM Data added to LDAP for domain example.com with selector ECAC22D2-DCA2-11E6-BA30-B554729FE32A
Public signature to enter into DNS:
ECAC22D2-DCA2-11E6-BA30-B554729FE32B._domainkey	IN	TXT	( "v=DKIM1; k=rsa; "
	  "p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAs5OCY0sX04ziF+sOHt/1kq3A7iAzAjBjb4JteaoFzu1q2uBOiQS0uyaFeY6CgSgRRbvPnq8cWLG/XMU0tM9gSGtgtWDmHOs6/+QgKp6zRmetfsyABA2Y2U+XJlVURUE5ai3KIA/njt7IGZ5yeFsdZIKmhOCAOPGCovq10xkZXHdjRwiqxbCYGXv2m3o74BcWtOLPfEvexD5PYx"
	  "aTWFbelJpGlDN7WdBCE+ObpLGkJ9co/1sVOcd3c9SHfPq3jcBAFm7oPX2ak7Fb7cslVK77lA2hBgMYqI2Sh+T64o6R33dU++Ej7CuImmv7PAqVUn5MjYr05t3LK9dwWM8Cm6aJ/QIDAQAA" )  ; ----- DKIM key ECAC22D2-DCA2-11E6-BA30-B554729FE32A for example.com

Обновить DKIM данные для домена:

$ /opt/zimbra/libexec/zmdkimkeyutil -u -d example.com

Удаление DKIM данных для домена:

$ /opt/zimbra/libexec/zmdkimkeyutil -r -d example.com

Извлечение сохраненных данных DKIM для домена:

$ /opt/zimbra/libexec/zmdkimkeyutil -q -d example.com

Второй этап: обновление DNS-записей

Публичный ключ нужно добавить как TXT-запись в домен:

$ORIGIN example.com.
ECAC22D2-DCA2-11E6-BA30-B554729FE32B._domainkey	IN	TXT	( "v=DKIM1; k=rsa; "
	  "p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAs5OCY0sX04ziF+sOHt/1kq3A7iAzAjBjb4JteaoFzu1q2uBOiQS0uyaFeY6CgSgRRbvPnq8cWLG/XMU0tM9gSGtgtWDmHOs6/+QgKp6zRmetfsyABA2Y2U+XJlVURUE5ai3KIA/njt7IGZ5yeFsdZIKmhOCAOPGCovq10xkZXHdjRwiqxbCYGXv2m3o74BcWtOLPfEvexD5PYx"
	  "aTWFbelJpGlDN7WdBCE+ObpLGkJ9co/1sVOcd3c9SHfPq3jcBAFm7oPX2ak7Fb7cslVK77lA2hBgMYqI2Sh+T64o6R33dU++Ej7CuImmv7PAqVUn5MjYr05t3LK9dwWM8Cm6aJ/QIDAQAA" )  ; ----- DKIM key ECAC22D2-DCA2-11E6-BA30-B554729FE32A for example.com

Обновите DNS, и проверьте результат выполнения команды:

# host -t txt SELECTOR._domainkey.DOMAIN

# host -t txt ECAC22D2-DCA2-11E6-BA30-B554729FE32B._domainkey.example.com ns1.example.com

Если ключ извлекается используйте /opt/zimbra/common/sbin/opendkim-testkey чтобы убедиться, что открытый ключ соответствует закрытому.

$ opendkim-testkey -d example.com -s ECAC22D2-DCA2-11E6-BA30-B554729FE32B -x /opt/zimbra/conf/opendkim.conf

Если получили ошибку:

opendkim-testkey: /opt/zimbra/conf/opendkim.conf: configuration error at line 0

Это означает, что файла /opt/zimbra/conf/opendkim.conf не существует, создать его можно командой:

$ zmprov ms `zmhostname` +zimbraServiceEnabled opendkim ./libexec/configrewrite opendkim

Если возникнет необходимость отозвать ключ подписи DKIM, установите пустой «р=» тег в записи TXT.

По умолчанию создается 1024-битный ключ (зависит от версии ZCS), изменить размер можно параметром -b.

Sender Policy Framework (SPF)

С помощью spf-записи владелец домена может указать список серверов, имеющих право отправлять email-сообщения для домена. В общем случае порядок следующий:

[версия] [механизмы] [-all | ~all | redirect]

Версия всегда spf1, модификаторы сообщают, кто может посылать почту:

  • a, mx — сервера из DNS записей A или MX соответственно,
  • ip4, ip6 — адрес сервера (можно указывать подсети, например: ip4:1.2.3.4/24),
  • include — взять данные с другого адреса

Параметр -all означает не принимать почту если проверка механизма не прошла, ~all если проверка не прошла, то действовать на усмотрение сервера получателя. Параметр redirect означает забрать правила с другого сервера.

Рассмотрим примеры.

Пример 1

example.com. IN TXT "v=spf1 ip4:62.220.58.72 a mx -all"

Для домена example.com принимать письма, отправленные с ip-адреса 62.220.58.72, так же принимать с серверов указанных в A и MX записях, сообщения с других серверов должны быть отклонены.

Пример 2

example.com. IN TXT "v=spf1 redirect:example.org"

Получить правила с домена example.com.

Пример 3

example.com. IN TXT "v=spf1 include:_spf.google.com -all"

Получать письма только с smtp-серверов компании Google.

Настройка DMARC

После создания записей SPF и DKIM необходимо настроить проверку DMARC, добавив в DNS запись типа TXT (аналогично SPF). Параметры могут быть следующими:

ТегОбязательноНазначениеПример
vДаВерсия протоколаv=DMARC1
pДаПравила для доменаp=quarantine
pctНетКакой процет сообщений, фильтроватьpct=20
ruaНетКуда присылать отчетыrua=mailto:[email protected]
spНетПравила для субдоменовsp=reject
aspfНетРежим проверки соответствия для записей SPFaspf=r

Более подробно можно узнать в реестре тегов DMARC.

Правило для домена (что делать серверу-получателю, если проверка на spf и dkim не прошла) может быть одним из трех:

  • none — просто регистрировать сообщения для отчета, с самими сообщения ничего не делать;
  • quarantine – помечать такие сообщения как спам;
  • reject – отклонить получение сообщения на уровне SMTP.

Если вы хотите получать отчеты не забудьте указать адрес электронной почты в теге rua:

_dmarc.example.com IN TXT "v=DMARC1; p=none; rua=mailto:[email protected]"

Результат добавления DNS-записей

Ниже показан пример dns записий, для зоны example.com:

$ORIGIN .	
$TTL 3600
example.com		IN	SOA	example.com.	hostmaster.example.com. (
					2017011011 ; serial
					3600 ; refresh [1h]
					600; retry [10m]
					1209600 ; expire [14d]
					3600 ; min TTL [1h]
					)
                NS	ns1.example.com.
		MX	10	ns1.example.com.	
		A	62.220.58.71	
		IN 	TXT 	"v=spf1 a mx ip4:62.220.58.71 ~all"
		
$ORIGIN example.com.
ECAC22D2-DCA2-11E6-BA30-B554729FE32B._domainkey	IN	TXT	( "v=DKIM1; k=rsa; "
	  "p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAs5OCY0sX04ziF+sOHt/1kq3A7iAzAjBjb4JteaoFzu1q2uBOiQS0uyaFeY6CgSgRRbvPnq8cWLG/XMU0tM9gSGtgtWDmHOs6/+QgKp6zRmetfsyABA2Y2U+XJlVURUE5ai3KIA/njt7IGZ5yeFsdZIKmhOCAOPGCovq10xkZXHdjRwiqxbCYGXv2m3o74BcWtOLPfEvexD5PYx"
	  "aTWFbelJpGlDN7WdBCE+ObpLGkJ9co/1sVOcd3c9SHfPq3jcBAFm7oPX2ak7Fb7cslVK77lA2hBgMYqI2Sh+T64o6R33dU++Ej7CuImmv7PAqVUn5MjYr05t3LK9dwWM8Cm6aJ/QIDAQAB" )  ; ----- DKIM key ECAC22D2-DCA2-11E6-BA30-B554729FE32B for example.com
_dmarc		IN	TXT	"v=DMARC1; p=none; rua=mailto:[email protected]"
ns1             IN	A	62.220.58.71	
www      86400	IN	CNAME	example.com.

Настройка DKIM, SPF и DMARC в Zimbra Collaboration Suite

Если при попытке отправить сообщение на почтовые сервера Gmail вы вдруг получили ошибку типа «Our system has detected that this message is 550-5.7.1 likely unsolicited mail. To reduce the amount of spam sent to Gmail, 550-5.7.1 this message has been blocked.», то это почти всегда значит, что на вашем почтовом сервере не настроены DKIM, SFP и DMARC. Крупные почтовые серверы (Gmail, mail.ru, Яндекс) требуют наличие данных записей. Сегодня мы расскажем, как это сделать в Zimbra Collaboration Suite.

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

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

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

DKIM стал доступен с версии Zimbra 8.0. Настройка подписи состоит из двух этапов:

Первый этап: генерация ключей и селектора

Добавляем данные DKIM к домену, у которого еще нет существующей конфигурации DKIM:

# su zimbra
$ /opt/zimbra/libexec/zmdkimkeyutil -a -d example.com

Получаем:

DKIM Data added to LDAP for domain example.com with selector ECAC22D2-DCA2-11E6-BA30-B554729FE32A
Public signature to enter into DNS:
ECAC22D2-DCA2-11E6-BA30-B554729FE32B._domainkey IN TXT ( "v=DKIM1; k=rsa; "
"p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAs5OCY0sX04ziF+sOHt/1kq3A7iAzAjBjb4JteaoFzu1q2uBOiQS0uyaFeY6CgSgRRbvPnq8cWLG/XMU0tM9gSGtgtWDmHOs6/+QgKp6zRmetfsyABA2Y2U+XJlVURUE5ai3KIA/njt7IGZ5yeFsdZIKmhOCAOPGCovq10xkZXHdjRwiqxbCYGXv2m3o74BcWtOLPfEvexD5PYx"
"aTWFbelJpGlDN7WdBCE+ObpLGkJ9co/1sVOcd3c9SHfPq3jcBAFm7oPX2ak7Fb7cslVK77lA2hBgMYqI2Sh+T64o6R33dU++Ej7CuImmv7PAqVUn5MjYr05t3LK9dwWM8Cm6aJ/QIDAQAA" ) ; ----- DKIM key ECAC22D2-DCA2-11E6-BA30-B554729FE32A for example.com

Также можно обновить DKIM данные для домена:

$ /opt/zimbra/libexec/zmdkimkeyutil -u -d example.com

Удалить DKIM данных для домена:

$ /opt/zimbra/libexec/zmdkimkeyutil -r -d example.com

Извлечь сохраненные данных DKIM для домена:

$ /opt/zimbra/libexec/zmdkimkeyutil -q -d example.com

Второй этап: обновление DNS-записей

Публичный ключ нужно добавить как TXT-запись в домен:

$ORIGIN example.com.
ECAC22D2-DCA2-11E6-BA30-B554729FE32B._domainkey IN TXT ( "v=DKIM1; k=rsa; "
"p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAs5OCY0sX04ziF+sOHt/1kq3A7iAzAjBjb4JteaoFzu1q2uBOiQS0uyaFeY6CgSgRRbvPnq8cWLG/XMU0tM9gSGtgtWDmHOs6/+QgKp6zRmetfsyABA2Y2U+XJlVURUE5ai3KIA/njt7IGZ5yeFsdZIKmhOCAOPGCovq10xkZXHdjRwiqxbCYGXv2m3o74BcWtOLPfEvexD5PYx"
"aTWFbelJpGlDN7WdBCE+ObpLGkJ9co/1sVOcd3c9SHfPq3jcBAFm7oPX2ak7Fb7cslVK77lA2hBgMYqI2Sh+T64o6R33dU++Ej7CuImmv7PAqVUn5MjYr05t3LK9dwWM8Cm6aJ/QIDAQAA" ) ; ----- DKIM key ECAC22D2-DCA2-11E6-BA30-B554729FE32A for example.com

Обновите DNS, и проверьте результат выполнения команды:

# host -t txt SELECTOR._domainkey.DOMAIN

Например:

# host -t txt ECAC22D2-DCA2-11E6-BA30-B554729FE32B._domainkey.example.com ns1.example.com

Если ключ извлекается используйте /opt/zimbra/common/sbin/opendkim-testkey, чтобы убедиться, что открытый ключ соответствует закрытому.

$ opendkim-testkey -d example.com -s ECAC22D2-DCA2-11E6-BA30-B554729FE32B -x /opt/zimbra/conf/opendkim.conf

Если получили ошибку:

opendkim-testkey: /opt/zimbra/conf/opendkim.conf: configuration error at line 0

Это означает, что файла /opt/zimbra/conf/opendkim.conf не существует, создать его можно командой:

$ zmprov ms `zmhostname` +zimbraServiceEnabled opendkim ./libexec/configrewrite opendkim

Если возникнет необходимость отозвать ключ подписи DKIM, установите пустой «р=» тег в записи TXT.

По умолчанию создается 1024-битный ключ (зависит от версии ZCS), изменить размер можно параметром -b.

Sender Policy Framework (SPF)

SPF (Sender Policy Framework) — расширение для протокола отправки электронной почты через SMTP. SPF определен в RFC 7208. SPF-запись защищает от подделки вашего домена и позволяет предотвратить попадание в спам писем, отправленных с ваших адресов. SPF настраивается для адреса, используемого в envelope-from (SMTP конверте).

С помощью spf-записи владелец домена может указать список серверов, имеющих право отправлять email-сообщения для домена. В общем случае порядок следующий:

[версия] [механизмы] [-all | ~all | redirect]
Версия всегда spf1, модификаторы сообщают, кто может посылать почту:

  • a, mx — сервера из DNS записей A или MX соответственно,
  • ip4, ip6 — адрес сервера (можно указывать подсети, например: ip4:1.2.3.4/24),
  • include — взять данные с другого адреса

Параметры:

  • -all означает не принимать почту, если проверка механизма не прошла,
  • ~all если проверка не прошла, то действовать на усмотрение сервера получателя.
  • redirect означает забрать правила с другого сервера.

Рассмотрим примеры:

Пример 1
example.com. IN TXT «v=spf1 ip4:62.220.58.72 a mx -all»
Для домена example.com принимать письма, отправленные с ip-адреса 62.220.58.72, так же принимать с серверов указанных в A и MX записях, сообщения с других серверов должны быть отклонены.

Пример 2
example.com. IN TXT «v=spf1 redirect:example.org»
Получить правила с домена example.com.

Пример 3
example.com. IN TXT «v=spf1 include:_spf.google.com -all»
Получать письма только с smtp-серверов компании Google.

Настройка DMARC

Domain-based Message Authentication, Reporting and Conformance (идентификация сообщений, создание отчётов и определение соответствия по доменному имени) или DMARC — это техническая спецификация, созданная группой организаций для борьбы со спамерами, подделывающими адреса отправителей. Она основана на идентификации почтовых доменов отправителя на основании правил и признаков, заданных на почтовом сервере получателя.

Таким образом почтовый сервер сам решает, хорошее сообщение или плохое и действует согласно DMARC записи. Благодаря настройке DMARC владельцы доменов могут создавать правила обработки писем, которые поступили с доменов, не прошедших авторизацию.

После создания записей SPF и DKIM необходимо настроить проверку DMARC, добавив в DNS запись типа TXT (аналогично SPF). Параметры могут быть следующими:

Более подробно можно узнать в реестре тегов DMARC.

Правило для домена (что делать серверу-получателю, если проверка на spf и dkim не прошла) может быть одним из трех:

  • none — просто регистрировать сообщения для отчета, с самими сообщения ничего не делать;
  • quarantine – помечать такие сообщения как спам;
  • reject – отклонить получение сообщения на уровне SMTP.

Если вы хотите получать отчеты не забудьте указать адрес электронной почты в теге rua:

_dmarc.example.com IN TXT "v=DMARC1; p=none; rua=mailto:[email protected]"

Результат добавления DNS-записей

Ниже показан пример dns записий, для зоны example.com:

$ORIGIN .
$TTL 3600
example.com IN SOA example.com. hostmaster.example.com. (
2017011011 ; serial
3600 ; refresh [1h]
600; retry [10m]
1209600 ; expire [14d]
3600 ; min TTL [1h]
)
NS ns1.example.com.
MX 10 ns1.example.com.
A 62.220.58.71
IN TXT "v=spf1 a mx ip4:62.220.58.71 ~all"

$ORIGIN example.com.
ECAC22D2-DCA2-11E6-BA30-B554729FE32B._domainkey IN TXT ( «v=DKIM1; k=rsa; «
«p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAs5OCY0sX04ziF+sOHt/1kq3A7iAzAjBjb4JteaoFzu1q2uBOiQS0uyaFeY6CgSgRRbvPnq8cWLG/XMU0tM9gSGtgtWDmHOs6/+QgKp6zRmetfsyABA2Y2U+XJlVURUE5ai3KIA/njt7IGZ5yeFsdZIKmhOCAOPGCovq10xkZXHdjRwiqxbCYGXv2m3o74BcWtOLPfEvexD5PYx»
«aTWFbelJpGlDN7WdBCE+ObpLGkJ9co/1sVOcd3c9SHfPq3jcBAFm7oPX2ak7Fb7cslVK77lA2hBgMYqI2Sh+T64o6R33dU++Ej7CuImmv7PAqVUn5MjYr05t3LK9dwWM8Cm6aJ/QIDAQAB» ) ; —— DKIM key ECAC22D2-DCA2-11E6-BA30-B554729FE32B for example.com
_dmarc IN TXT «v=DMARC1; p=none; rua=mailto:[email protected]»
ns1 IN A 62.220.58.71
www 86400 IN CNAME example.com.

Автор: levashove

Источник

DKIM+SPF Zimbra — ilganas.ru

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

Структура работы DKIM

Второй метод

Sender Policy Framework, SPF (инфраструктура политики отправителя[1]) — расширение для протокола отправки электронной почты через SMTP. SPF определен в RFC 7208.

Благодаря SPF можно проверить, не подделан ли домен отправителя.

SPF позволяет владельцу домена указать в TXT-записи[2], соответствующей имени домена, список серверов, имеющих право отправлять email-сообщения с обратными адресами в этом домене.

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

Пример SPF-данных в TXT-записи DNS:
example.org. IN TXT "v=spf1 +a +mx -all"
Символ "+" является квалификатором по умолчанию и может быть опущен. Следующий пример аналогичен предыдущему:
example.org. IN TXT "v=spf1 a mx -all"

v= определяет используемую версию SPF. Далее следует перечисление механизмов верификации: в данном случае «a» разрешает прием писем от узла, IP-адрес которого совпадает с IP-адресом в A-записи для example.org; «mx» разрешает приём писем, если отправляющий узел указан в одной из MX-записей для example.org. Строка завершается «-all» — указанием того, что сообщения, не прошедшие верификацию с использованием перечисленных механизмов, следует отвергать. Также может использоваться «~all» — в этом случае письмо, не прошедшее верификацию, не должно быть отклонено, но может быть изучено более тщательно (SoftFail).

Следует заметить, что RFC 7208 определяет различные результаты проверки, в том числе «Permerror» в случае некорректной SPF-записи. Одним из случаев некорректной записи является наличие более чем одной записи «v=spf1» (3.2. Multiple DNS Records). Следует быть внимательным при формировании записи и сверяться с документом RFC 7208. В Сети можно найти онлайн-сервисы для проверки SPF-записи.

Как итог:
Мы можем использовать эти две технологии для улучшения «авторитетности, подлинности» нашего почтового сервера

  1. Настроим SPF в DNS
  2. Настроим DKIM в почтовом сервере + DKIM пропишем в DNS

Добавляем TXT запись, указываем что можно доверять нашему почтовому серверу, расположенному по адресу
200.100.10.1, он может отправлять почту и он ответственный за отправку для данного домена.

example.org. IN TXT "v=spf1 a mx ip4:200.100.10.1 -all"

Теперь с помощью ключей защитим почтовый сервер, он будет подписывать заголовки при отправки сообщений.
И в дальнейшем, возможно применять политики DMARC для борьбы с фишингом.

Добавляем DKIM к домену

# su zimbra
$ /opt/zimbra/libexec/zmdkimkeyutil -a -d example.com

Вы увидите что-то похожее:

DKIM Data added to LDAP for domain example.com with selector ECAC22D2-DCA2-11E6-BA30-B554729FE32A
Public signature to enter into DNS:
ECAC22D2-DCA2-11E6-BA30-B554729FE32B._domainkey IN TXT ( "v=DKIM1; k=rsa; "
"p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAs5OCY0sX04ziF+sOHt/1kq3A7iAzAjBjb4JteaoFzu1q2uBOiQS0uyaFeY6CgSgRRbvPnq8cWLG/XMU0tM9gSGtgtWDmHOs6/+QgKp6zRmetfsyABA2Y2U+XJlVURUE5ai3KIA/njt7IGZ5yeFsdZIKmhOCAOPGCovq10xkZXHdjRwiqxbCYGXv2m3o74BcWtOLPfEvexD5PYx"
"aTWFbelJpGlDN7WdBCE+ObpLGkJ9co/1sVOcd3c9SHfPq3jcBAFm7oPX2ak7Fb7cslVK77lA2hBgMYqI2Sh+T64o6R33dU++Ej7CuImmv7PAqVUn5MjYr05t3LK9dwWM8Cm6aJ/QIDAQAA" ) ; ----- DKIM key ECAC22D2-DCA2-11E6-BA30-B554729FE32A for example.com

Кроме это вы можете выполнить обновление или удаление данных DKIM

Также можно обновить DKIM данные для домена:
$ /opt/zimbra/libexec/zmdkimkeyutil -u -d example.com
Удалить DKIM данных для домена:
$ /opt/zimbra/libexec/zmdkimkeyutil -r -d example.com

Второй этап: обновление DNS-записей
Публичный ключ нужно добавить как TXT-запись в домен:

$ORIGIN example.com.
ECAC22D2-DCA2-11E6-BA30-B554729FE32B._domainkey IN TXT ( "v=DKIM1; k=rsa; "
"p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAs5OCY0sX04ziF+sOHt/1kq3A7iAzAjBjb4JteaoFzu1q2uBOiQS0uyaFeY6CgSgRRbvPnq8cWLG/XMU0tM9gSGtgtWDmHOs6/+QgKp6zRmetfsyABA2Y2U+XJlVURUE5ai3KIA/njt7IGZ5yeFsdZIKmhOCAOPGCovq10xkZXHdjRwiqxbCYGXv2m3o74BcWtOLPfEvexD5PYx"
"aTWFbelJpGlDN7WdBCE+ObpLGkJ9co/1sVOcd3c9SHfPq3jcBAFm7oPX2ak7Fb7cslVK77lA2hBgMYqI2Sh+T64o6R33dU++Ej7CuImmv7PAqVUn5MjYr05t3LK9dwWM8Cm6aJ/QIDAQAA" ) ; ----- DKIM key ECAC22D2-DCA2-11E6-BA30-B554729FE32A for example.com

На этом все, мы сгенерировали DKIM, добавили в DNS!

Для проверки DKIM можно использовать Online сервисы, но Вам необходимо использовать «селектор»
в нашем случае это ECAC22D2-DCA2-11E6-BA30-B554729FE32B, то есть часть до ._domainkey.

 

Zimbra и защита от мейл-бомбинга

Мейл-бомбинг является одной из наиболее старых разновидностей кибер-атак. По своей сути она напоминает обычную DoS-атаку, только вместо волны запросов с разных ip-адресов, на сервер отправляется вал электронных писем, которые в огромных количествах приходят на один из почтовых адресов, за счет чего нагрузка на него значительно возрастает. Такая атака может привести к невозможности использовать почтовый ящик, а иногда даже способна привести к отказу всего сервера. Многолетняя история такого вида кибератак привела к ряду позитивных и негативных для системных администраторов последствий. К позитивным факторам можно отнести хорошую изученность мейл-бомбинга и наличие простых способов защититься от такой атаки. К негативным же факторам можно отнести большое количество общедоступных программных решений для проведения таких видов атак и возможность для злоумышленника надежно защититься от обнаружения.

Немаловажной особенностью данной кибератаки является то, что ее практически невозможно использовать для извлечения прибыли. Ну направил злоумышленник на один из почтовых ящиков вал электронных писем, ну не дал человеку нормально использовать электронную почту, ну взломал злоумышленник чью-нибудь корпоративную почту и начал массово рассылать по всему GAL тысячи писем, из-за чего сервер либо крашнулся, либо начал тормозить так, что пользоваться им стало невозможно, и что дальше? Конвертировать подобное киберпреступление в живые деньги почти невозможно, поэтому просто мейл-бомбинг в настоящее время является довольно редким явлением и системные администраторы при проектировании инфраструктуры могут просто не вспомнить о необходимости защиты от подобной кибератаки.

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

Именно поэтому системному администратору не стоит забывать о вероятности проведения мейл-бомбинга и всегда предпринимать необходимые меры для защиты от этой угрозы. Если учесть то, что это можно сделать еще на этапе построения почтовой инфраструктуры, а также то, что это отнимает у системного администратора совсем немного времени и труда, объективных причин для того, чтобы не обеспечить свою инфраструктуру защитой от мейл-бомбинга, попросту не остается. Давайте же посмотрим на то, как реализована защита от данной кибератаки в Zimbra Collaboration Suite Open-Source Edition.

В основе Zimbra лежит Postfix — один из самых надежных и функциональных Mail Transfer Agent с открытым исходным кодом на данный момент. И одним из главных преимуществ его открытости является то, что он поддерживает самые разнообразные сторонние решения для расширения функциональности. В частности, Postfix полноценно поддерживает cbpolicyd — продвинутую утилиту для обеспечения кибербезопасности почтового сервера. Помимо защиты от спама и создания белых, черных и серых списков, cbpolicyd позволяет администратору Zimbra настроить проверку SPF-подписи, а также установить ограничения на прием и отправку электронных писем или данных. Они могут как обеспечить надежную защиту от спама и фишинговых писем, так и защитить сервер от мейл-бомбинга.

Первое, что потребуется от системного администратора — это активация модуля cbpolicyd, который предустановлен в Zimbra Collaboration Suite OSE на MTA-сервере инфраструктуры. Делается это при помощи команды zmprov ms `zmhostname` +zimbraServiceEnabled cbpolicyd. После этого необходимо будет активировать веб-интерфейс, чтобы иметь возможность комфортно управлять cbpolicyd. Для этого необходимо разрешить соединения на веб-порте номер 7780, создать символьную ссылку при помощи команды ln -s /opt/zimbra/common/share/webui /opt/zimbra/data/httpd/htdocs/webui, а затем отредактировать файл с настройками при помощи команды nano /opt/zimbra/data/httpd/htdocs/webui/includes/config.php, где необходимо прописать следующие строки:

$DB_DSN=«sqlite:/opt/zimbra/data/cbpolicyd/db/cbpolicyd.sqlitedb»;
$DB_USER=«root»;
$DB_TABLE_PREFIX=»»;

После этого останется лишь перезапустить сервисы Zimbra и Zimbra Apache с помощью команд zmcontrol restart и zmapachectl restart. После этого вам откроется доступ к веб-интерфейсу по адресу example.com:7780/webui/index.php. Главным нюансом является то, что вход в этот веб-интерфейс пока никак не защищен и для того, чтобы исключить попадание в него посторонних лиц, можно после каждого входа в веб-интерфейс просто закрывать подключения на порте 7780.

Защититься от потока писем, исходящего из внутренней сети, позволяют квоты на отправку электронных писем, которые можно установить благодаря cbpolicyd. Такие квоты позволяют установить ограничение на максимальное количество писем, которое может быть отправлено с одного почтового ящика в одну единицу времени. Например, если менеджеры вашего предприятия в среднем отправляют по 60-80 электронных писем в час, то можно, с учетом небольшого запаса, установить им квоту в 100 электронных писем в час. Для того, чтобы исчерпать такую квоту, менеджерам придется отправлять по одному письму раз в 36 секунд. С одной стороны этого достаточно для того, чтобы полноценно работать, а с другой стороны, с такой квотой злоумышленники, получившие доступ к почте одного из ваших менеджеров не устроят мейл-бомбинг или массовую спам-атаку на предприятии.

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

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

Помимо ограничений на отправку писем, cbpolicyd позволяет настроить лимит на получение писем. Такое ограничение, на первый взгляд, является отличным решением для защиты от мейл-бомбинга, однако по факту установка такого лимита, пусть даже большого, чревата тем, что в определенных условиях до вас может не дойти важное письмо. Именно поэтому включать какие-либо ограничения для входящей почты крайне не рекомендуется. Однако если вы все же решили рискнуть, подходить к настройке лимита входящих сообщений нужно подходить с особым вниманием. Например, можно ограничить количество входящих писем от доверенных контрагентов, чтобы в случае, если их почтовый сервер был скомпрометирован, с него не проводилась спам-атака на ваше предприятие.

Для того, чтобы защититься от вала входящих сообщений при мейл-бомбинге, системному администратору следует предпринять что-то более умное, нежели простое ограничение входящей почты. Таким решением может стать использование серых списков. Принцип их действия заключается в том, что при первой попытке доставить сообщение от ненадежного отправителя, соединение с сервером резко прерывается, из-за чего доставка письма заканчивается неудачей. Однако, если в определенный период ненадежный сервер вновь предпринимает попытку отправить то же самое письмо, сервер не обрывает соединение и его доставка проходит успешно.

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

Включить серые списки можно также в веб-интерфейсе cbpolicyd. Для того, чтобы все работало, необходимо создать политику, в которую попадали бы все входящие письма, адресованные пользователям на нашем сервере, а затем на основе этой политики создать правило Greylisting, где можно настроить интервал, во время которого cbpolicyd будет ожидать повторного ответа от незнакомого отправителя. Обычно он составляет 4-5 минут. При этом серые списки можно настроить так, чтобы все успешные и неуспешные попытки доставить письма от разных отправителей учитывались и на основании их количества принималось решение об автоматическом добавлении отправителя в белый или черный списки.

Обращаем ваше внимание на то, что к использованию серых списков стоит походить с максимальной ответственностью. Лучше всего будет, если использование этой технологии будет идти рука об руку с постоянным ведением белых и черных списков, чтобы исключить возможность потери действительно важных для предприятия писем.

Кроме того, защититься от мейл-бомбинга может помочь добавление проверок SPF, DMARC и DKIM. Зачастую письма, которые поступают в процессе мейл-бомбинга такие проверки не проходят. О том, как это сделать, рассказывалось в одной из наших предыдущих статей.

Таким образом, защититься от такой угрозы как мейл-бомбинг, довольно просто, и сделать это можно еще на этапе строительства инфраструктуры Zimbra для вашего предприятия. Однако важно постоянно следить за тем, чтобы риски от использования такой защиты никогда не превышали получаемые вами преимущества.

Источник: habr.com

Налаштування DKIM, SPF і DMARC в Zimbra Collaboration Suite — PC-Service. Компютерна допомога на дому, виклик компютерного майстра, ремонт компютерів в Чернівцях

Отже пишу я цю статтю в зв’язку із проблемами які виникли при відправці повідомлень із серва який працює на Zimbra

Пошта почала потрапляти до спаму в гуглі та інших поштових сервісах :(, якось не весело

Коротко про DKIM, SPF, DMARC

* DomainKeys Identified Mail (DKIM) — використовується для захисту від спуфинга за допомогою додавання цифрового підпису в заголовки вихідних повідомлень.
* Sender Policy Framework (SPF) — це розширення для протоколу відправки електронної пошти через SMTP, завдяки якому можна перевірити, чи не підроблений чи домен відправника.
* Domain-based Message Authentication, Reporting and Conformance (DMARC) — це технічна специфікація, що передбачає механізми для обміну інформацією між відправником і отримувачем про якість фільтрації спаму і фішингових атаках.

Налаштування DKIM в Zimbra

Метод передбачає шифрування заголовків вихідних повідомлень за допомогою закритого ключа домену, і додавання відкритої версії ключа в запису DNS домену, доступного всім. MTA сервера-одержувача запитує відкритий ключ у DNS-сервера відправника, для розшифровки заголовків вхідних повідомлень і перевіряє, чи дійсно повідомлення надіслано від заявленого джерела.

DKIM став доступний починаючи з версії Zimbra 8.0. Налаштування підпису складається з двох етапів (за матеріалами wiki.zimbra.com):
Перший етап: генерація ключів та селектора

Додавання даних DKIM до домену, у якого ще немає існуючої конфігурації DKIM

Налаштуємо кожну з цих систем.

# su - zimbra
$ /opt/zimbra/libexec/zmdkimkeyutil -a -d pc-service.com

Отримаємо запис типу:

DKIM Data added to LDAP for domain pc-service.cv.ua with selector 2416545A-9151-11E7-90EF-A92301118211
Public signature to enter into DNS:
2416545A-9151-11E7-90EF-A92301118211._domainkey IN TXT ( "v=DKIM1; k=rsa; "
"p=qGSIb3DQEBAQUAA4GNADCMIGfMA0GCSBiQKBgQDHmLsFfqWxwbw/VB11kGkFo9GYFvHz9n3BNtSRcmJvNMIGfMA0GCSTpVM9l+bBXhb3hR7M+ihyTEi8bGbZ6X+7hntZFwUO57tVHAOgT4y/CjIq5+bEa8yAHgSNikcfk56+X9GjtyRFHn8uUe2gRsxy7gnGO6SlJcPmjZq0ndyiEwIDAQAB" ) ; ----- DKIM key 2416545A-9151-11E7-90EF-A92301118211 for pc-service.cv.ua

Отже після створення даного ключа необхідно його перевірити на сервісі dkimcore.org

Вписуєм все без лапок » » та перевіряємо на валідність

якщо отримуєте зеленим надпис This is a valid DKIM key record — То все налаштовано вірно,

якщо ж ні то This is not a good DKIM key record. You should fix the errors shown in red.

В мене з першого разу не пройшло все гладко, тому були проведені деякі маніпуляції з довжиною ключа, а саме змінені дефолтні налаштування створення ключів з 2048 на 1024

# nano /opt/zimbra/libexec/zmdkimkeyutil
my $bits=1024;
if ($bits < 1024) {
print "Bit size less than 1024 is not allowed, as it is insecure.\n";
print " Only works with -a and -u. Default when not specified is 1024 bits.\n";

Після чого обновлюєм ключі від користувача zimbra

/opt/zimbra/libexec/zmdkimkeyutil -u -b 2048 -d pc-service.cv.ua

Якщо необхідно буде здійснити ще якісь маніпуляції із ключами то перелік команд нведено нище:

Видалення DKIM даних для домену:

/opt/zimbra/libexec/zmdkimkeyutil -r -d pc-service.cv.ua

Показати збережені даних DKIM для домену:

/opt/zimbra/libexec/zmdkimkeyutil -q -d pc-service.cv.ua

Ця команда буде виводити всю збережену інформацію DKIM, зокрема:

 DKIM Domain
 DKIM Selector
 DKIM Private Key
 DKIM Public Signature
 DKIM Identity

Отже обновили ключі та заново пробуємо перевірити їх на на сервісі dkimcore.org Якщо валідність не проходить можете спробувати видалити всі спец символи \ ‘ / »  з вашого ключа

Наступний крок є буде важливим в подальшому, але він потребує деякого часу для того щоб він почав діяти!

ОБНОВЛЕННЯ DNS ЗАПИСІВ

Заходимо в панель керування вашими доменами та вписуємо запис TXT

Селектор:

2416545A-9151-11E7-90EF-A92301118211._domainkey
Та значення
v=DKIM1; k=rsa; p=qGSIb3DQEBAQUAA4GNADCMIGfMA0GCSBiQKBgQDHmLsFfqWxwbw/VB11kGkFo9GYFvHz9n3BNtSRcmJvNMIGfMA0GCSTpVM9l+bBXhb3hR7M+ihyTEi8bGbZ6X+7hntZFwUO57tVHAOgT4y/CjIq5+bEa8yAHgSNikcfk56+X9GjtyRFHn8uUe2gRsxy7gnGO6SlJcPmjZq0ndyiEwIDAQAB

Перевірте результат виконання командою:
dig -t txt 2416545A-9151-11E7-90EF-A92301118211._domainkey._domainkey.pc-service.cv.ua ns.example.com
Якщо ключ витягується використовуйте команду: /opt/zimbra/common/sbin/opendkim-testkey для перегляду відображення відкритого ключа закритому
opendkim-testkey -d pc-service.cv.ua -s 2416545A-9151-11E7-90EF-A92308998211 -x /opt/zimbra/conf/opendkim.conf

Якщо отримаєте помилку

ERROR: account.NO_SUCH_SERVER (no such server: pc-service.com)

або

ERROR: account.INVALID_ATTR_NAME (invalid attr name: invalid attr name — unable to modify attributes: ldap host=pc-service.cv.ua:389: ./libexec/configrewrite: AttributeDescription contains inappropriate characters)

То запустіть команду

zmprov ms `zmhostname` +zimbraServiceEnabled opendkim
./libexec/configrewrite opendkim

Яка обновить сервіс opendkim, та сконфігурує файл

Якщо стає необхідним відкликати ключ підписування DKIM, це може бути легко здійснено в DNS, використовуючи порожній тег «p =» у запису TXT.

Отже саму складну частину ми завершили, тепер до настпної:

Sender Policy Framework (SPF)

Рамкова політика Sender (SPF) — це система перевірки електронної пошти, розроблена для запобігання небажаним електронним листам за допомогою системи зловмисників. Щоб перевірити цю спільну проблему безпеки, SPF збирається перевірити джерело IP-адреси електронної пошти та порівняти його з записом DNS TXT з вмістом SPF.

Як налаштувати його?
Перш за все, генеруйте запис TXT SPF DNS (використовуючи інструмент «Mailradar SPF» або щось подібне), наприклад, з доменом pc-service.cv.ua та 3 різних записів для додавання:

  • The A entry — pc-service.cv.ua
  • The MX entry — mail.pc-service.cv.ua
  • The IPv4 entry — 5.5.5.18

В даній статті я використаю ось такий SPF: v=spf1 ip4:5.5.5.18/32 ~all — де ІР це адреса звідки буде слатись пошта, тобто ваша реальна адреса доменного імені

DMARC

 

DMARC, що означає «автентифікація повідомлень на основі домену, звітність і відповідність на основі домену», є технічною специфікацією, створена групою організацій, які хочуть зменшити потенціал зловживань електронною поштою, вирішивши пару застарілих операційних операцій, розгортання , а також звітні питання, пов’язані з протоколами аутентифікації електронної пошти.

DMARC стандартизує, як електронна пошта отримує автентифікацію електронної пошти за допомогою відомих механізмів SPF та DKIM. Це означає, що відправники будуть мати постійні результати автентифікації для своїх повідомлень в AOL, Gmail, Hotmail, Yahoo! та будь-який інший електронний приймач, що реалізує DMARC. Ми сподіваємося, що це спонукає відправників ширше автентифікувати вихідні повідомлення електронної пошти, які можуть зробити електронну пошту надійнішим способом спілкування.

Як налаштувати його?

Звіт DMARC може бути створений на декількох веб-сайтах, наприклад, http://www.kitterman.com

Використовуючи домен example.com, можливий варіант може бути наступним, будь ласка, майте на увазі, що всі параметри за умовчанням будуть неявними, навіть якщо ви не виберете їх у генераторі:

 

    DMARC record for: example.com
    Record should be published at _dmarc.example.com
    v=DMARC1; p=quarantine; rua=Ця електронна адреса захищена від спам-ботів. Вам необхідно увімкнути JavaScript, щоб побачити її.; ruf=Ця електронна адреса захищена від спам-ботів. Вам необхідно увімкнути JavaScript, щоб побачити її.; sp=quarantine
Обновіть ваші DNS записи

_dmarc IN TXT "v=DMARC1; p=none; rua=mailto:Ця електронна адреса захищена від спам-ботів. Вам необхідно увімкнути JavaScript, щоб побачити її."

Не потрапляйте в спас бази та регулярно проводьте діагностику ваших поштових серверів mxtoolbox.com вам допоможе визначити проблеми в роботі

Офіційні джерела:

wiki.zimbra.com/wiki/Configuring_for_DKIM

wiki.zimbra.com/SPF,_DKIM_and_DMARC

Zimbra DKIM (Почта, идентифицированная с помощью DomainKeys) ~ Почтовый сервер Zimbra, linux, bash script, centos, команда linux

zimbra DKIM (Почта, идентифицированная ключами домена) включает:

  1. Заголовок вставки закрытого ключа почтового сервера отправителя электронной почты.
  2. Открытый ключ преобразован в публичный DNS.

Ссылки ниже, которые вам могут понравиться:
zimbra custom spamassassin rules
Как создать автоматическую скрытую копию для писем получателя для Zimbra 8.6
Как добавить спам-фильтры в zimbra 8.6
Как создать автоматическую скрытую копию для писем отправителя для Zimbra 8.6
список учетных записей, которые не входили в систему в течение последних x дней в zimbra

Шаг 1. Настройка Zimbra DKIM
Чтобы добавить данные DKIM в домен, который не существует DKIM

/ opt / zimbra / libexec / zmdkimkeyutil -a -d huuphan.com

Результат ниже

Данные DKIM добавлены в LDAP для домена huuphan.com с помощью селектора 0E9F133A-9577-11E1-AD0E-2A2FBBACB войти в DNS:
0E9F133A-9577-11E1-AD0E-2A2FBBAC6BCB._domainkey IN TXT «v = DKIM1; = RSA;
р = MIGfMA0GCXXXSSFWwfdfdfEEAA4GNADCBiQKBgQDY5CBg15nZ2vYnRmrNub6Jn6ghQ2DXQbQgOJ / E5IGziUYEuE2OnxkBm1h4jived21uHjpNy0naOZjLj0xLyyjclVy1chrhSbsGAhe8HLXUsdXyfRvNTq8NWLsUnMEsoomtJCJ
/ 4GSWYU1whOQ9oKZVAwWHSovAWZpByqNMZmFg7QIDAQAB»; —— DKIM 0E9F133A-9577-11E1-AD0E-2A2FBBAC6BCB для huuphan.com

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

Как обновить данные Zimbra DKIM для домена

/ opt / zimbra / libexec / zmdkimkeyutil -u -d huuphan.com

Как получить Zimbra DKIM

/ opt / zimbra / libexec / zmdkimkeyutil -q -d huuphan.com

Как удалить данные Zimbra DKIM для домена

/ opt / zimbra / libexec / zmdkimkeyu — r -d huuphan.com

Шаг 3. Добавление Zimbra DKIM в общедоступный DNS будет выглядеть так:

0E9F133A-9577-11E1-AD0E-2A2FBBAC6BCB._domainkey 14400 IN TXT v = DKIM1; = rsa;
р = MIGfMA0GCXXXSSFWwfdfdfEEAA4GNADCBiQKBgQDY5CBg15nZ2vYnRmrNub6Jn6ghQ2DXQbQgOJ / E5IGziUYEuE2OnxkBm1h4jived21uHjpNy0naOZjLj0xLyyjclVy1chrhSbsGAhe8HLXUsdXyfRvNTq8NWLsUnMEsoomtJCJ
/ 4GSWYU1whOQ9oKZVAwWHSovAWZpByqNMZmFg7QIDAQAB

Шаг 4: Как тест Zimbra DKIM
Есть несколько веб-сайтов для tesst zimbra DKIM.Например, http://dkimvalidator.com

сообщение новое:

Ху Фан | Блог Операционная система Linux | Huu Phan ~ Почтовый сервер Zimbra, linux, сценарий bash, centos, команда linux | www.huuphan.com

Zimbra 8.7 Добавить DKIM 1024 бит

Шаг 1. Модифицируйте генератор DKIM

а. Отредактируйте (как корневой) файл сценария / opt / zimbra / libexec / zmdkimkeyutil и замените все вхождения «2048» на «1024».
Это позволит создать ключ DKIM длиной 1024 и установить его как значение по умолчанию.

нано / opt / zimbra / libexec / zmdkimkeyutil

заменить все 3 вхождения «2048» на «1024», а затем сохранить и выйти из

.

Шаг 2. Создайте новый DKIM, заменив example.com своим доменом. Обратите внимание, что вам нужно будет сгенерировать DKIM для каждого домена

.

перейти к пользователю zimbra: su — zimbra

/ opt / zimbra / libexec / zmdkimkeyutil -a -d example.com

Шаг 3. Получение сохраненных данных DKIM для вашего домена — замените example.com своим доменом
в качестве команды запуска пользователя zimbra ниже;

/ opt / zimbra / libexec / zmdkimkeyutil -q -d пример.com

[email protected]: ~ $ / opt / zimbra / libexec / zmdkimkeyutil -a -d example.com
DKIM Данные добавлены в LDAP для домена example.com с помощью селектора 0E9F184A-9577-11E1-AD0E-2A2FBBAC6BCB
Открытый ключ для введите в DNS:
0E9F184A-9577-11E1-AD0E-2A2FBBAC6BCB._domainkey IN TXT «v = DKIM1; = rsa;
р = MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDY5CBg15nZ2vYnRmrNub6Jn6ghQ2DXQbQgOJ / E5IGziUYEuE2OnxkBm1h4jived21uHjpNy0naOZjLj0xLyyjclVy1chrhSbsGAhe8HLXUsdXyfRvNTq8NWLsUnMEsoomtJCJ
/ 6LYWYU1whOQ9oKZVAwWHSovAWZpByqNMZmFg7QIDAQAB»; —– Например, DKIM 0E9F184A-9577-11E1-AD0E-2A2FBBAC6BCB.com

Шаг 4.
выделите и скопируйте: 0E9F184A-9577-11E1-AD0E-2A2FBBAC6BCB._domainkey

выделите и скопируйте: v = DKIM1; k = rsa;

выделить и копии: р = MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDY5CBg15nZ2vYnRmrNub6Jn6ghQ2DXQbQgOJ / E5IGziUYEuE2OnxkBm1h4jived21uHjpNy0naOZjLj0xLyyjclVy1chrhSbsGAhe8HLXUsdXyfRvNTq8NWLsUnMEsoomtJCJ

Шаг 5. Проверьте ключ DKIM по этой ссылке http://dkimcore.org/tools/keycheck.html

Шаг 6.

— войдите в свой веб-портал DNS
— создайте новую запись TXT

— добавьте 0E9F184A-9577-11E1-AD0E-2A2FBBAC6BCB._domainkey в поле имени хоста

— добавить публичный ключ DKIM в поле назначения / цели
v = DKIM1; k = rsa; Р = MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDY5CBg15nZ2vYnRmrNub6Jn6ghQ2DXQbQgOJ / E5IGziUYEuE2OnxkBm1h4jived21uHjpNy0naOZjLj0xLyyjclVy1chrhSbsGAhe8HLXUsdXyfRvNTq8NWLsUnMEsoomtJCJ

отл. @ thaiwps.com

zimbra @ tw2: / root $ / opt / zimbra / libexec / zmdkimkeyutil -r -d thaiwps.com

DKIM Данные удалены в LDAP для домена thaiwps.com

zimbra @ tw2: / root $ / opt / zimbra / libexec / zmdkimkeyutil -a -d thaiwps.com

DKIM Данные добавлены в LDAP для домена thaiwps.com с помощью селектора 03B012B2-325D-11E7-8D5C-CD947C57102A

Публичная подпись для входа в DNS:

03B012B2-325D-11E7-8D5C-CD947C57102A._domainkey IN TXT («v = DKIM1; k = rsa;»

«р = MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDVHfru9nZmyWrM3gN81E30ftPmERpXt1maDTcFSiUR / EiIt0 / vhP6RdbKhqbCFKDK21yIT1WtzlFP7SfgCwDlbDE8CEY95TMp5I5geUkO4EgNiXOrkpPZ3IQTsVzqkh4RFGWwucIsp0i1H7rWRnazF2JVUlvuLC7CudWpq05IoVQIDAQAB»); —– DKIM-ключ 03B012B2-325D-11E7-8D5C-CD947C57102A для тайпов.com

zimbra @ tw2: / root $ / opt / zimbra / libexec / zmdkimkeyutil -q -d thaiwps.com

Домен DKIM:

thaiwps.com

Селектор DKIM:

03B012B2-325D-11E7-8D5C-CD947C57102A

Закрытый ключ DKIM:

—– НАЧАТЬ ЧАСТНЫЙ КЛЮЧ RSA—–

MIICXgIBAAKBgQDVHfru9nZmyWrM3gN81E30ftPmERpXt1maDTcFSiUR / EiIt0 / v

hP6RdbKhqbCFKDK21yIT1WtzlFP7SfgCwDlbDE8CEY95TMp5I5geUkO4EgNiXOrk

pPZ3IQTsVzqkh4RFGWwucIsp0i1H7rWRnazF2JVUlvuLC7CudWpq05IoVQIDAQAB

AoGAGYpEPksPGXZd9DtPE7Clvv1MC7BVBdoVRN78jwe5tZQUZT4CuGOp1mjShYk +

fFa67SqPDO1wuSM3hU / yBvJebRDeGQnl1bYdNgcMThKWg3dXWjSs92CV5ypOcP27

yXGpcsKm5gYjCYO4XbgHUwH7HdRLWnwXrbMFz / wWaMhHGmkCQQDzelL69nlPIauj

EvJwgvhuoesyBfuGeaDByTZPiMnF9UHdER + 4ByrFon1zy9gvB1PhtMWeQR9iUbkI

x7cBxbIbAkEA4BPrx7CL0w94z + kSGlGIfhDGgKVIovoCf6U1 / eQT0JdQjCi1gerP

07Nbcv20LKuURfqb5a // Om8XyFg6N + O2TwJBAMbPmbaHUCMHcWllbUXmDAn6eVyN

egcihdv2 + zwSi // y9mcXNnlEkO50ck / 9oXc1Wo8w1zUUJBZaeObsfUkbLwUCQQCq

KXabpk4IcW9lM7Ezm0bztPmJJ / sJCKJtHKDrtQ / 3D3FzflaX2iEIuuNvZ4ozgfiP

S8innAdN8J823QkY + CuxAkEAy // 5GernF50QI3yXoU9YIrnfDJmatuhBRFEHBGPk

DI8g1omD5agxpQL3YWf0gZf2xwI + nX + 63BEC / SJDtgnfpg ==

—–END ЧАСТНЫЙ КЛЮЧ RSA—–

DKIM Публичная подпись:

03B012B2-325D-11E7-8D5C-CD947C57102A._domainkey В TXT («v = DKIM1; k = rsa;»

«р = MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDVHfru9nZmyWrM3gN81E30ftPmERpXt1maDTcFSiUR / EiIt0 / vhP6RdbKhqbCFKDK21yIT1WtzlFP7SfgCwDlbDE8CEY95TMp5I5geUkO4EgNiXOrkpPZ3IQTsVzqkh4RFGWwucIsp0i1H7rWRnazF2JVUlvuLC7CudWpq05IoVQIDAQAB»); —– DKIM-ключ 03B012B2-325D-11E7-8D5C-CD947C57102A для thaiwps.com

Идентификационный номер DKIM:

thaiwps.com

Как это:

ถูกใจ กำลัง โหลด …

Связанные

Настройка DKIM, SPF и DMARC в Zimbra Collaboration Suite / Zextras Blog / Sudo Null IT News

Если вы попытаетесь отправить сообщение на почтовые серверы Gmail, вы внезапно получите сообщение об ошибке типа «Наша система обнаружила, что это сообщение 550. -5.7.1 скорее всего нежелательная почта. Чтобы уменьшить количество спама, отправляемого на Gmail, 550-5.7.1 это сообщение было заблокировано. «, Это почти всегда означает, что на вашем почтовом сервере не настроены DKIM, SFP и DMARC. Большие почтовые серверы (Gmail, mail.ru, Яндекс) требуют наличия этих записей. Сегодня мы покажем вам, как это сделать в Zimbra Collaboration Suite

Настройте DKIM в Zimbra

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

Метод включает в себя шифрование заголовков исходящих сообщений закрытым ключом домена и добавление открытой версии ключа к записям DNS домена, доступным каждому. MTA сервера-получателя запрашивает открытый ключ у DNS-сервера отправителя для расшифровки заголовков входящих сообщений, а затем проверяет, действительно ли сообщение отправлено из объявленного источника.

DKIM доступен начиная с Zimbra 8.0. Настройка подписи состоит из двух этапов:

Этап первый: генерация ключа и селектора

Добавьте данные DKIM в домен, для которого еще нет существующей конфигурации DKIM:
Получить:
Вы также можете обновить данные DKIM для домена:
Удалить данные DKIM для домена:
Получить сохраненные данные DKIM для домена:

# su zimbra
$ / opt / zimbra / libexec / zmdkimkeyutil -a -d example.com

Данные DKIM добавлены в LDAP для примера домена.com с селектором ECAC22D2-DCA2-11E6-BA30-B554729FE32A
Общедоступная подпись для входа в DNS:
ECAC22D2-DCA2-11E6-BA30-B554729FE32B._domainkey IN TXT ("v = DKIM1; k = rsa;"
kiEFBACiCAiChQA3CBQA0C0CXQAHQQA0CAHQAHQQAHQQAHQAHQA0CXQAHQAHQAHQAHQAHQA0XQAQAHQA0XQAHQQAHQQA0XQAHQAHQAHQA0XQA + sOHt / 1kq3A7iAzAjBjb4JteaoFzu1q2uBOiQS0uyaFeY6CgSgRRbvPnq8cWLG / XMU0tM9gSGtgtWDmHOs6 / + QgKp6zRmetfsyABA2Y2U + XJlVURUE5ai3KIA / njt7IGZ5yeFsdZIKmhOCAOPGCovq10xkZXHdjRwiqxbCYGXv2m3o74BcWtOLPfEvexD5PYx»
"aTWFbelJpGlDN7WdBCE + ObpLGkJ9co / 1sVOcd3c9SHfPq3jcBAFm7oPX2ak7Fb7cslVK77lA2hBgMYqI2Sh + T64o6R33dU ++ Ej7CuImmv7PAqVUn5MjYr05t3LK9dwWM8Cm6aJ / QIDAQAA"); ----- Ключ DKIM, например, ECAC22D2-DCA2-11E6-BA30-B554729FE32A.com

$ / opt / zimbra / libexec / zmdkimkeyutil -u -d example.com

$ / opt / zimbra / libexec / zmdkimkeyutil -r -d example.com

$ / opt / zimbra / libexec / zmdkimkeyutil -q -d example.com

Второй шаг: обновление записей DNS

Вам необходимо добавить открытый ключ в виде записи TXT в домене:
Обновите DNS и проверьте результат команды:
Например:
Если ключ получен, используйте его, чтобы убедиться, что открытый ключ совпадает с частным.Если вы получите сообщение об ошибке:
Это означает, что файла /opt/zimbra/conf/opendkim.conf не существует, вы можете создать его с помощью команды:
Если вам нужно отозвать ключ подписи DKIM, установите пустой тег «p =» в записи TXT. По умолчанию создается 1024-битный ключ (в зависимости от версии ZCS), вы можете изменить размер с помощью опции -b.

$ ORIGIN example.com.
ECAC22D2-DCA2-11E6-BA30-B554729FE32B._domainkey В TXT ( "v = DKIM1; к = RSA;"
"р = MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAs5OCY0sX04ziF + sOHt / 1kq3A7iAzAjBjb4JteaoFzu1q2uBOiQS0uyaFeY6CgSgRRbvPnq8cWLG / XMU0tM9gSGtgtWDmHOs6 / + QgKp6zRmetfsyABA2Y2U + XJlVURUE5ai3KIA / njt7IGZ5yeFsdZIKmhOCAOPGCovq10xkZXHdjRwiqxbCYGXv2m3o74BcWtOLPfEvexD5PYx"
«aTWFbelJpGlDN7WdBCE + ObpLGkJ9co / 1sVOcd3c9SHfPq3jcBAFm7oPX2ak7Fb7cslVK77lA2hBgMYqI2Sh + T64o6R33dU ++ Ej7CuImmv7PAqVUn5MjYr05t3LK9dwWM8Cm6aAJ / Q ----- Ключ DKIM, например, ECAC22D2-DCA2-11E6-BA30-B554729FE32A.com

# host -t txt SELECTOR._domainkey.DOMAIN

# host -t txt ECAC22D2-DCA2-11E6-BA30-B554729FE32B._domainkey.example.com ns1.example.com

/ opt / zimbra / common / sbin / opendkim-testkey

$ opendkim-testkey -d example.com -s ECAC22D2-DCA2-11E6-BA30-B554729FE32B -x /opt/zimbra/conf/opendkim.conf

opendkim-testkey: /opt/zimbra/conf/opendkim.conf: ошибка конфигурации в строке 0

$ zmprov ms `zmhostname` + zimbraServiceEnabled opendkim./ libexec / configrewrite opendkim

Sender Policy Framework (SPF)

SPF (Sender Policy Framework) — расширение протокола для отправки электронной почты через SMTP. SPF определен в RFC 7208. Запись SPF защищает от подделки вашего домена и позволяет предотвратить рассылку спама с ваших адресов. SPF настроен для адреса, используемого в конверте из (конверт SMTP).

Используя запись spf, владелец домена может указать список серверов, которые имеют право отправлять сообщения электронной почты для домена.В общем порядок такой:

[версия] [механизмы] [-все | ~ все | redirect]
Версия всегда spf1, модификаторы сообщают, кто может отправлять почту:

  • a, mx — серверы из DNS записей A или MX соответственно,
  • ip4, ip6 — адрес сервера (можно указать подсети, например : ip4: 1.2.3.4/24),
  • include — взять данные с другого адреса

Параметры:

  • -все означает не принимать почту, если проверка механизма не удалась,
  • ~ все, если проверка не удалась, действовать по усмотрению сервера-получателя.
  • редирект означает получение правил с другого сервера.

Рассмотрим примеры:

Пример 1
example.com. IN TXT «v = spf1 ip4: 62.220.58.72 a mx -all»
Для домена example.com принимать письма, отправленные с IP-адреса 62.220.58.72, также принимать сообщения от серверов, указанных в A и MX, сообщения от других сервера должны быть отклонены.

Пример 2
example.com. IN TXT «v = spf1 редирект: пример.org «
Получите правила из домена example.com.

Пример 3
example.com. IN TXT« v = spf1 include: _spf.google.com -all »
Получать электронные письма только от SMTP-серверов Google.

Настройка DMARC

Domain-based Message Authentication, Reporting and Conformance или DMARC — это техническая спецификация, созданная группой организаций для борьбы со спамерами, которые фальсифицируют адреса отправителя. Он основан на идентификации почтовых доменов отправителя на основе правил и функций, установленных на почтовом сервере получателя.

Таким образом, почтовый сервер решает, является ли сообщение хорошим или плохим, и действует в соответствии с записью DMARC. Благодаря настройке DMARC владельцы доменов могут создавать правила для обработки писем, полученных от доменов, которые не были авторизованы.

После создания записей SPF и DKIM необходимо настроить проверку DMARC, добавив запись TXT в DNS (аналогично SPF). Параметры могут быть следующими:

Для получения дополнительной информации см. Реестр тегов DMARC.

Правило для домена (что делать с сервером-получателем, если проверка spf и dkim не удалась) может быть одним из трех:

  • none — просто регистрировать сообщения для отчета, ничего не делать с самими сообщениями;
  • карантин — помечать сообщения как спам;
  • отклонить — отклонить получение сообщения на уровне SMTP.

Если вы хотите получать отчеты, не забудьте указать адрес электронной почты в теге rua:

_dmarc.example.com IN TXT "v = DMARC1; p = none; rua = mailto: [email protected]"

Результат добавления записей DNS

Ниже приведен пример DNS-записей для зоны example.com:
По всем вопросам, связанным с Zextras Suite, вы можете обращаться к представителю Zextras Катерине Триандафилиди по электронной почте [email protected]

$ ORIGIN.
$ TTL 3600
example.com В SOA example.com. hostmaster.example.com. (
2017011011; серийный
3600; обновление [1 час]
600; повтор [10 мин]
1209600; истечение срока [14 дней]
3600; минимальный TTL [1 час]
)
NS нс1.example.com.
MX 10 ns1.example.com.
A 62.220.58.71
IN TXT "v = spf1 a mx ip4: 62.220.58.71 ~ all"

$ ORIGIN example.com.
ECAC22D2-DCA2-11E6-BA30-B554729FE32B._domainkey В TXT ( «v = DKIM1; к = RSA;»
«р = MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAs5OCY0sX04ziF + sOHt / 1kq3A7iAzAjBjb4JteaoFzu1q2uBOiQS0uyaFeY6CgSgRRbvPnq8cWLG / XMU0tM9gSGtgtWDmHOs6 / + QgKp6zRmetfsyABA2Y2U + XJlVURUE5ai3KIA / njt7IGZ5yeFsdZIKmhOCAOPGCovq10xkZXHdjRwiqxbCYGXv2m3o74BcWtOLPfEvexD5PYx»
«aTWFbelJpGlDN7WdBCE + ObpLGkJ9co / 1sVOcd3c9SHfPq3jcBAFm7oPX2ak7Fb7cslVK77lA2hBgMYqI2Sh + T64o6R33dU ++ Ej7CuImmv7PAqVUn5MjYr05t3LK9dwWM8Cm6aJ «) Q —— Ключ DKIM, например, ECAC22D2-DCA2-11E6-BA30-B554729FE32B.com
_dmarc IN TXT «v = DMARC1; p = none; rua = mailto: [email protected]»
ns1 IN A 62.220.58.71
www 86400 IN CNAME example.com.

Zimbra Collaboration Administrator Guide

antispam-mysqladmin

Утилита администрирования SQL-сервера для защиты от спама

антиспам mysql

SQL-клиент для защиты от спама

антиспам-mysql.сервер

Запуск, остановка экземпляра SQL для защиты от нежелательной почты

ldap

Запуск, остановка или определение статуса Zimbra LDAP

ldapsearch

Выполнить поиск на сервере LDAP

logmysqladmin

Отправить команды mysqladmin экземпляру SQL регистратора

MySQL

Вход в интерактивную командную строку для экземпляра SQL почтового ящика

MySQL.сервер

Запуск, остановка экземпляра SQL почтового ящика

mysqladmin

Отправить административные команды экземпляру SQL почтового ящика

postconf

Команда Postfix для просмотра или изменения конфигурации постфикса

постфикс

Запуск, остановка, перезагрузка, очистка, проверка, обновление-конфигурация постфикса

qshape

Изучить очередь постфикса относительно времени и домена отправителя / получателя

zmaccts

Выводит список учетных записей и показывает статус учетных записей в домене

zmamavisdctl

Запуск, остановка, перезапуск или определение статуса Amavis-D New

zmantispamctl

Запуск, остановка, перезагрузка, состояние службы защиты от спама

zmantivirusctl

Запуск, остановка, перезагрузка, статус антивирусной службы

zmantispamdbpasswd

Изменяет пароль базы данных SQL для защиты от спама

zmapachectl

Запуск, остановка, перезагрузка или проверка статуса службы Apache (для проверки орфографии)

zmarchiveconfig

Команда для просмотра, изменения или настройки архивирования

zmarchivectl

Запуск, остановка, перезагрузка, статус для архивации

zmarchivesearch

Искать в архивах по счету

zmauditswatchctl

Запуск, остановка, перезапуск, перезагрузка, состояние контрольного наблюдения

zmbackup

Выполняет полное и инкрементное резервное копирование для указанного почтового хоста.

zmbackupabort

Останавливает текущее резервное копирование.

zmbackupquery

Найти конкретный полный набор резервных копий

zmblobchk

Проверить целостность хранилища BLOB-объектов Zimbra

zmcalchk

Проверка согласованности встреч и посетителей в календаре Zimbra

zmcbpolicydctl

Запуск, остановка и перезапуск службы cluebringer policyd, если она включена

zmconfigdctl

Состояние запуска, остановки, уничтожения, перезапуска демона конфигурации MTA.

zmcertmgr

Управление самоподписанными и коммерческими сертификатами

zmclamdctl

Запуск, остановка или определение статуса Clam AV

zmcleaniplanetics

Очистка файлов календаря iPlanet ICS

zmcontrol

Запуск, остановка, перезапуск, состояние серверов Zimbra.Также можно использовать для поиска
установлена ​​версия Zimbra

zmconvertctl

Запустите, остановите сервер преобразования или узнайте статус преобразованного
переоборудование / индексация навесного оборудования

zmdevicesstats

Количество уникальных идентификаторов устройств ActiveSync на сервер

zmgdcutil

(получить количество устройств) дает общее количество устройств в системе без необходимости
указание отдельных серверов.

zmdumpenv

Отображается общая информация о серверном окружении

zmgsautil

Утилита синхронизации глобальной адресной книги (GAL).
Создайте, удалите учетную запись синхронизации глобального списка адресов и инициируйте ручную синхронизацию.

имя хоста

Найдите имя хоста сервера Zimbra

мкм

Запуск, остановка и состояние сеанса HSM.

zmitemdatafile

Извлекает и упаковывает файлов tgz , которые Zimbra использует для импорта / экспорта REST

zmjava

Выполнить Java с настройками среды Zimbra

zmjavaext

Выполнение настроек среды для Java и Zimbra, включая расширение
основанные фляги.

zmldappasswd

Изменяет пароль LDAP

zmlicense

Просмотр и установка лицензии Zimbra

zmlmtpinject

Инструмент для испытаний

zmlocalconfig

Используется для установки или получения локальной конфигурации сервера Zimbra

zmloggerctl

Запуск, остановка, перезагрузка или определение статуса службы регистратора Zimbra

zmloggerhostmap

Используется для ручного сопоставления имени хоста DNS с именем zmhost.

zmlogswatchctl

Запуск, остановка, состояние образца, отслеживающего ведение журнала.

zmmailbox

Выполняет задачи по управлению почтовым ящиком

zmmailboxdctl

Запуск, остановка, перезагрузка или определение состояния компонентов почтового ящика
(zmmailboxd, MariaDB, конвертировать)

zmmboxsearch

(перекрестный поиск в почтовых ящиках) Поиск по почтовым ящикам для поиска сообщений и
навесное оборудование

zmmboxmove

7.1.3 и новее. Используется для перемещения выбранных почтовых ящиков с одного сервера Zimbra на
Другая.

zmmboxmovequery

7.1.3 и новее. Используется для запроса текущих перемещений почтовых ящиков на сервере

zmpurgeoldmbox

7.1.3 и новее. Удаляет почтовый ящик со старого сервера после перемещения почтового ящика

zmmemcachedctl

Запуск, останов и перезапуск

zmmetadump

Вспомогательный инструмент, который выводит метаданные элемента в удобочитаемой форме

zmmilterctl

Запуск, остановка и перезапуск сервера Zimbra milter, если он включен

zmmtaconfigdctl

Начало работы в Zimbra Collaboration 7.0 эта команда не используется. Используйте zmconfigdctl .

zmmtactl

Запуск, остановка или определение статуса MTA

zmmypasswd

Изменить пароли SQL

zmmysqlstatus

Состояние экземпляра SQL почтового ящика

zmnginxconf

Вывести конфигурацию обратного прокси

zmnginxctl

Запуск, остановка и перезапуск обратного прокси Zimbra

zmplayredo

Выполняет восстановление данных с помощью периодически создаваемых резервных копий моментальных снимков.Пользователи
которые используют моментальные снимки для резервного копирования и восстановления своей информации из резервной копии
site используйте эту команду.

змпров

Выполняет все задачи инициализации в Zimbra LDAP, включая создание
учетные записи, домены, списки рассылки и псевдонимы

zmproxyconfgen

Создает конфигурацию для прокси nginx

zmproxyctl

Запуск, остановка, перезапуск и определение статуса прокси-службы IMAP

zmproxypurge

Удаляет информацию о маршрутизации POP / IMAP с одного или нескольких серверов memcached

zmpython

Возможность писать сценарии Python, которые обращаются к библиотекам Zimbra Java.Он устанавливает
путь к классу Zimbra и запускает интерпретатор Jython.

zmredodump

Вспомогательный инструмент для сброса содержимого файла redolog в целях отладки

zmrestore

Выполняет полное восстановление и инкрементное восстановление для указанного почтового хоста

zmrestoreldap

Восстановить учетные записи из резервной копии LDAP

zmrestoreoffline

(автономное восстановление) Выполняет полное восстановление, когда сервер Zimbra (т.е.е.,
mailboxd процесс) не работает

zmsaslauthdctl

Запуск, остановка или определение статуса saslauthd (аутентификация)

zmschedulebackup

Запланировать резервное копирование и добавить команду в таблицу cron

zmshutil

Используется для других скриптов zm, не использовать

zmskindeploy

Развернуть скины

zmsoap

Распечатать почту, учетную запись и информацию администратора в формате SOAP

zmspellctl

Запуск, остановка или определение статуса сервера проверки орфографии

zmsshkeygen

Сгенерировать ключи шифрования SSH Zimbra

zmstat-chart

Создание диаграмм из данных zmstat, собранных в каталоге

zmstat-chart-config

Выводит конфигурацию XML, описывающую текущее состояние данных.
собраны из zmstat-chart для создания диаграмм в Администрации
Приставка.

zmstatctl

Запуск, остановка, проверка состояния или чередование журналов сборщиков данных zmstat

zmstorectl

Запуск, остановка или определение статуса услуг магазина Zimbra

zmswatchctl

Запуск, остановка или определение статуса процесса Swatch, который используется в
мониторинг

zmsyncreverseproxy

Декодирует запрос / ответы на синхронизацию и записывает их в подробный режим.
включенный.

zmthrdump

Инициировать дамп потока и сохранить данные в файл с отметкой времени

zmtlsctl

Установите режим веб-сервера для опций протокола связи:
HTTP, HTTPS или смешанный

zmtrainsa

Используется для обучения антиспамового фильтра распознаванию спама или радиолюбителей

zmtzupdate

Предоставляет механизм для обработки изменений часовых поясов

zmupdateauthkeys

Используется для получения ключей шифрования ssh, созданных zmsshkeygen

zmvolume

Управление томами хранения на сервере почтовых ящиков Zimbra

zmzimletctl

Развертывание и настройка Zimlets

Zimbra: Генератор команд, доступ к DNS и компромисс с сохранением сегмента DKIM в 2048 бит

Saludos amigos, como todos sabemos la seguridad en el correo electrónico es muy importante en nuestros días, no solamente a la hora de recibir, si no también a la hora de enviar.

Hace unos años os mostré una detallada guía de cómo configurar SPF, DKIM y DMARC, disponible aquí:

Desde Zimbra Collaboration 8.7 , Zimbra nos genera una llave pública DKIM válida y segura de 2048-bit, al Principio se pensó que era un bug, pero nada más allá de la realidad, Zimbra genera que tá llave válida partir en varios trozos for que ciertos servidores de DNS soporten, ya que por defecto el límite por cada entrada de DNS TXT на 255 знаков, потому что это супера с DKIM de 2048.

Buenas prácticas para DKIM

El Servicio de Seguridad Nacional del Reino Unido nos da unos consjos muy buenos que deberíamos de seguir para tener nuestro DKIM perfectamente configurado:

  • Конфигуратор DKIM для работы с сообщениями электронной почты.
  • Que la llave DKIM sea de 2048 bit es una buena práctica.
  • Cambiar el DKIM cada doce meses, ya que se tarda muy poco y evitaremos así posibles ataques.

Может генерировать 2048 бит DKIM в Zimbra Collaboration 8.7 лет в аделанте

Desde nuestro SSH, como usuario Zimbra , lanzaremos el siguiente comando, -a si es la primera vez que lo lanzamos, -u si estamos actualizando la entrada DKIM:

 / opt / zimbra / libexec / zmdkimkeyutil -a -d yourdomain.com 

Que nos generará algo similar a lo siguiente, pero con vuestros valores:

 DKIM Данные добавлены в LDAP для домена zimbra.io с помощью селектора 25D766CE-CEAC-11E7-B087-020B6DB9DD9A
Публичная подпись для входа в DNS:
25D766CE-CEAC-11E7-B087-020B6DB9DD9A._domainkey В TXT ("v = DKIM1; k = rsa;"
          "Р = MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwA4vVMiV3 / 14hRMzbKNnBKNThqxTWLi2E5NqqHLccIJg / P33yqwgGVKKUM9HFfXZ8urz6 / dl8oNG3oxs73W1sgWHrFRo3ZayHsuUMe + DLyt8wtyR / RUae0nvd6Z6t0lPwujXWBrRS / FeMg / IGA8ExBKjD + aAYdQfH / lhlDGzumTXgbSB0KMzlpOjcum2Aes69rEiR744GGaPb2"
          "X3MxK8vjpeMIx16n2tADb0wKKP19WTF0at5HCP8F4SFflLUPJMOC1Be9FCWjTjNr1qrRZTwCwC7OC9tnV7SsKKXG + 8D6hu39Tm5U1GL14BKVL) ----- Ключ DKIM 25D766CE-CEAC-11E7-B087-020B6DB9DD9A для zimbra.io 

Al ver esto, compare con cómo es para 1024 bit, podemos pensar que Zimbra nosha dado un DKIM inválido, pero no es así, esta llave es completetamente válida , vamos a los siguientes pasos.

Cómo introducir esta DKIM en nuestro server de DNS

Aquí llega la parte que se pone arisca, y es que зависимости de vuestro server de DNS, tenréis más o menos suerte, vamos con lo más sencillo un cPanel usando la parte web:

Como vemos introduciremos la entrada de DNS del siguiente modo:

 25D766CE-CEAC-11E7-B087-020B6DB9DD9A._domainkey TTL IN TXT "v = DKIM1; k = rsa; p = PRIMERALINEAYSEGUNDALINEA" 

Fijaros por Favor que no he usado «p = ni подобное соло сено unas comillas al empezar y otras al acabar.

Si tuviéramos otros DNS, o usaramos la consola, podríamos también usar el siguiente formato:

 25D766CE-CEAC-11E7-B087-020B6DB9DD9A._domainkey IN TXT ("v = DKIM1; k = rsa; p = MIIBIjANBgkqhkiG9w ..."
25D766CE-CEAC-11E7-B087-020B6DB9DD9A._domainkey IN TXT "... AQAB") 

O, включая алгоритмы других серверов DNS, которые конфигурируются для siguiente manera:

 25D766CE-CEAC-11E7-B087-020B6DB9DD9A._domainkey IN TXT ("v = DKIM1; k = rsa; p ="
"MIIBIjANBgkqhkiG9w ..."
«... АКАБ») 

Sea como fuere, buscar is sobre el server de DNS que tenéis y como introducir un DKIM de 2048 bit, que seguro que os sale algún buen resultado.

Comprobando que tenemos un DKIM válido y seguro

Esta es la parte más interesante, para ello he usado http://dkimcore.org/tools/keycheck.htmltendremos que introducir el selector que tenemos y nuestro dominio, de la siguiente manera:

Si todo ha ido bien, veremos lo siguiente, 2048 ¡SÍ! :

Otro ejemplo real es si mandamos un email a GMAIL por ejemplo, podremos ver si miramos las cabeceras lo siguiente:

Удлиненные детали:

Eso es todo amigos.

Enlaces interesantes

He seleccionado los siguientes enlaces que seguro que os gustan:

Связанные

Реализация DomainKeys / DKIM на Zimbra + SLES 11 SP1 с OpenDKIM — личные заметки Vavai

В следующем руководстве рассматривается реализация DomainKeys / DKIM с использованием OpenDKIM на SLES или openSUSE. Доменные ключи Идентифицированная почта (DKIM) — это технология, разработанная для того, чтобы преступникам было сложно или невозможно украсть идентификационные данные законных организаций.Эта технология аутентификации позволяет хорошим отправителям «подписывать» сообщение, чтобы доказать, что оно действительно пришло от них.

DKIM изначально был написан как протокол аутентификации отправителя, разработанный для решения проблемы поддельных сообщений электронной почты. Yahoo! выпустила спецификацию DomainKeys, а Cisco выпустила спецификацию Internet Identified Mail. Оба метода основаны на криптографической подписи сообщений. Эти две попытки были объединены, и объединенная спецификация известна как DomainKeys Identified Mail (DKIM).

Это различные варианты реализации подписи DomainKeys: с использованием DK-Filter, DKIM-milter, OpenDKIM, а также с использованием новой реализации DKIM от Amavisd. Не путайте со всеми терминами. Все методы имеют одинаковую функцию, подписывая электронную почту как «надежную» или законную.

Внедрить OpenDKIM в openSUSE / SLES для почтового сервера Zimbra можно за 5 простых шагов:

  1. Установка OpenDKIM
  2. Настройка OpenDKIM
  3. Настройка записей DNS
  4. Интеграция с вашим почтовым сервером (в моем случае: почтовый сервер Zimbra)
  5. Тестирование и подтвержденная подпись DKIM

УСТАНОВКА OPENDKIM

Загрузите и установите OpenDKIM.Я нашел репо в репозитории сообщества openSUSE, Webpin. RPM имеет сборку для openSUSE 11.2, но вы также можете установить ее на openSUSE 11.3 или SLES 11.

В случае, если исходный RPM удален из репозиториев, я делаю резервную копию своего репозитория http://download.vavai.com.

 wget -c http://download.vavai.com/repo/x86_64/opendkim-2.2.2-2.1.x86_64.rpm
wget -c http://download.vavai.com/repo/x86_64/libopendkim3-2.2.2-2.1.x86_64.rpm
zypper в * .rpm 

КОНФИГУРАЦИЯ OPENDKIM

  1. Создать конфигурацию OpenDKIM
     cp / usr / share / doc / packages / opendkim / opendkim.conf.sample /etc/opendkim.conf
    mkdir -p / и т. д. / mail / dkim 
  2. Измените /etc/opendkim.conf в соответствии с вашей средой
     BaseDirectory / var / run / opendkim
    Домен vavai.web.id
    InternalHosts 192.168.10.0/24, 127.0.0.1
    KeyFile /etc/mail/dkim/selector.private
    Режим sv
    Селектор селектора
    Сокет inet: 8891 @ localhost
    Системный журнал Да
    Системный журнал
    X-заголовок Да 
  3. Создать селектор и ключ для подписи сообщения
     opendkim-genkey -d vavai.web.id -D / etc / mail / dkim -s селектор
    cd / etc / mail / dkim
    селектор chmod 440.частный 

    Приведенная выше команда создала 2 файла: selector.txt и selector.private. selector.txt содержит записи DNS, которые мы должны вставить в наш DNS-сервер.

  4. Запустите openDKIM с помощью следующей команды:
     opendkim -x /etc/opendkim.conf 

КОНФИГУРАЦИЯ DNS-СЕРВЕРА

Откройте /etc/mail/dkim/selector.txt и скопируйте его содержимое на наш DNS-сервер. Если ваш общедоступный DNS управляется интернет-провайдером, свяжитесь с ним и попросите вставить записи TXT в DNS-сервер для нашего домена.

Ниже приведен образец моего DNS-сервера для домена vavai.web.id:

 # cat /var/lib/ named/master/vavai.web.id
$ TTL 2 дн.
@ В SOA ns1.vavai.web.id. root.ns1.vavai.web.id. (
2010122101; серийный
3ч; освежить
1ч; повторить попытку
1 нед; истечение срока
1г); минимум

vavai.web.id. IN NS ns1.vavai.web.id.
vavai.web.id. IN NS ns2.vavai.web.id.
vavai.web.id. IN A 174.120.9.XXX
vavai.web.id. В MX 0 mail.vavai.web.id.
www В CNAME vavai.web.id.
ns1 IN A 202.158.52.xxx
почта IN A 202.158.52.xxx
ns2 ВХОД А 202.43.115.xxx
vavai.web.id. В TXT "v = spf1 a mx include: mail.vavai.web.id ~ all"
selector._domainkey IN TXT "v = DKIM1; г = постмастер; г = *; к = RSA; р = MIG29fMA0GCSqsdfsdfdsfdsfGSIb3DQEBAQUAA4GNADCBiQKBgQDJ5IZT5e5nvmkotroz5ylTlwU8yEEZ + V / 576aI + w6TkbP4XibYxDsWVweXXtVeQQMMAAmw8AwYuK5R9b373Xqu + Hv9HNAJoAteKF / qlKcZc5Akhj5B7P1imXaurZkkIBp63yBZyZRralzQYNT3UrVB7M / xONMWXcU9xm7Zv1Pzh2Y1OQIDAQAB" 

ПОЧТОВЫЙ СЕРВЕР ZIMBRA КОНФИГУРАЦИЯ
Откройте терминал / консоль, войдите в систему как пользователь Zimbra (su — zimbra) и замените / добавьте следующую строку в / opt / zimbra / postfix / conf / main.cf :

 smtpd_milters = inet: localhost: 8891
non_smtpd_milters = inet: localhost: 8891
milter_default_action = принять 

Сохранить и запустить команду перезагрузки: перезагрузка постфикса

ТЕСТИРОВАНИЕ И ПРОВЕРКА OPENDKIM
После успешного выполнения всех шагов протестируйте OpenDKIM, отправив пустое электронное письмо на адрес [email protected], [email protected] или [email protected]. com или в свою учетную запись электронной почты Gmail / Yahoo.

Ниже приведен образец ответного сообщения от sendmail:

 Система аутентификации: Почта с идентификационными ключами домена
Результат: подпись DKIM подтверждена ХОРОШО
Описание: Подпись подтверждена, сообщение пришло без изменений
Хост отчета: sendmail.net
Дополнительная информация: http://mipassoc.org/dkim/
Sendmail milter: https://sourceforge.net/projects/dkim-milter/ 

Ответ от elandsys:

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

Результаты приведены ниже:

Проверка подписи DKIM: пройти (1024-битный ключ) 

Ответ от Gmail

 Received-SPF: pass (google.com: домен [email protected] обозначает XXX.158.52.XXX в качестве разрешенного отправителя) client-ip = XXX.158.52.XXX;
Результаты аутентификации: mx.google.com; spf = pass (google.com: домен [email protected] обозначает XXX.158.52.XXX как разрешенный отправитель) [email protected]; dkim = передать [email protected]
Получено: от localhost (localhost [127.0.0.1])
автор: mx3.vavai.web.id (Postfix) с идентификатором ESMTP 0E666DB0302
для ; Ср, 22 декабря 2010 г. 09:42:12 +0700 (WIT)
X-Virus-Scanned: amavisd-new на vavai.web.id
Получено: от mx3.vavai.web.id ([127.0.0.1])
от localhost (mx3.vavai.web.id [127.0.0.1]) (amavisd-new, порт 10024)
с идентификатором ESMTP On3P3QqkyMM4 для;
Ср, 22 декабря 2010 г. 09:42:11 +0700 (WIT)
Получено: с сайта mx3.vavai.web.идентификатор (mx3.vavai.web.id [XXX.158.52.XXX])
Автор mx3.vavai.web.id (Postfix) с идентификатором ESMTP 56CC1DB0136
для ; Ср, 22 декабря 2010 г. 09:42:11 +0700 (WIT)
X-DKIM: фильтр OpenDKIM v2.2.2 mx3.vavai.web.id 56CC1DB0136
DKIM-подпись: v = 1; а = rsa-sha256; c = простой / простой; d = vavai.web.id;
s = селектор; t = 1292985731;
bh = cBOiyKgb7kh / ygTXq8sQihgwMCryqYRvRZBYcO6 / z5U =;
h = Дата: От: Кому: Идентификатор сообщения: Тема: Версия MIME: Тип содержимого;
b = KMOYjsda6qPqNdf0NuyxdEayFxgRCAVmilYKobK3sKV8hSvybT3fmbWM + 2mZUCzMY
sDSdVVTXMB6RnHoEPyPzNFK7y9TPpAn0SPkGqL0nSzQ + Fr6 / VaEBHrcQGduUNm5Ot5
V0Y9vIcmfjLGWTkkAX0RjHpV / 9ZK8VPJD0etRsM0 = 

Dkim Private Key Stored Zimbra

Этот тип содержит только файлы cookie, которые обеспечивают простое использование и функции безопасности сайта.

Dkim Private Key Stored Zimbra .Exe And Click

В этом руководстве для этой цели мы используем приложение Stefan Profanters superb dkim-exchange, которое доступно прямо здесь: После настройки системы мы открываем Settings.DkimSigner.exe и нажимаем на переключателе Install или загрузите установщик прямо из Construction. После завершения установки откройте конфигуратор.

D: Program FilesExchange DkimSignerConfiguration.DkimSigner.exe Щелкните переключатель «Настроить» и переместите брокер DkimSigner в самый верх списка.

На вкладке настроек DKIM выберите расслабленную канонизацию, поскольку Exchange обычно добавляет, удаляет и изменяет пробелы (пробелы, вкладки, новые диапазоны) при уточнении и публикации сообщений.

Обычно это проблема, так как DKIM генерирует хеш-подпись всего тела и заголовка исходного сообщения, после чего, когда он будет получен, сервер-получатель тоже сделает эти хеши и даже приблизится к двум вариантам.

Их нужно дополнить.

Простая канонизация требует, чтобы все тело и заголовок сообщений были идентичны при оценке исходного сообщения и полученной версии.

Удобная канонизация дает транспортным агентам еще большую гибкость в изменении сообщений, она заменяет все пробелы на индивидуальность одиночного пространства, переводит все персонажи в нижний регистр, устраняет пробелы при маневрировании и ходьбе и т. Д.

На вкладках настроек веб-сайта мы добавляем наш домен title, имя селектора DKIM станет selector1.

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

Это доказывает подлинность, поскольку только машина может сгенерировать этот зашифрованный ключ, если кто-то изменил информацию в пути, они могут повторно создать хэши — совершенно нового тела и хедера, но не могут зашифровать хэш, как это делает машина.

Перезагрузите службы Как это работает Марк Доу из Continually Warm Caf отправляет мне защищенную информацию по электронной почте.

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

Если недавно сгенерированные и ранее расшифрованные хэши совпадают, проверка DKIM проходит.

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *