Czym jest DMARC?
DMARC (Domain-based Message Authentication, Reporting & Conformance) to protokół uwierzytelniania poczty elektronicznej, który sprawdza, czy domena uwierzytelniona za pomocą SPF lub DKIM jest zgodna z domeną w polu From wiadomości. Właściciel domeny może opublikować żądany sposób postępowania wobec wiadomości, które nie przejdą walidacji DMARC, oraz zażądać zbiorczych raportów lub raportów o niepowodzeniach dotyczących poszczególnych wiadomości.
Dlaczego DMARC jest niezbędny
SPF i DKIM uwierzytelniają identyfikatory nadawcy. Same w sobie nie sprawdzają, czy uwierzytelniony identyfikator jest zgodny z domeną w polu From, ani nie określają preferowanego przez właściciela domeny sposobu postępowania z wiadomościami, które nie przeszły walidacji.
DMARC rozwiązuje ten problem, ponieważ:
- Określa preferowany sposób postępowania: None, quarantine lub reject dla wiadomości, które nie przejdą DMARC
- Sprawdza wyrównanie: co najmniej jeden uwierzytelniony identyfikator SPF lub DKIM musi być zgodny z domeną From
- Żąda raportów: zbiorcze raporty i raporty dotyczące konkretnych niepowodzeń pokazują obserwowane wyniki uwierzytelniania
Jak działa DMARC
1. Nadawca publikuje politykę DMARC w DNS (rekord TXT pod adresem _dmarc.domain.com)
2. Wiadomość e-mail zostaje wysłana z From: [email protected]
3. Odbiorca sprawdza SPF i DKIM
4. Odbiorca sprawdza wyrównanie: Czy uwierzytelniona domena jest zgodna z nagłówkiem From?
5. Decyzja dotycząca postępowania: odbiorca uwzględnia żądaną politykę i inne sygnały
6. Raporty mogą zostać wysłane: uczestniczący odbiorcy mogą wysłać żądane zbiorcze raporty lub raporty dotyczące konkretnych wiadomości
Wyrównanie DMARC
DMARC wymaga wyrównania: domena w nagłówku From musi być zgodna z co najmniej jednym uwierzytelnionym identyfikatorem, zgodnie z trybem relaxed lub strict określonym w rekordzie:
- Wyrównanie SPF: domena MAIL FROM zweryfikowana przez SPF lub domena HELO, gdy MAIL FROM jest pusta
- Wyrównanie DKIM: domena d= w prawidłowym podpisie DKIM
Bez wyrównania SPF lub DKIM mogą przejść pomyślnie, a DMARC zakończyć się niepowodzeniem. DMARC bezpośrednio odnosi się do określonych form spoofingu wykorzystujących dokładną domenę From. Nie wykrywa wizualnie podobnych domen ani nadużycia nazwy wyświetlanej nadawcy.
Format rekordu DMARC
Rekordy DMARC są rekordami TXT pod adresem _dmarc.yourdomain.com:
_dmarc.example.com. IN TXT "v=DMARC1; p=reject; rua=mailto:[email protected]"
Tagi DMARC
| Tag | Wymagany | Opis | Przykład |
|---|---|---|---|
| v | Tak | Wersja | v=DMARC1 |
| p | Zalecany (opcjonalny) | Żądany sposób postępowania z pocztą, która nie przejdzie walidacji DMARC | p=none/quarantine/reject |
| rua | Nie | URI raportu zbiorczego | rua=mailto:[email protected] |
| ruf | Nie | URI raportu o niepowodzeniu dotyczącym konkretnej wiadomości | ruf=mailto:[email protected] |
| t | Nie | Tryb testowania polityki | t=y lub t=n |
| sp | Nie | Żądana polityka dla istniejących poddomen | sp=reject |
| np | Nie | Żądana polityka dla nieistniejących poddomen | np=reject |
| adkim | Nie | Tryb wyrównania DKIM | adkim=s (strict) lub adkim=r (relaxed) |
| aspf | Nie | Tryb wyrównania SPF | aspf=s lub aspf=r |
Tag pct ma znaczenie historyczne. Obecny standard DMARC nie używa go już do stosowania polityki wobec określonego odsetka wiadomości, które nie przejdą kontroli. Tag p jest zalecany, ale opcjonalny; prawidłowy rekord, w którym go nie ma, jest traktowany jak p=none.
Polityki DMARC
p=none: Wyraża brak preferencji dotyczącej sposobu postępowania z wiadomościami, które nie przejdą kontroli. Właściciele domen często używają tej wartości podczas analizowania raportów.v=DMARC1; p=none; rua=mailto:[email protected]
p=quarantine: Żąda, aby odbiorcy traktowali wiadomości, które nie przejdą DMARC, jako podejrzane.
v=DMARC1; p=quarantine; rua=mailto:[email protected]
p=reject: Żąda, aby odbiorcy odrzucali wiadomości, które nie przejdą DMARC. Odbiorcy uwzględniają tę preferencję wraz z innymi sygnałami, więc nie gwarantuje ona odrzucenia.
v=DMARC1; p=reject; rua=mailto:[email protected]
Ścieżka wdrażania DMARC
Etap 1: Monitorowanie (p=none)
Zacznij od monitorowania, aby poznać ekosystem swojej poczty e-mail:
v=DMARC1; p=none; rua=mailto:[email protected]
Przeanalizuj raporty, aby zidentyfikować:
- Uprawnione usługi wysyłające, którym brakuje SPF/DKIM
- Nieautoryzowanych nadawców (spoofing)
- Problemy z wyrównaniem
Etap 2: Kwarantanna (p=quarantine)
Gdy uprawnione źródła zostaną uwierzytelnione:
v=DMARC1; p=quarantine; rua=mailto:[email protected]
Przejrzyj raporty i potwierdź, że prawidłowe wiadomości e-mail są uwierzytelnione, zanim wybierzesz bardziej restrykcyjną politykę. Obecny standard DMARC nie definiuje wdrożenia etapowego według procentów.
Etap 3: Odrzucenie (p=reject)
Zażądaj odrzucania wiadomości, które nie przejdą DMARC:
v=DMARC1; p=reject; rua=mailto:[email protected]
Raporty DMARC
Raporty zbiorcze (rua)
Zaleca się, aby odbiorcy wysyłali zbiorcze raporty XML codziennie lub częściej. Raporty podsumowują zaobserwowane strumienie wiadomości, więc ich dostępność i zakres zależą od odbiorców wysyłających raporty:
- Liczba wiadomości e-mail
- Współczynniki powodzeń i niepowodzeń SPF, DKIM i DMARC
- Adresy IP nadawców
- Organizacje odbiorców
Raporty o niepowodzeniach (ruf)
Raporty dotyczące konkretnych wiadomości mogą zawierać nagłówki lub treść wiadomości. Nie wszyscy odbiorcy je wysyłają, często ze względów prywatności:
- Szczegółowe informacje o niepowodzeniu uwierzytelniania
Przetwarzanie raportów
Zbiorcze raporty DMARC są w formacie XML i mogą być trudne do odczytania. Skorzystaj z usług takich jak:
- DMARC Analyzer
- Dmarcian
- Valimail
- Postmark DMARC
Sprawdzanie DMARC
Dostęp do uwierzytelnionego API DomScan Email Authentication kosztuje 3 kredyty za domenę i zwraca rekord DMARC oraz przeanalizowane tagi.
dig _dmarc.example.com TXT
curl -H "X-API-Key: $DOMSCAN_API_KEY" "https://domscan.net/v1/email-auth?domain=example.com"
# Sprawdź dmarc.record i dmarc.tags w odpowiedzi JSON
Typowe problemy z DMARC
Nie otrzymujesz raportów: Upewnij się, że adres rua może odbierać duże wiadomości e-mail; niektórzy dostawcy je filtrują. Prawidłowa poczta nie przechodzi kontroli: Sprawdź konfigurację SPF/DKIM dla wszystkich usług wysyłających; zweryfikuj wyrównanie. Niepowodzenia uwierzytelniania w usługach zewnętrznych: Wiele usług wymaga niestandardowej konfiguracji DKIM, aby zapewnić wyrównanie DMARC.DMARC dodaje do SPF i DKIM wyrównanie, żądaną preferencję dotyczącą sposobu postępowania oraz raportowanie. Przeanalizuj źródła wysyłania i raporty przed zażądaniem bardziej restrykcyjnego postępowania.