Jak czytać nagłówki wiadomości e-mail i wykrywać problemy z dostarczaniem wiadomości?

Gdy e-mail nie dociera, trafia do spamu albo dostarcza się z kilkugodzinnym opóźnieniem, powinieneś sprawdzić nagłówki wiadomości. Nagłówki to metadane ukryte za wiadomością: kompletna historia jej drogi przez serwery SMTP, wyniki weryfikacji SPF, DKIM i DMARC, znaczniki czasowe każdego etapu dostarczania i informacje o tym, dlaczego wiadomość mogła zostać zakwalifikowana jako spam.

Czytanie nagłówków wiadomości e-mail to umiejętność, której nie trzeba opanowywać całościowo. Wystarczy wiedzieć, gdzie szukać i jak interpretować kilka kluczowych pól. Ten poradnik przeprowadza przez ten proces od podstaw.

Jak wyświetlić nagłówki wiadomości e-mail?

Każdy klient pocztowy ukrywa nagłówki domyślnie. Wyświetlane są tylko przyjazne pola: Od, Do, Temat, Data. Żeby zobaczyć pełne nagłówki:

Gmail

Otwórz wiadomość → kliknij trzy kropki (⋮) w prawym górnym rogu wiadomości → wybierz Pokaż oryginał. Nowa karta pokaże pełne nagłówki i źródło wiadomości. Gmail oferuje też przycisk Analizuj nagłówki prowadzący bezpośrednio do narzędzia Google do analizy nagłówków.

Outlook (Windows)

Otwórz wiadomość w osobnym oknie → zakładka Plik → Właściwości. Pole „Nagłówki internetowe" zawiera surowe nagłówki. Alternatywnie: otwórz wiadomość, przejdź do zakładki Plik i kliknij Właściwości.

Mozilla Thunderbird

Otwórz wiadomość → menu Widok → Nagłówki → Wszystkie lub kliknij Ctrl+U (Pokaż źródło).

Apple Mail

Otwórz wiadomość → menu Widok → Nagłówki wiadomości → Wszystkie.

Webmail (Roundcube)

Otwórz wiadomość → kliknij ikonę „i" (informacje) lub wybierz z menu Szczegóły → Nagłówki.

Jak zbudowane są nagłówki e-mail?

Nagłówki wiadomości e-mail to lista par klucz–wartość, każda w osobnej linii. Nagłówki są zapisywane w odwrotnej kolejności chronologicznej: najnowsze (dodane przez serwer odbiorcy) są na górze, najstarsze (od serwera nadawcy) na dole. Żeby prześledzić drogę wiadomości chronologicznie, czytaj od dołu do góry.

Przykładowy fragment surowych nagłówków:

Delivered-To: jan@firma-odbiorcy.pl
Received: from mail.firma-nadawcy.pl (mail.firma-nadawcy.pl [185.230.64.10])
        by mx.firma-odbiorcy.pl with ESMTPS id abc123
        for <jan@firma-odbiorcy.pl>;
        Mon, 10 Mar 2025 14:32:11 +0100 (CET)
Authentication-Results: mx.firma-odbiorcy.pl;
        dkim=pass header.i=@firma-nadawcy.pl header.s=mail header.b=AbCdEf12;
        spf=pass (firma-odbiorcy.pl: domain of kontakt@firma-nadawcy.pl designates
        185.230.64.10 as permitted sender) smtp.mailfrom=kontakt@firma-nadawcy.pl;
        dmarc=pass (p=reject sp=reject dis=none) header.from=firma-nadawcy.pl
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=firma-nadawcy.pl;
        s=mail; t=1741611131; bh=....; h=From:To:Subject:Date;
        b=AbCdEf12...
Received: from [192.168.1.1] by mail.firma-nadawcy.pl
        with ESMTP id xyz789;
        Mon, 10 Mar 2025 14:31:58 +0100 (CET)
From: Anna Kowalska <kontakt@firma-nadawcy.pl>
To: jan@firma-odbiorcy.pl
Subject: Oferta współpracy
Date: Mon, 10 Mar 2025 14:31:55 +0100
Message-ID: <unique-id@firma-nadawcy.pl>

Kluczowe pola nagłówków — co czytać i jak interpretować

Pole Received to historia drogi przez serwery

Każdy serwer SMTP, przez który przeszła wiadomość, dodaje własny nagłówek Received:. Czytając od dołu do góry, śledzisz chronologiczną trasę wiadomości: od klienta pocztowego nadawcy, przez serwer SMTP nadawcy, przez ewentualne serwery pośrednie, do serwera odbiorcy.

W każdym polu Received: szukaj:

  • from — skąd przyszła wiadomość (nazwa hosta i adres IP w nawiasie kwadratowym).
  • by — który serwer ją przyjął.
  • with — protokół i wersja (ESMTP, ESMTPS — „S" oznacza szyfrowanie TLS).
  • Znacznik czasu — kiedy serwer przyjął wiadomość.

Porównując znaczniki czasu między kolejnymi polami Received:, możesz znaleźć serwer, na którym wiadomość utknęła na długo, co wskazuje problem z wydajnością lub kolejką.

Pole Authentication-Results — wyniki weryfikacji SPF, DKIM, DMARC

To jedno z najważniejszych pól dla diagnostyki dostarczalności. Dodawane przez serwer odbiorcy, zawiera wyniki weryfikacji uwierzytelniania:

Authentication-Results: mx.gmail.com;
       dkim=pass header.i=@twojadomena.pl;
       spf=pass smtp.mailfrom=kontakt@twojadomena.pl;
       dmarc=pass (p=reject) header.from=twojadomena.pl

Możliwe wyniki dla każdego mechanizmu:

  • pass — weryfikacja przeszła pomyślnie. Idealny wynik.
  • fail — weryfikacja nie powiodła się. Wiadomość nie spełnia wymagań.
  • softfail — SPF softfail (~all) — serwer nadawcy nie jest na liście autoryzowanych, ale polityka mówi „nie odrzucaj".
  • neutral — SPF nie wyraża opinii o adresie IP nadawcy.
  • none — brak rekordu DNS dla danego mechanizmu weryfikacji.
  • temperror — tymczasowy błąd weryfikacji (np. timeout DNS).
  • permerror — trwały błąd konfiguracji (np. zbyt wiele zapytań DNS w SPF).

Wynik dmarc=fail przy spf=pass i dkim=pass zazwyczaj oznacza problem z wyrównaniem (alignment), domena w polu From: nie zgadza się z domeną weryfikowaną przez SPF lub DKIM.

Pole DKIM-Signature — podpis cyfrowy wiadomości

Zawiera kryptograficzny podpis wiadomości. Najważniejsze parametry:

  • d= — domena podpisującego (powinna zgadzać się z domeną w polu From:).
  • s= — selektor DKIM (używany do znalezienia klucza publicznego w DNS).
  • h= — lista nagłówków objętych podpisem.
  • bh= — hash treści wiadomości.
  • b= — właściwy podpis kryptograficzny.

Jeśli Authentication-Results pokazuje dkim=fail, ale pole DKIM-Signature istnieje, oznacza to modyfikację wiadomości po podpisaniu (np. przez serwer pośredni dodający disclaimer) lub błędną konfigurację klucza.

Pole Received-SPF — szczegółowy wynik SPF

Starszy odpowiednik informacji o SPF z pola Authentication-Results. Zawiera wynik weryfikacji SPF i wyjaśnienie:

Received-SPF: pass (twojadomena.pl: 185.230.64.10 is authorized to
    send mail for kontakt@twojadomena.pl) client-ip=185.230.64.10;

Pole X-Spam-Status / X-Spam-Score — wynik filtra antyspamowego

Serwery z SpamAssassin lub podobnymi filtrami dodają niestandardowe nagłówki X- z wynikiem analizy antyspamowej:

X-Spam-Status: No, score=1.8 required=5.0
X-Spam-Score: 1.8

Wynik poniżej progu (zazwyczaj 5.0) oznacza dostarczenie do skrzynki. Wynik powyżej, przeniesienie do spamu lub odrzucenie. Jeśli widzisz wysoki wynik, sprawdź szczegółowe reguły w polu X-Spam-Report, każda reguła jest wylistowana z wagą punktową.

Pole Message-ID — unikalny identyfikator wiadomości

Każda wiadomość ma unikalny identyfikator w formacie <ciąg@domena>. Przydatny przy kontakcie z supportem, podanie Message-ID pozwala szybko odnaleźć wiadomość w logach serwera. Domena w Message-ID powinna odpowiadać domenie nadawcy. Wiadomości generowane przez oprogramowanie spamowe często mają Message-ID z losową domeną lub bez domeny.

Narzędzia do analizy nagłówków

Ręczne czytanie surowych nagłówków jest możliwe, ale narzędzia znacznie przyspieszają diagnozę:

  • Google Admin Toolbox — Messageheader (toolbox.googleapps.com/apps/messageheader) — najlepsze narzędzie do wizualizacji drogi wiadomości przez serwery. Wklej nagłówki i otrzymujesz graficzną oś czasu z każdym serwerm i opóźnieniami.
  • MXToolbox Email Header Analyzer (mxtoolbox.com/EmailHeaders) — analizuje nagłówki i wyróżnia potencjalne problemy z dostarczalnością.
  • mail-tester.com — wyślij testową wiadomość i otrzymaj szczegółowy raport o nagłówkach, wynikach uwierzytelniania i potencjalnych problemach.
  • DKIM Verifier — wtyczka dla Thunderbirda wyświetlająca wyniki DKIM bezpośrednio przy wiadomości w kliencie pocztowym.

Praktyczny schemat diagnostyki przez nagłówki

Problem: wiadomość trafia do spamu

  1. Sprawdź Authentication-Results — czy SPF, DKIM i DMARC pokazują pass? Jeśli nie — to prawdopodobna przyczyna.
  2. Sprawdź X-Spam-Score i X-Spam-Report — które reguły podwyższają wynik spamowy?
  3. Sprawdź pole Received: od dołu — czy wiadomość przeszła przez nieoczekiwane serwery pośrednie (np. serwer marketingowy, który modyfikował treść i uszkodził podpis DKIM)?

Problem: wiadomość dotarła z kilkugodzinnym opóźnieniem

  1. Porównaj znaczniki czasu w kolejnych polach Received: — między którymi serwerami jest największa różnica czasu?
  2. Opóźnienie na pierwszym serwerze nadawcy sugeruje problem z kolejką SMTP (przeciążony serwer, problemy z DNS, greylisting po stronie odbiorcy).
  3. Opóźnienie między serwerem pośrednim a serwerem odbiorcy sugeruje greylisting lub tymczasowe odrzucenie (soft bounce) przez serwer odbiorcy.

Problem: wiadomość w ogóle nie dotarła

  1. Sprawdź logi SMTP na serwerze nadawcy — czy wiadomość wyszła? Jakie kody błędów zwróciły serwery po drodze?
  2. Sprawdź, czy dostałeś wiadomość NDR (Non-Delivery Report) — zawiera kod błędu SMTP wyjaśniający przyczynę.
  3. Sprawdź MX odbiorcy przez dig twojadomena-odbiorcy.pl MX — czy rekordy MX istnieją i serwery odpowiadają?

Pełna diagnoza problemów z pocztą przez analizę nagłówków wiadomości email jest częścią audytu infrastruktury pocztowej w ramach profesjonalnej opieki WordPress. Bezpieczny hosting z dostępem do logów SMTP w panelu klienta pozwala samodzielnie śledzić błędy dostarczania bez konieczności logowania się przez SSH. Kompletna konfiguracja poczty biznesowej z poprawnym SPF, DKIM, DMARC i PTR, sprawia, że pole Authentication-Results w nagłówkach wiadomości zawsze pokazuje pass dla wszystkich mechanizmów. Szczegóły infrastruktury serwerów pocztowych cal.pl, w tym polityki bezpieczeństwa i konfiguracja uwierzytelniania, opisane są w sekcji infrastruktura. Certyfikat SSL dla serwera pocztowego jest warunkiem koniecznym dla szyfrowania ESMTPS widocznego w nagłówkach Received:, bez niego połączenie między serwerami jest nieszyfrowane, co jest widoczne w nagłówkach i obniża ocenę wiarygodności wiadomości.

Podsumowanie

Nagłówki e-mail to kompletna dokumentacja drogi wiadomości od nadawcy do odbiorcy. Kluczowe pola do analizy to: Authentication-Results (wyniki SPF, DKIM, DMARC), Received: (trasa i czas dostarczenia) oraz X-Spam-Score (wynik filtra antyspamowego). Czytaj nagłówki od dołu do góry, gdyż najstarsze wpisy są na dole. Do szybkiej analizy używaj narzędzi online, szczególnie Google Messageheader Analyzer, co eliminuje potrzebę ręcznego parsowania surowego tekstu i wizualizuje trasę wiadomości na czytelnej osi czasu.