..
Autogenerated by https://github.com/BarnabyShearer/meta
====================
email-report-checker
.. image:: https://readthedocs.org/projects/email-report-checker/badge/?version=latest
:target: https://email-report-checker.readthedocs.io/en/latest/
.. image:: https://img.shields.io/pypi/v/email-report-checker?color=success
:target: https://pypi.org/project/email-report-checker
RFC 7489 & 8460 SMTP Report Monitoring Utilities.
Install
.. code-block:: bash
python3 -m pip install email-report-checker
Note these are for my hobby domain, do not try running them on even moderate traffic MTAs
RFC 7489 Domain-based Message Authentication, Reporting, and Conformance (DMARC)
First ensure your DMARC DNS TXT record contains rua
and ruf
to request reports:
_dmarc.zi.is. 3600 IN TXT "v=DMARC1; p=reject; pct=100; ruf=mailto:b+dmarc@zi.is; rua=mailto:b+dmarc@zi.is; adkim=s; aspf=s"
Then load the reports via IMAP:
.. code-block:: bash
dmarc-report-checker m.zi.is b@zi.is Archive > dmarc.json
And report your statistics
.. code-block:: bash
jq '[ .[].record.row | select(.source_ip == "68.183.35.248") | select(.policy_evaluated.dkim == "pass") | .count | tonumber] | add' dmarc.json
jq '[ .[].record.row | select(.source_ip == "68.183.35.248") | select(.policy_evaluated.dkim == "fail") | .count | tonumber] | add' dmarc.json
RFC 8460 SMTP TLS Reporting
First create a DNS TXT record to request reports:
::
_smtp._tls.zi.is. 3600 IN TXT "v=TLSRPTv1;rua=mailto:b+tls@zi.is"
Then load the reports via IMAP:
.. code-block:: bash
tls-report-cheker m.zi.is b@zi.is Archive > tls.json
And report your statistics
.. code-block:: bash
jq '[.[] | [.policies[].summary["total-successful-session-count"]] | add] | add' tls.json
jq '[.[] | [.policies[].summary["total-failure-session-count"]] | add] | add' tls.json