Skip to main content

Making it easier to manage DMARC reports

Project description

Making it easier to manage DMARC reports

Designed to quickly and easily import DMARC reports.

Quick start

  1. Install the app

  2. Add “dmarc” to your INSTALLED_APPS setting like this:

    INSTALLED_APPS = (
        ...
        'dmarc',
    )
  3. Run ‘python manage.py migrate’ to create the database models.

Usage

python manage.py importdmarcreport

You can choose to import an xml or zip file, alternatively with “-” you can pipe an email with the zipped report and it will do the right thing.

Description

This Django DMARC project aims to help with implementation of DMARC “Domain-based Message Authentication, Reporting & Conformance” and ongoing monitoring by importing feedback reports about messages that pass and/or fail DMARC evaluation into a more easily digested format.

Perhaps one of the main reasons DMARC is gaining traction amongst organisations of all sizes is a desire to protect their brand and reputation. By defining and implementing a DMARC policy, an organization can help combat phishing, protect users and their reputation.

Currently at beta stage, importing and data structure are fairly stable, reporting todo.

Choosing Django was an easy choice as it offers an easily built import mechanism and transformation from xml to database through to presentation.

Although it has options for importing either xml or zip files, the way it’s used here at Persistent Objects is taking the email directly from SMTP and piping it through to the import routine.

We use Exim here and the configuration couldn’t be easier

Router:

dmarcreports:
    driver = accept
    condition = ${if eq{$local_part}{dmarc_report}}
    transport = trans_dmarcreports

Transport:

trans_dmarcreports:
    driver = pipe
    command = "/usr/local/bin/python2.7 /path/to/manage.py importdmarcreport -"
    freeze_exec_fail = true
    return_fail_output = true

DMARC reporting

There is only the one report at dmarc/report/ and requires staff members authorization.

Add the dmarc.urls to your urls:

url(r"^", include("dmarc.urls")),

This is a sample report

Sample DMARC report

Dependencies

Resources

Support

To report a security issue, please send an email privately to ahicks@p-o.co.uk. This gives us a chance to fix the issue and create an official release prior to the issue being made public.

For general questions or comments, please contact ahicks@p-o.co.uk.

Project website

Communications are expected to conform to the Django Code of Conduct.

Project details


Download files

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

Source Distribution

django-dmarc-0.1.9.tar.gz (132.7 kB view details)

Uploaded Source

Built Distribution

django_dmarc-0.1.9-py2-none-any.whl (15.2 kB view details)

Uploaded Python 2

File details

Details for the file django-dmarc-0.1.9.tar.gz.

File metadata

File hashes

Hashes for django-dmarc-0.1.9.tar.gz
Algorithm Hash digest
SHA256 c5999f58ea8ec0887a86d5eeee109c1a4c449cf61965fe3d8ca9e8938dd7a341
MD5 bdc12f2f389578c54b5b66b2a0a35b8e
BLAKE2b-256 853287531d75f601288513ea7fc7cfc45ab0f58edcf8afac1c4f6f42bbc5f326

See more details on using hashes here.

File details

Details for the file django_dmarc-0.1.9-py2-none-any.whl.

File metadata

File hashes

Hashes for django_dmarc-0.1.9-py2-none-any.whl
Algorithm Hash digest
SHA256 bfe35d3c1dc65c814ce608c0e200bbf54d577d0765fd13c8229d6fdcd8506c02
MD5 c30f3105fbdf6981f4ac87a769dda030
BLAKE2b-256 74117dac7595aa3603c01d1995efbecdd6b94c10e4c799097c9e086fd5ebfa55

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page