DKIM
DKIM (DomainKeys Identified Mail) to standard uwierzytelniania poczty e-mail, który pozwala serwerowi odbiorczemu potwierdzić, że wiadomość została rzeczywiście wysłana z Twojej domeny i nie została zmieniona w trakcie przesyłania. Twój wychodzący serwer pocztowy podpisuje każdą wiadomość kluczem prywatnym, a odbiorcy weryfikują ten podpis względem pasującego klucza publicznego
DKIM (DomainKeys Identified Mail) to standard uwierzytelniania poczty e-mail, który pozwala serwerowi odbiorczemu potwierdzić, że wiadomość została rzeczywiście wysłana z Twojej domeny i nie została zmieniona w trakcie przesyłania. Twój wychodzący serwer pocztowy podpisuje każdą wiadomość kluczem prywatnym, a odbiorcy weryfikują ten podpis względem pasującego klucza publicznego opublikowanego w systemie DNS Twojej domeny.
DKIM jest jednym z trzech filarów nowoczesnego uwierzytelniania poczty e-mail, obok SPF i DMARC. Razem decydują one, czy Twoja poczta trafi do skrzynki odbiorczej, czy do spamu — oraz czy atakujący mogą podszywać się pod Twoją domenę. Ta strona wyjaśnia, czym jest DKIM, jak działa i jak poszczególne elementy do siebie pasują.
Jak działa DKIM
DKIM działa jak proces uzgadniania typu podpisz-przy-wysyłce, zweryfikuj-przy-odbiorze, oparty na kryptografii klucza publicznego. Gdy Twój serwer pocztowy wysyła wiadomość, generuje kryptograficzny skrót wybranych nagłówków (i zazwyczaj treści), szyfruje ten skrót kluczem prywatnym, który posiada wyłącznie Twój serwer, i dołącza wynik do wiadomości jako nagłówek DKIM-Signature.
Pasujący klucz publiczny znajduje się w systemie DNS Twojej domeny jako rekord TXT. Gdy serwer odbiorczy przyjmuje wiadomość, odczytuje nagłówek DKIM-Signature, wyszukuje klucz publiczny w DNS i używa go do weryfikacji podpisu. Jeśli podpis się potwierdzi, odbiorca wie dwie rzeczy: wiadomość naprawdę pochodzi z serwera upoważnionego do podpisywania w imieniu Twojej domeny oraz podpisana treść nie została po drodze naruszona. Jeśli cokolwiek zostało zmienione — lub klucz nie pasuje — weryfikacja DKIM kończy się niepowodzeniem.
Ponieważ klucz prywatny nigdy nie opuszcza Twojej infrastruktury, osoba podszywająca się nie może sfałszować prawidłowego podpisu DKIM dla Twojej domeny.
Elementy DKIM
DKIM składa się z kilku współpracujących ze sobą części, z których każda ma swój własny szczegółowy przewodnik:
- Rekord DKIM — rekord DNS TXT, który publikuje Twój klucz publiczny i ustawienia DKIM, aby odbiorcy mogli znaleźć i zweryfikować podpisy.
- Selektor DKIM — krótka etykieta, która wskazuje odbiorcom, który klucz wyszukać, pozwalając na obsługę wielu kluczy (dla różnych dostawców lub rotacji kluczy) w jednej domenie.
- Podpis DKIM — nagłówek
DKIM-Signatureumieszczany w każdej wychodzącej wiadomości, zawierający domenę podpisującą, selektor oraz sam kryptograficzny skrót.
Zrozumienie, jak łączą się te trzy elementy, znacznie ułatwia resztę konfiguracji i rozwiązywania problemów z DKIM.
Jak skonfigurować DKIM
Konfiguracja DKIM to krótki, powtarzalny proces:
- Wygeneruj parę kluczy w konsoli swojego dostawcy poczty — klucz prywatny pozostaje u dostawcy, a Ty otrzymujesz klucz publiczny do opublikowania.
- Opublikuj klucz publiczny jako rekord TXT w DNS pod adresem
selector._domainkey.yourdomain.com. Zobacz jak wygenerować rekord DKIM, aby poznać dokładne kroki. - Włącz podpisywanie u swojego dostawcy, aby poczta wychodząca była oznaczana podpisem DKIM.
- Zweryfikuj, że wiadomości są podpisywane i przechodzą uwierzytelnianie, zanim zaczniesz na tym polegać.
W praktyce klucze DKIM są generowane wewnątrz konsoli Twojego dostawcy poczty — Google Workspace, Microsoft 365 lub Twojego ESP — a nie ręcznie, więc większość pracy polega na skopiowaniu udostępnionego rekordu do DNS.
Opublikowany rekord DKIM wygląda tak:
selector1._domainkey.example.com TXT "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDqF...GfMA0=; t=s"
Tutaj selector1 to selektor, v=DKIM1 oznacza, że jest to rekord DKIM, k=rsa nazywa typ klucza, a p= zawiera zakodowany w base64 klucz publiczny.
DKIM, SPF i DMARC razem
DKIM nie działa w izolacji. Uzupełnia SPF, które autoryzuje, które serwery mogą wysyłać pocztę w imieniu Twojej domeny. SPF sprawdza adres IP łączącego się serwera względem opublikowanej przez Ciebie listy; DKIM sprawdza kryptograficzny podpis samej wiadomości. Oba chronią różne rzeczy — źródło wysyłki kontra integralność wiadomości — i każde z nich może przejść lub zawieść niezależnie.
DMARC to warstwa zasad, która wiąże je z adresem, który faktycznie widzą odbiorcy. DMARC wymaga, aby pomyślny wynik SPF lub DKIM był zgodny (aligned) z widoczną domeną From:, a następnie wskazuje odbiorcom, co zrobić, gdy żaden z nich nie jest zgodny — dostarczyć, poddać kwarantannie lub odrzucić. Ta zgodność jest tym, co powstrzymuje atakujących przed przejściem uwierzytelniania na domenie, którą kontrolują, podczas gdy w polu From podszywają się pod Twoją.
| Standard | Co weryfikuje |
|---|---|
| SPF | Które serwery mogą wysyłać pocztę w imieniu Twojej domeny |
| DKIM | Wiadomość została podpisana przez Twoją domenę i nie została zmieniona |
| DMARC | SPF/DKIM są zgodne z widocznym adresem From oraz zasady postępowania przy niepowodzeniu |
Ponieważ zgodność DMARC może zależeć od SPF, utrzymywanie prawidłowej strony SPF ma znaczenie. AutoSPF automatycznie spłaszcza i utrzymuje Twój rekord SPF, aby pozostawał w limicie 10 wyszukiwań i wciąż przechodził uwierzytelnianie — co pomaga utrzymać ogólną kondycję zgodności DKIM i DMARC.
Częste problemy z DKIM
DKIM najczęściej przestaje działać z powodu brakującego lub obciętego rekordu DNS, niedopasowania selektora lub modyfikacji wiadomości w trakcie przesyłania przez usługę przekierowującą lub listę mailingową. Jeśli Twoje podpisy nie są weryfikowane, dlaczego DKIM zawodzi przeprowadza przez typowe przyczyny i rozwiązania. Aby potwierdzić, co dana domena publikuje w tej chwili, uruchom bezpłatne narzędzie do sprawdzania DKIM — pobiera ono rekord dla podanego selektora i pokazuje, czy klucz jest obecny i poprawnie sformułowany.
Najczęściej zadawane pytania
Czym jest DKIM?
DKIM (DomainKeys Identified Mail) to metoda uwierzytelniania poczty e-mail, która dodaje kryptograficzny podpis do wychodzących wiadomości. Twój serwer pocztowy podpisuje każdą wiadomość kluczem prywatnym, a serwery odbiorcze weryfikują ten podpis za pomocą klucza publicznego opublikowanego w Twoim DNS. Prawidłowy podpis dowodzi, że wiadomość pochodzi z Twojej domeny i nie została zmieniona w trakcie przesyłania.
Czy DKIM jest wymagane?
DKIM nie jest ściśle wymagane do wysyłania poczty, ale jest w praktyce oczekiwane. Główni dostawcy, tacy jak Google i Yahoo, wymagają teraz uwierzytelniania dla nadawców masowych, a DMARC potrzebuje pomyślnego, zgodnego wyniku DKIM (lub SPF), aby chronić Twoją domenę. Bez DKIM Twoja poczta jest znacznie bardziej narażona na odfiltrowanie jako spam lub podszywanie się przez atakujących.
Jaka jest różnica między DKIM, SPF i DMARC?
SPF autoryzuje, które serwery mogą wysyłać pocztę w imieniu Twojej domeny, DKIM kryptograficznie podpisuje każdą wiadomość, aby udowodnić, że pochodzi od Ciebie w niezmienionej postaci, a DMARC wiąże oba z widocznym adresem From i ustala zasady postępowania przy niepowodzeniach. SPF sprawdza źródło wysyłki, DKIM sprawdza integralność wiadomości, a DMARC egzekwuje zgodność między nimi.
Jak sprawdzić, czy DKIM jest poprawnie skonfigurowane?
Wyślij wiadomość testową na adres, który kontrolujesz, i sprawdź nagłówki pod kątem dkim=pass lub użyj narzędzia do sprawdzania DKIM, aby zapytać o opublikowany klucz według selektora. Narzędzie potwierdza, że rekord istnieje, jest poprawnie sformułowany i zwraca prawidłowy klucz publiczny. Nasze bezpłatne narzędzie do sprawdzania DKIM sprawdza dowolną domenę i selektor w kilka sekund.