Każdego dnia cyberprzestępcy wysyłają miliony wiadomości, podszywając się pod zaufane domeny firmowe. Jeśli nie masz skonfigurowanego DMARC, Twoja domena może być używana do phishingu — bez Twojej wiedzy i bez żadnej blokady. Ten poradnik przeprowadzi Cię przez cały proces: od pierwszego rekordu DNS, przez dobór właściwej polityki, aż po odczytanie raportów XML, które powiedzą Ci, co naprawdę dzieje się z Twoją pocztą.
Czym jest DMARC i dlaczego to nie jest opcja
DMARC (Domain-based Message Authentication, Reporting and Conformance) to protokół uwierzytelniania poczty elektronicznej opisany w RFC 7489. Działa jako warstwa nadzoru nad SPF i DKIM — informuje serwery odbierające, co zrobić z wiadomością, która nie przejdzie weryfikacji: przepuścić ją, przenieść do spamu lub odrzucić.
Od lutego 2024 roku Google i Yahoo wymagają aktywnego rekordu DMARC dla nadawców wysyłających ponad 5 000 wiadomości dziennie. Dla mniejszych firm brak DMARC to ryzyko reputacyjne i deliverability — filtry antyspamowe coraz częściej faworyzują domeny z kompletnym zestawem SPF + DKIM + DMARC.
DMARC rozwiązuje jeden konkretny problem: spoofing domeny. Bez niego każdy może wpisać Twój adres w polu „From" i wysłać e-mail wyglądający jak Twój.
Warunki wstępne: SPF i DKIM muszą działać
DMARC nie działa samodzielnie — opiera się na wynikach SPF i DKIM. Zanim dodasz rekord DMARC, upewnij się, że oba protokoły są poprawnie skonfigurowane i przechodzą tzw. alignment (wyrównanie domeny).
Wyrównanie SPF
SPF sprawdza, czy serwer wysyłający jest na liście autoryzowanych adresów IP dla domeny z nagłówka Return-Path. Alignment oznacza, że domena w Return-Path musi pasować do domeny w nagłówku From — w trybie relaxed wystarczy zgodność domeny głównej (np. mail.example.com = example.com), w trybie strict musi być identyczna.
Wyrównanie DKIM
DKIM podpisuje wiadomość kluczem prywatnym. Serwer odbierający weryfikuje podpis kluczem publicznym opublikowanym w DNS. Alignment DKIM wymaga, by domena w tagu d= podpisu DKIM zgadzała się z domeną w nagłówku From.
Minimum do przejścia weryfikacji DMARC: wiadomość musi zdać SPF z wyrównaniem lub DKIM z wyrównaniem. Nie musi zdać obu jednocześnie.
Tworzenie rekordu DMARC — składnia krok po kroku
Rekord DMARC to rekord TXT w DNS, dodawany dla subdomeny _dmarc.twojadomena.pl. Poniżej kompletna składnia z opisem każdego tagu.
Minimalna wersja startowa
Nazwa: _dmarc.twojadomena.pl
Typ: TXT
Wartość: v=DMARC1; p=none; rua=mailto:dmarc-raporty@twojadomena.pl
Ten rekord nie blokuje żadnych wiadomości, ale zaczyna zbierać raporty zbiorcze (rua). To bezpieczny punkt startowy dla każdej domeny.
Tabela tagów DMARC
| Tag | Obowiązkowy | Opis | Przykład |
|---|---|---|---|
| v | Tak | Wersja protokołu — zawsze DMARC1 | v=DMARC1 |
| p | Tak | Polityka dla domeny głównej | p=none / quarantine / reject |
| sp | Nie | Polityka dla subdomen (domyślnie dziedziczy p) | sp=quarantine |
| rua | Nie* | Adres do raportów zbiorczych (Aggregate) | rua=mailto:dmarc@firma.pl |
| ruf | Nie | Adres do raportów forensycznych (Failure) | ruf=mailto:dmarc-fail@firma.pl |
| pct | Nie | Procent wiadomości objętych polityką (1–100) | pct=10 |
| adkim | Nie | Tryb wyrównania DKIM: r=relaxed, s=strict | adkim=r |
| aspf | Nie | Tryb wyrównania SPF: r=relaxed, s=strict | aspf=r |
| fo | Nie | Warunek generowania raportów forensycznych | fo=1 |
* Rekord bez rua jest technicznie poprawny, ale bezużyteczny — nie wiesz wtedy, co się dzieje z Twoją pocztą.
Trzy etapy wdrożenia polityki DMARC
Błędem jest skakanie od razu do p=reject. Pochopna blokada może odrzucić legalne wiadomości wysyłane przez Twoje systemy (CRM, bramki płatności, narzędzia do mailingu). Wdrożenie powinno przebiegać w trzech etapach.
Etap 1: Obserwacja (p=none)
Ustaw politykę p=none i zbieraj raporty przez minimum 2–4 tygodnie. W tym czasie żadna wiadomość nie jest blokowana — serwery odbierające tylko raportują wyniki weryfikacji. Analizuj, które źródła wysyłają e-maile w imieniu Twojej domeny i czy przechodzą SPF/DKIM.
v=DMARC1; p=none; rua=mailto:dmarc@twojadomena.pl; ruf=mailto:dmarc-fail@twojadomena.pl; fo=1
Etap 2: Kwarantanna (p=quarantine)
Gdy masz pewność, że wszystkie legalne strumienie poczty przechodzą weryfikację, przejdź do p=quarantine. Wiadomości nieuwierzytelnione trafiają do folderu spam/junk odbiorcy — nie są odrzucane, więc masz jeszcze możliwość korekty. Użyj tagu pct, by zacząć od małego procentu:
v=DMARC1; p=quarantine; pct=10; rua=mailto:dmarc@twojadomena.pl
Stopniowo zwiększaj pct: 10% → 25% → 50% → 100%, obserwując raporty po każdej zmianie.
Etap 3: Odrzucenie (p=reject)
Docelowa polityka DMARC dla każdej domeny. Serwery odbierające odrzucają wiadomości, które nie przeszły uwierzytelnienia — nie trafiają ani do skrzynki, ani do spamu. To skutecznie eliminuje spoofing Twojej domeny.
v=DMARC1; p=reject; rua=mailto:dmarc@twojadomena.pl; adkim=r; aspf=r
Na tym etapie tag pct możesz pominąć — domyślna wartość to 100.
Jak czytać raporty DMARC XML
Raporty zbiorcze (Aggregate, rua) są wysyłane raz dziennie przez serwery odbierające jako spakowany plik ZIP lub GZIP zawierający XML. Jeden plik = jeden dostawca poczty (np. Google, Microsoft, Yahoo) za jeden dzień.
Struktura pliku XML
Każdy raport XML zawiera dwa główne bloki:
- <report_metadata> — kto wysłał raport, za jaki okres, identyfikator raportu
- <record> — jeden rekord = jeden strumień wiadomości (IP źródłowe + wyniki weryfikacji)
Kluczowe pola w bloku <record>:
| Pole XML | Co oznacza |
|---|---|
<source_ip> |
Adres IP serwera, który wysłał wiadomości |
<count> |
Liczba wiadomości z tego IP w danym dniu |
<disposition> |
Działanie podjęte: none / quarantine / reject |
<dkim> (w policy_evaluated) |
Wynik wyrównania DKIM: pass / fail |
<spf> (w policy_evaluated) |
Wynik wyrównania SPF: pass / fail |
<header_from> |
Domena z nagłówka From weryfikowanej wiadomości |
Przykładowy fragment XML i jego interpretacja
<record>
<row>
<source_ip>198.51.100.42</source_ip>
<count>1523</count>
<policy_evaluated>
<disposition>none</disposition>
<dkim>pass</dkim>
<spf>fail</spf>
</policy_evaluated>
</row>
</record>
Co to znaczy? Serwer o IP 198.51.100.42 wysłał 1523 wiadomości. DKIM przeszedł (wyrównanie OK), SPF nie przeszedł — ale ponieważ DMARC wymaga zdania co najmniej jednego, wiadomości zostały przepuszczone (disposition=none). Sprawdź jednak, dlaczego SPF nie przechodzi — być może brakuje IP w rekordzie SPF lub używasz zewnętrznego narzędzia bez właściwego include:.
Na co zwracać uwagę w raportach
- Nieznane IP z dużą liczbą wiadomości — potencjalny spoofing lub niezidentyfikowany system wysyłkowy
- Znane IP z wynikiem fail/fail — problem z konfiguracją SPF lub DKIM dla tego źródła
- disposition=reject przy p=none — niemożliwe; jeśli widzisz, raport pochodzi z serwera z własną polityką
- Duży ruch z IP dostawcy mailingu — upewnij się, że jest w SPF i podpisuje DKIM Twoją domeną
Narzędzia do analizy raportów XML
Ręczne czytanie XML jest możliwe, ale żmudne. Istnieje kilka bezpłatnych i płatnych narzędzi, które parsują raporty i prezentują je w czytelnym dashboardzie:
- DMARC Analyzer — płatne, z darmowym trielem; czytelne wykresy i alerty
- dmarcian — popularne w środowisku enterprise, ma plan darmowy dla małych wolumenów
- Postmark DMARC — bezpłatna usługa parsowania raportów, dobra na start
- Google Postmaster Tools — jeśli wysyłasz głównie na Gmail, daje dodatkowy wgląd w reputację domeny
Jeśli korzystasz z MailerPRO do wysyłki kampanii przez własne skrzynki SMTP, skonfigurowanie DMARC dla Twojej domeny nadawczej jest szczególnie ważne — każda kampania wzmacnia lub osłabia reputację tej domeny, a raporty DMARC pokażą Ci dokładnie, które serwery wysyłają w jej imieniu.
Najczęstsze błędy przy wdrożeniu DMARC
1. Brak rekordu dla subdomen wysyłkowych
Jeśli wysyłasz z newsletter@wysylka.twojadomena.pl, ta subdomena potrzebuje własnego SPF i DKIM. DMARC domeny głównej obejmuje subdomeny tylko przez tag sp= — ale alignment i tak musi przejść na poziomie subdomeny.
2. Zbyt wiele mechanizmów w SPF (limit 10 lookup)
Rekord SPF może zawierać maksymalnie 10 mechanizmów wymagających zapytania DNS (include, a, mx, ptr, exists). Przekroczenie limitu powoduje błąd permerror i traktowane jest jak fail. Regularnie audytuj rekord SPF i usuwaj nieużywane include:.
3. Skakanie od razu do p=reject
Bez fazy obserwacji ryzykujesz zablokowanie wiadomości z systemów, o których zapomniałeś: automatycznych powiadomień z hostingu, faktur z ERP, potwierdzeń z bramki płatności. Zawsze zacznij od p=none i analizuj raporty.
4. Ignorowanie raportów forensycznych (ruf)
Raporty ruf zawierają próbki wiadomości, które nie przeszły weryfikacji — to bezcenne dane diagnostyczne. Pamiętaj jednak, że mogą zawierać dane osobowe (treść wiadomości, adresy e-mail), co rodzi obowiązki na gruncie RODO (art. 5 ust. 1 lit. f — integralność i poufność). Przechowuj je bezpiecznie i nie dłużej niż to konieczne.
5. Brak monitorowania po przejściu na p=reject
Wdrożenie DMARC to nie jednorazowa akcja. Nowe systemy wysyłkowe, zmiany dostawców, nowe subdomeny — każda zmiana może zepsuć alignment. Ustaw alert na wzrost wyników fail w raportach zbiorczych.
DMARC a zgodność z przepisami
DMARC nie jest wprost wymieniony w RODO, ale jego brak może być argumentem przeciwko Tobie w przypadku incydentu phishingowego z użyciem Twojej domeny. Organ nadzorczy (UODO) ocenia środki techniczne i organizacyjne na podstawie art. 32 RODO — brak podstawowych zabezpieczeń poczty elektronicznej może być uznany za niewystarczające wdrożenie zasady integralności i poufności.
Dyrektywa NIS2 (implementowana w Polsce jako ustawa o cyberbezpieczeństwie) nakłada na podmioty kluczowe i ważne obowiązek stosowania uwierzytelniania wieloskładnikowego i szyfrowania — DMARC wpisuje się w szerszy kontekst higieny bezpieczeństwa poczty elektronicznej wymagany od organizacji objętych NIS2.
Kompletny przykład rekordu produkcyjnego
Po zakończeniu wszystkich etapów wdrożenia Twój rekord DMARC powinien wyglądać mniej więcej tak:
v=DMARC1; p=reject; sp=reject; adkim=r; aspf=r; rua=mailto:dmarc-rua@twojadomena.pl; ruf=mailto:dmarc-ruf@twojadomena.pl; fo=1
p=reject— odrzucaj nieuwierzytelnione wiadomości dla domeny głównejsp=reject— ta sama polityka dla subdomenadkim=r; aspf=r— tryb relaxed (zalecany dla większości firm)ruairuf— adresy do raportów zbiorczych i forensycznychfo=1— generuj raport forensyczny, gdy którykolwiek mechanizm (SPF lub DKIM) zawiedzie
Wdrożenie DMARC to jeden z niewielu kroków w bezpieczeństwie poczty, który daje natychmiastowy, mierzalny efekt: po przejściu na p=reject spoofing Twojej domeny staje się praktycznie niemożliwy dla serwerów obsługujących raporty DMARC. Zacznij dziś od dodania rekordu z p=none, skieruj raporty na dedykowaną skrzynkę i wróć do nich za dwa tygodnie — dane, które znajdziesz, mogą Cię zaskoczyć. Jeśli wysyłasz kampanie e-mail przez własne serwery SMTP, prawidłowa konfiguracja DMARC to też inwestycja w dostarczalność: filtry antyspamowe nagradzają domeny z kompletnym uwierzytelnieniem wyższym zaufaniem i lepszym placement w skrzynce odbiorczej.
📨 Wypróbuj Mailer PRO
Wysyłaj mailing z własnych skrzynek SMTP — bez prowizji od liczby maili. Zachowujesz pełną kontrolę nad reputacją domeny.
Zobacz cennik Jak to działa


