UPDATED:
Zaktualizowano odnośniki do konfiguracji Exchange Online.
Kiedy już mamy skonfigurowany rekord SPF oraz DKIM (konfigurację DKIM dla Office365 opisywałem w poprzedniej notatce), możemy uzupełnić konfigurację ochronną o DMARC.
Domain-based Message-based Authentication, Reporting & Conformance (DMARC) to specyfikacja publiczna dostępna od 2012 roku, opisująca metodę walki z phishingiem. Polega to na wykorzystaniu zarówno informacji o serwerze wysyłającym pocztę opisanych w rekordzie SPF, jak i zweryfikowaniu certyfikatu serwera poprzez DKIM. Dodatkowo DMARC umożliwia przekazywanie odbiorcy wytycznych, co powinien zrobić z naszym mailem, kiedy nie może zweryfikować pozytywnie SPF lub DKIM.
Poniższy rysunek, znaleziony w serwisie ReturnPath, pokazuje zasadę działania polisy DMARC:
Poniższa tabela pokazuje wartości poszczególnych atrybutów:
Nie wszystkie atrybuty są niezbędne do poprawnego działania polisy, żeby utworzyć rekord, najprościej skorzystać z jednego z dostępnych w internecie kreatorów, np. https://www.unlocktheinbox.com/dmarcwizard. Jeżeli nie jesteśmy pewni, czy mamy poprawnie ustawione wartości SPF i DKIM, najlepiej zacząć od polisy none, będziemy wtedy dostawać raporty z informacją, jak traktują maile z naszej domeny inni. Jeżeli wszystko działa poprawnie, możemy zmienić polisę na quarantine, a nawet reject.
UWAGA: Nie wszystkie dostępne w internecie systemy DNS pozwalają na tworzenie rekordów zaczynających się od "_", więc warto to sprawdzić.
UPDATED: Korzystając z Exchange Online w ramach usług Office 365 możemy również używać DMARC, Dla poczty przychodzącej usługa Exchange Online Protection (EOP) automatycznie sprawdza nadawcę, jednak warto wiedzieć, że nawet gdy mamy ustawioną polisę na odrzucanie niezgodnych z DMARC maili (p=reject) to EOP obniża poziom ochrony i wrzuca taki mail do kwarantanny (zgodnie z polisą p=quarantine). W przypadku poczty wychodzącej, subdomeny onmicrosoft.com mają DMARC automatycznie włączony, w przypadku korzystania z własnej domeny pocztowej musimy najpierw upewnić się, że poprawnie skonfigurowaliśmy SPF i DKIM, a następnie możemy korzystać z dodatkowej ochrony. Warto jednak przed włączeniem polisy reject początkowo ustawić polisę na none i sprawdzać przez jakiś czas raporty, dostarczane na adresy pocztowe, zdefiniowane przez nas w tym celu (atrybuty ruf i rua policy). Warto również zapoznać się z dokumentacją Office 365, gdzie również znajdziemy nieco więcej informacji na temat najlepszych praktyk i rozwiązywania problemów.
Zaktualizowano odnośniki do konfiguracji Exchange Online.
Kiedy już mamy skonfigurowany rekord SPF oraz DKIM (konfigurację DKIM dla Office365 opisywałem w poprzedniej notatce), możemy uzupełnić konfigurację ochronną o DMARC.
Domain-based Message-based Authentication, Reporting & Conformance (DMARC) to specyfikacja publiczna dostępna od 2012 roku, opisująca metodę walki z phishingiem. Polega to na wykorzystaniu zarówno informacji o serwerze wysyłającym pocztę opisanych w rekordzie SPF, jak i zweryfikowaniu certyfikatu serwera poprzez DKIM. Dodatkowo DMARC umożliwia przekazywanie odbiorcy wytycznych, co powinien zrobić z naszym mailem, kiedy nie może zweryfikować pozytywnie SPF lub DKIM.
Poniższy rysunek, znaleziony w serwisie ReturnPath, pokazuje zasadę działania polisy DMARC:
Żeby DMARC dla naszej domeny zadziałał, musimy mieć zdefiniowany odpowiedni rekord w publicznym DNS. Oczywiście tu zaczynają się schody - jak go utworzyć, jakie informacje są obowiązkowe i jak opisać poszczególne wartości?
Składnia rekordu jest stosunkowo prosta i składa się z kilku niezbędnych informacji, jak w przykładzie:
_dmarc.yourdomain.com IN TXT "v=DMARC1; p=quarantine; pct=100; rua=mailto:emailaddress@yourdomain.com; ruf=mailto:emailaddress@yourdomain.com;"
Poniższa tabela pokazuje wartości poszczególnych atrybutów:
Wartość | Definicja | Przykładowa wartość |
v | Wersja protokołu DMARC | v=DMARC1 |
pct | % wiadomości do filtrowania | pct=100 |
ruf | adres do wysyłania maili niezgodnych z polisą | ruf=mailto:authfail@pepug.org |
rua rf ri | adres do wysyłania raportów od ISP format generowania raportu interwał generowania raportu (w sekundach) | rua=mailto:aggrep@pepug.org rf=afrf lub rf=iodef ri=86400 |
p | ustawienia polisy dla domeny | p=quarantine, p=reject lub p=none |
sp | ustawienia polisy dla subdomen | sp=reject |
adkim | Tryb Identifier Alignment dla DKIM | adkim=strict lub adkim=relaxed |
aspf | Tryb Identifier Alignment dla SPF | aspf=relaxed lub aspf=strict |
Nie wszystkie atrybuty są niezbędne do poprawnego działania polisy, żeby utworzyć rekord, najprościej skorzystać z jednego z dostępnych w internecie kreatorów, np. https://www.unlocktheinbox.com/dmarcwizard. Jeżeli nie jesteśmy pewni, czy mamy poprawnie ustawione wartości SPF i DKIM, najlepiej zacząć od polisy none, będziemy wtedy dostawać raporty z informacją, jak traktują maile z naszej domeny inni. Jeżeli wszystko działa poprawnie, możemy zmienić polisę na quarantine, a nawet reject.
UWAGA: Nie wszystkie dostępne w internecie systemy DNS pozwalają na tworzenie rekordów zaczynających się od "_", więc warto to sprawdzić.
UPDATED: Korzystając z Exchange Online w ramach usług Office 365 możemy również używać DMARC, Dla poczty przychodzącej usługa Exchange Online Protection (EOP) automatycznie sprawdza nadawcę, jednak warto wiedzieć, że nawet gdy mamy ustawioną polisę na odrzucanie niezgodnych z DMARC maili (p=reject) to EOP obniża poziom ochrony i wrzuca taki mail do kwarantanny (zgodnie z polisą p=quarantine). W przypadku poczty wychodzącej, subdomeny onmicrosoft.com mają DMARC automatycznie włączony, w przypadku korzystania z własnej domeny pocztowej musimy najpierw upewnić się, że poprawnie skonfigurowaliśmy SPF i DKIM, a następnie możemy korzystać z dodatkowej ochrony. Warto jednak przed włączeniem polisy reject początkowo ustawić polisę na none i sprawdzać przez jakiś czas raporty, dostarczane na adresy pocztowe, zdefiniowane przez nas w tym celu (atrybuty ruf i rua policy). Warto również zapoznać się z dokumentacją Office 365, gdzie również znajdziemy nieco więcej informacji na temat najlepszych praktyk i rozwiązywania problemów.