Skip to main content

DMARCReporting Build Status

This is a simple tool that displays the errors from a bunch of DMARC reports. It's meant to simplify the job of figuring out DMARC errors.

This is very much a work in progress, use only for tests! Feedback and pull requests are welcome.

Install

pip install DMARCReporting

How to use

  • Download all zipped DMARC reports to a samples folder

  • Execute:

    DMARCReporting /path/to/reports
    

The tool processes the files one by one:

  • unarchives the file on the fly
  • parses the DMARC report
  • if any DMARC rejection or quarantine or a failing SPF and/or DKIM authentication and/or alignment happens, a report is displayed on the console together with the DMARC report file name.

An example report looks as follows:

report.xml.gz
Source IP      Source Host                     Payload From (From:)    Envelop From (MAIL FROM)    DMARC    DKIM Align    DKIM Auth    SPF Align    SPF Auth    File
-------------  ------------------------------  ----------------------  --------------------------  -------  ------------  -----------  -----------  ----------  ------
80.96.161.193  Unknown host                    bellous.com             bellous.com                 none     pass          pass         fail         fail        report.xml.gz
208.90.221.45  208-90-221-45.static.flhsi.com  bellous.com             calendar.yambo.com          none     pass          pass         fail         pass        report.xml.gz
80.96.161.193  Unknown host                    disicious.com           disicious.com               none     pass          pass         fail         fail        report.xml.zip
208.90.221.45  208-90-221-45.static.flhsi.com  disicious.com           calendar.trumbee.com        none     pass          pass         fail         pass        report.xml.zip

Run tests

make install-dev
make test

Development Notes

This tool was started by Alex Bolboaca, with a clear goal: allow easier processing DMARC reports received by email. Alternate tools exist, but they are meant for enterprises, meaning they are either expensive or use a lot of infrastructure.

The main goal is to see a report of email failures to allow investigation. Therefore, this tool should be minimalistic, extracting the minimum necessary information and requiring a minimum infrastructure.

While it's possible to deploy it as a cloud function through a later development of a Docker container, it should also allow running it locally after obtaining the DMARC zipped reports in some way.

The current version has been developed mostly by Thierry de Pauw, so all thanks should go to him :).

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dmarcreporting-0.3.1.tar.gz (9.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dmarcreporting-0.3.1-py3-none-any.whl (7.9 kB view details)

Uploaded Python 3

File details

Details for the file dmarcreporting-0.3.1.tar.gz.

File metadata

  • Download URL: dmarcreporting-0.3.1.tar.gz
  • Upload date:
  • Size: 9.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for dmarcreporting-0.3.1.tar.gz
Algorithm Hash digest
SHA256 15e2db34df6daf4775d57e1ee319613294cef0154cd0ce25a5c73ee0fded0f76
MD5 df28b1b7e96e8a1fb64f6f378ff2363b
BLAKE2b-256 aa5c20c44f1f9a6dbd2b143b363374816c46a748870bfab0a9b04f4294f9318a

See more details on using hashes here.

File details

Details for the file dmarcreporting-0.3.1-py3-none-any.whl.

File metadata

  • Download URL: dmarcreporting-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 7.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for dmarcreporting-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5e89e3dae68c81c07e3cf7b05723f98eef2a39aaf2189ef4f56340c178dc73a2
MD5 70f400cf7cfebbbb0be8b94321c5d2c9
BLAKE2b-256 48b46bcf5c12fa22b85dd109094dc1764ce5b0cd1d8bfe0a094953f87ebd6f04

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.3.1 This release

2 files

0.3.0

2 files

0.2.1

2 files

0.2.0

2 files

0.1.1

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page