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 :).

Metadata

Release files for DMARCReporting 0.3.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for DMARCReporting 0.3.1
File Size Uploaded
dmarcreporting-0.3.1.tar.gz 9.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for DMARCReporting 0.3.1
File Interpreter ABI Platform
dmarcreporting-0.3.1-py3-none-any.whl Python 3 none any Details

Total release size: 17.6 kB

Release files / dmarcreporting-0.3.1.tar.gz

Download URL dmarcreporting-0.3.1.tar.gz
Size 9.7 kB
Tags Source
SHA-256 checksum
How to use checksums
15e2db34df6daf4775d57e1ee319613294cef0154cd0ce25a5c73ee0fded0f76
BLAKE2b-256 checksum
How to use checksums
aa5c20c44f1f9a6dbd2b143b363374816c46a748870bfab0a9b04f4294f9318a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / dmarcreporting-0.3.1-py3-none-any.whl

Download URL dmarcreporting-0.3.1-py3-none-any.whl
Size 7.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5e89e3dae68c81c07e3cf7b05723f98eef2a39aaf2189ef4f56340c178dc73a2
BLAKE2b-256 checksum
How to use checksums
48b46bcf5c12fa22b85dd109094dc1764ce5b0cd1d8bfe0a094953f87ebd6f04
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

This release

0.3.1 This release

2 release files

0.3.0

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.1

2 release 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