LinkedInAttic / dmarc-msys

This set of scripts in Lua implements DMARC policy checking and reporting for the Message Systems MTA products, a popular extendable commercial MTA.
36 stars 3 forks source link

DMARC-msys

This set of scripts in Lua implements DMARC policy checking and reporting for the Message Systems MTA products, a popular extendable commercial MTA.

They need to be added on momentum-receiving version of the product.

DMARC, allows to authenticate a message using DKIM and SPF and project a policy for the receiving MTA to apply.

This Lua implementation, process receiving emails, identify the author domain from the From: header look if the domain has published a DMARC policy and apply this policy to the email.

It logs the information using momentum log facilities so that daily reports can be sent back to the author domain.

full description of the spec: www.dmarc.org

How to install

This requires momentum-receiving from Message Systems.

dmarc.lua >= 1.21 requires momentum-receiving >=3.6

Follow instructions in the comments at the beginning of the lua script.

Download the Public Suffix list from http://publicsuffix.org/ and convert it to punycode using psl2pc.py and place it in: /opt/msys/ecelerity/etc/conf/default/lua/pslpuny.txt or update the loadpsl() function

Install dmarc_report.py on the manager with a daily cron job to process dmarc logs and send aggregate reports

Edit the variable imailfrom

It is recommended to send reports from dedicated separate IPs.