https://help.superhosting.bg/dkim-domainkeys-identified-mail.html
  • bg

Хостинг, Домейни, Cloud, Виртуални сървъри (VPS), Managed VPS, SSL сертификати

DKIM (DomainKeys Identified Mail)

Имейл (e-mail)
dkim, domainkeys, domainkey, spam protection, dkim signature, активиране на dkim, dkim cpanel, dkim txt, dkim dns

Какво е DKIM?

DKIM (DomainKeys Identified Mail) е механизъм за удостоверяване на подателя и автентичността на съдържанието на изпратените от този подател имейл съобщения.

Както SPF, така и DKIM системата е създадена, за да защитава получателите и подателите, от измамни и спам имейл съобщения. Тези технологии помагат на легитимните податели да докажат, че изпращаните от тях имейл съобщения не са фалшифицирани, което може да предотврати попадането на легитимен имейл в папката Spam.

Активиране на DKIM

За да ползвате DKIM, ако ползвате хостинг акаунт с контролен панел cPanel, достъпете менюто Email Authentication и активирайте DKIM. При активирането автоматично се създава нужната двойка ключове - частен и публичен и автоматично се добавя DNS запис за домейните. След като DKIM е активиран, всяко изпратено писмо, от имейл адрес към домейните в cPanel, ще има добавен хедър DKIM-Signature.

Забележка: След активиране на DKIM в cPanel, може да получите съобщение "Status: Enabled WARNING: The system cannot verify that this server is an authoritative nameserver for mydomain.com".

Съобщението се дължи на това, че контролния панел не може да провери DNS записите на домейна и дали тези записи са валидни. Тази проверка е изключена от съображения за сигурност. Това съобщение е само информативно и не бива да ви притеснява, DKIM е настроен и функционира коректно.

Как работи DKIM?

DKIM изисква изпращача да има генерирана двойка криптографски ключове. Това са частен ключ, за подписване на имейл съобщението при изпращане и публичен ключ, за валидиране на този подпис.

Частният ключ се ползва от изходящия мейл сървър на изпращача, за подписване на изходящите имейл съобщения. Към тези имейл съобщения се добавя допълнителен хедър DKIM-Signature, в който се съдържа подписа, хеш код на съдържанието на имейла (по който може да се разбере ако нещо е променено), кой е подписващия домейн и няколко други параметри.

Публичният ключ е поставен в TXT запис, от изпращача, в DNS зоната на неговия домейн. Това е домейнът, към който са създадени имейл адресите, от които ще се изпращат имейл съобщения.

При получаване на DKIM подписано имейл съобщение, входящият мейл сървър на получателя ще вземе от DKIM мейл хедъра домейн името и селектора, за да извърши DNS проверка за този TXT запис. След това ще използва публичния ключ от TXT записа, за да верифицира подписа на имейл съобщението.

Примерен хедър DKIM-Signature, присъстващ в имейл съобщение подписано с частния ключ:

DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mydomain.com; s=default;
h=Message-ID:Subject:To:From:Date:Content-Transfer-Encoding:Content-Type:MIME-Version;
bh=VBzDnT2t7...7wIaobQ=; b=WDnta...s5fzCH18=;

DKIM-Signature: хедър (заглавна част) в имейл съобщението
v=1 : версията на DKIM
a=rsa-sha256 : алгоритъм, използван за подписването
q=dns/txt : метода за заявка
c=relaxed/relaxed : дали да се толерира минимална промяна в хедърите/съдържанието на съобщението; някои имейл системи, през които преминава съобщението, може да направят малки промени по хедърите; relaxed означава, че съвсем малки промени са приемливи и въпреки тях подписа ще остане валиден; другият вариант е simple, при който абсолютно никакви промени не са приемливи и ще доведат до невалиден подпис; възможно е да се зададе различен параметър за хедърите и за съдържанието, например c=relaxed/simple.
d=mydomain.com : подписващия домейн
s=default : селектор; по този параметър входящия мейл сървър ще потърси отговарящия му публичен ключ в DNS записите на домейна; този допълнителен параметър позволява един домейн да има множество частни/публични ключове (повече от един легитимен изпращач или периодична промяна на двойката ключове);
h=Message-ID:Subject:To:From:Date:Content-Transfer-Encoding:Content-Type:MIME-Version : хедърите, които са подписани
bh=VBzDnT2t7l4E7ujx7wIaobQ= : хеш кода на съдържанието в имейла;
b=WDntaGE...ds5fzCH18= : самият електронен подпис (на хедърите и съдържанието)

Примерен DKIM TXT запис в DNS зоната на домейна:

default._domainkey IN TXT "v=DKIM1; k=rsa; p=MIGfMA0GCSqG...YbiWDq1yESS5jSQbzpQIDAQAB;"

v=DKIM1 : версията на DKIM
k=rsa : типа на ключа p=;
p=MIGfMA0GCSqG...YbiWDq1yESS5jSQbzpQIDAQAB : публичния ключ, допълнително кодиран в base64

Детайлно описание на всички параметри на TXT записа и мейл хедъра можете да намерите в DKIM спецификацията: DKIM RFC 6376.

Имплементации на DKIM

Някои от системите, в които е имплементиран DKIM можете да видите на следната страница: DKIM Software and Services Deployment Reports

Ако верификацията на подписа не е успешна, писмото може да се маркира като спам. Такива съобщения не се изтриват автоматично. Към такива съобщения не се прилагат допълнителни действия, като например автоматично изтриване, това не е засегнато от спецификациите на DKIM. За допълнителна манипулация на имейл съобщенията, които не са преминали успешно валидирането, ще е необходимо допълнително приложение.

Едно такова приложение е SpamAssassin. SpamAssassin е филтър против спам, който извършва проверка на DKIM подписаните имейл съобщения. Освен DKIM проверката, този филтър прилага и множество други проверки върху всяко входящо имейл съобщение. Маркираните като спам имейл съобщения, може или да се изтриват автоматично или да се преместват в папка Spam.

Интересно:

Ако ползвате имейл клиента Mozilla Thunderbird, чрез адона dkim-verifier можете да активирате проверката и показването на нотификации за DKIM валидацията на входящите имейл съобщения.

Примерни нотификации в Thunderbird, в зависимост от резултата на DKIM валидирането:

Легитимно имейл съобщение, успешно валидиран DKIM подписвалидирането на подписа е успешно и автентичността на имейл съобщението е потвърдена:
Валидирането на подписа не е успешноимейл адресът, който е поставен за изпращач (From:) не е към домейна, от който реално е изпратено съобщението:

500px270px
SuperHosting.BG

Коментари

Все още няма коментари

Уведоми ме при
avatar
wpDiscuz
Всички права запазени © 2005-2017 , www.superhosting.bg