CentOS 7にOpenDMARCをインストール

Facebooktwittermail

前回、DNSにDMARCレコードを追加しましたが、今回は自社メールサーバにOpenDMARCをインストールしてみました。

DNSにDMARCレコードを登録

OpenDMARC – Trusted Domain Project
http://www.trusteddomain.org/opendmarc/

インストールについては下記のサイトを参考に作業をしただけです(^^;
Installing OpenDMARC RPM via Yum with Postfix or Sendmail (for RHEL / CentOS / Fedora)
https://www.stevejenkins.com/blog/2015/03/installing-opendmarc-rpm-via-yum-with-postfix-or-sendmail-for-rhel-centos-fedora/

環境
・CentOS Linux release 7.8.2003 (Core)
・Kernel 3.10.0-1127.19.1.el7.x86_64
・postfix-2.10.1-9

  1. OpenDMARCのインストール
  2. /etc/opendmarc.confの編集
  3. AuthservID nameをAuthservID HOSTNAMEに変更しました。

  4. /etc/postfix/main.cfの編集
  5. OpenDKIMがすでに設定してあるので、その後ろに追加します。

  6. opendmarcの起動
  7. opendmarcの自動起動設定
  8. Postfixのリロード
  9. maillogの確認
  10. ログは標準でSyslog経由、ファシリティmailで記録されるので通常は/var/log/maillogに記録されると思います。

  11. Gmailからテストメールを送信
  12. Public Suffix Listのダウンロード
  13. この作業はオプションで必要ないけど、推奨するとのこと。

  14. /etc/opendmarc.confの編集
  15. effective_tld_names.datの更新タスク
  16. 下記のスクリプトを作成して/etc/cron.weekly/に設置しました。opendmarcのrestartとかreloadは必要なのかな?

  17. DMARC Reportingの設定
  18. 送信元のDNSにDMARCレコードがあり、レポートの送信先メールアドレスが記載されていれば送信する設定です。
    データーベースが必要なのがちょっと面倒ですね。

  19. /etc/opendmarc.confの編集
  20. MySQL databaseの設定
  21. DB名:opendmarcdb, USER:opendmarc PASSWD:secretpasswordでDBを作成しました。

  22. default schemaをインポート
  23. schema.mysqlはディストリビューションやバージョンで異なると思います。

  24. メール送信スクリプトの作成
  25. 最後にopendmarc.datからデータベースにデータをインポートし、レポートを処理して送信、opendmarc.datファイルの内容を消去するスクリプトを作成します。
    opendmarc-send-reports.shを環境に合わせて変更、利用するところが多そうです。

    opendmarc-send-reports.sh
    https://gist.github.com/stevejenkins/1b61d15cc5aaf3e6819f#file-opendmarc-send-reports-sh

    今回は/etc/cron.daily/opendmarc-send-reports.shを作成しました。

まだ運用を始めたばかりなので暫く様子をみます。今のところメール送受信に不具合は無さそうですが。

Leave a Reply