dmarc-report-converter を導入してみた

iredmailのメールサーバに、dmarc-report-converter を導入してWebでDMARCレポートを確認できるようにした。

導入

基本的には書いてある通りに実行

githubのreleaseから dmarc-report-converter_v0.8.1-20240617_x86_64.tar.gz をダウンロード

/opt以下に展開(/opt/dmarc-report-converter)

/opt/dmarc-report-converter/config.yaml を編集し設定

config.yaml への設定ポイント

今回はiredmailメールサーバに直接配置するので、 入力フォルダは /var/vmail/vmail1/ドメイン名 の下にあるユーザフォルダ内のDMARCレポートが入るところを指定します

input:
delete: no
dir: “/var/vmail/vmail1/ドメイン名/d/m/a/dmarc-reports/Maildir/cur/

出力先は /var/www/dmarc としますので、まずはディレクトリを作成し、必要なファイルをコピします

# mkdir /var/www/dmarc
# cp -r /opt/dmarc-report-converter/assets /var/www/dmarc
#
output:
 file: "/var/www/dmarc/{{ .ReportMetadata.Email }}/{{ .PolicyPublished.Domain }}!{{.ReportMetadata.DateRange.Begin}}!{{ .ReportMetadata.ReportID }}.html"
 format: "html_static"
 assets_path: "/dmarc/assets"

nginxへの設定は /etc/nginx/templates/dmarc.tmpl を作成し、部外者に見られないようにパスワードをかけておきます

location /dmarc/ {
    root /var/www/;
    autoindex           on;
    autoindex_localtime on;

    auth_basic "Password Required";
    auth_basic_user_file /etc/nginx/htpasswd-dmarc;
}

(最初「root /var/www/dmarc/;」で設定したら /var/www/dmarc/dmarc/ にアクセスしていたので修正)

で、/etc/nginx/site-enabled/ の適切な設定ファイルに「include /etc/nginx/templates/dmarc.tmpl;」を追加して「systemctl restart nginx」します

で・・・/opt/dmarc-report-converter/dmarc-report-converter で実行したわけなんですが・・・

[ERROR] files: mimetype text/plain; charset=utf-8 not supported in file /var/vmail/vmail1/ドメン名/d/m/a/dmarc-reports-2024.01.25.18.17.13/Maildir/cur/1735209134.M693289P2635886.メールサーバ名,S=4907,W=4989:2,a, skip

という形でMIMEのままだとダメとのこと

仕方が無いのでIMAPで取得してから処理することにした

input:
  delete: no
  dir: "/var/www/dmarc/dmarc_files/"
  imap:
    server: "メールサーバ:993"
    username: "dmarc-reports@ドメン名"
    password: "パスワード"
    mailbox: "INBOX"

これで https~/dmarc/ にアクセスすると週ごとの各ドメインディレクトリが出来て修正を確認できるようになった。

初期設定だとIPアドレスのみ表示なので、DNS逆引きも行わせたところレポート取得にだいぶ時間がかかるようになったのが注意点


めんどくさい点

毎日レポートと、1週間のまとめレポートを出す、という感じの使い方がやりにくい

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

モバイルバージョンを終了