検索
連載

電子署名を使うDomainKeysの設定方法送信ドメイン認証技術解説(3/4 ページ)

Share
Tweet
LINE
Hatena

dk-milterを導入してみよう

 ここからは実際にDomainKeysを導入する方法について説明する。dk-milterは、sendmail MTAと同様のライセンスでオープンソースとして公開されており、送信側での電子署名、受信側の認証の両方に利用できる。

 dk-milterはsendmail MTAのプラグインとして動作するメールフィルタで、オープンソース版sendmail 8.13.0以降か商用版Sendmail 3.1.6以降で動作する。dk-milterのバージョンは原稿執筆時点(2005年12月14日)で0.3.2である。以下のURLからダウンロード可能である。同時にsendmail MTAの最新版もダウンロードしておこう。

dk-milterのビルド

 sendmail MTAのソースとdk-milterのソースをダウンロードして適当なディレクトリに展開する。site.config.m4.sampleをコピーしてdevtools/Site/site.config.m4を作成し、

APPENDDEF(`confENVDEF', `-DMILTER')

を追加する。そのほか必要に応じてオプションを追加/削除したうえで、ソースのTOPディレクトリで「./Build」を実行してから、さらにroot権限で「./Build install」を実施する。これでmilterに対応したsendmail MTAがインストールできる。

 次にlibmilterをコンパイルおよびインストールする。まずlibmilterディレクトリに移動して「./Build」を実施し、コンパイルに成功したらroot権限で「./Build install」を実施する。

 そしてdk-milterのソースディレクトリのTOPにおいて「./Build」を実行してから、さらにroot権限で「./Build install」を実施する。以上でdk-filterが利用可能になる。

 なお、すでにOS付属のlibmilterなどが存在し、そのlibmilter.aを作成したコンパイラとdk-filterをコンパイルするgccのバージョンが異なるとコンパイルに失敗する場合がある。その場合はdk-filter/Makefile.m4を編集し、新たに作成したlibmilter.aファイルを直接指定すると回避できる。

DomainKeys用の鍵の作成と公開

 鍵の作成はOpenSSLのツールを利用する。dk-milterのソースに含まれるINSTALLに手順の簡単な説明があるので一読しておくことをお勧めする。一連の作業を実施する「gentxt.csh」というコマンドが「(dk-milterのソースのTOPディレクトリ)/dk-filter」以下にあり、これを用いて、秘密鍵、公開鍵、およびDNSに登録するTXTレコードのサンプルを簡単に作成できる。

 ここではセレクタを「k1」に、DomainKeysで認証可能にする送信ドメインを「sm-ex.co.jp」とする。

# cd dk-filter
# ./gentxt.csh k1 sm-ex.co.jp
 
k1._domainkey IN TXT "g=; k=rsa; t=y; p=MFwwDQYJKoZIhvc
NAQEBBQADSwAwSAJBANm1IZUEICVj7
N1KEQVxOgpGWDB2NkWxkvgVBEWZ9WYOB8VK9mntghacav
OILo8KkshxGmCh6SOyLlQqmrMCzpkCAwEAAQ==" ;
----- DomainKey test for sm-ex.co.jp

 実行すると、秘密鍵をk1.privateに、公開鍵をk1.publicにそれぞれ出力する。また、コマンドの結果としてDNSのzoneファイルにそのまま記述可能なTXTレコードのサンプルが出力されるので、これをDNS上に公開する。

 デフォルトでは鍵長512bitの鍵が作成される。必要に応じてgentxt.cshの32行あたりを編集し鍵長を調整するといいだろう。

サイトポリシーの公開

 DomainKeysでは公開鍵のほかにドメインポリシーを公開できる。ドメインポリシーには、認証結果を受信者にどのように扱ってほしいかを記述する。ドメインポリシーは送信ドメインに「_domainkey」を追加したFQDNに対するTXTレコードとして公開する。例えば、

_domainkey.sm-ex.co.jp.TXT "t=y; o=~"

となる。「t=y」は試験的な運用であることを示している。「o=」は電子署名の実施について表示するもので、値が「-」の場合はすべてのメールに署名を実施する。また「~」の場合は署名してあるものもないものもあるという意味になる。

 ドメインポリシーはDomainKeysの認証に失敗した場合にのみ参照すべきとされている。また、参照時に値が得られなかった場合はデフォルト値「~」と判断するように定義されている。ほかにもタグが存在するが詳しくはドラフトを参照してほしい。

Index

電子署名を使うDomainKeysの設定方法

Page1

電子署名方式で最も普及しているDomainKeys

DomainKeysのヘッダ

DomainKeysレコード


Page2

DomainKeysはメールの転送に強い

DomainKeysはメーリングリストが苦手

送信サーバと受信サーバにおける注意点

ほかのメール暗号化方式との関係


Page3

dk-milterを導入してみよう

dk-milterのビルド

DomainKeys用の鍵の作成と公開

サイトポリシーの公開


Page4

dk-milterの起動とsendmail MTAの設定

認証結果

送信ドメイン認証の今後


Copyright © ITmedia, Inc. All Rights Reserved.

Security & Trust 記事ランキング

  1. 2025年に押さえるべきセキュリティの重要論点をガートナーが発表 新しいリスク、脅威、環境の変化、法規制などの動きを把握する指標に使える
  2. Google Cloud、2025年のサイバーセキュリティ予測を発表 AIがサイバー攻撃にもたらす影響とは?
  3. 終わらせましょう。複雑過ぎるKubernetes/クラウドネイティブが生む心理的安全性の低下を――無料でクラウドセキュリティの勘所が分かる130ページの電子書籍
  4. 2025年、LLMの脆弱性が明確になるなど、セキュリティとクラウドに関する8つの変化
  5. 経営層の約7割が「セキュリティ対策は十分」一方で6割以上がインシデントを経験、1位の要因は?
  6. 「SMSは認証に使わないで」 米CISA、モバイル通信を保護する8つのベストプラクティスを公開
  7. 中小企業の20%の経営層は「自社はサイバー攻撃に遭わない」と信じている バラクーダネットワークス調査
  8. “ゼロトラスト”とトラスト(信頼性)ゼロを分かつものとは――情報セキュリティ啓発アニメ「こうしす!」監督が中小企業目線で語る
  9. AWS、組織のセキュリティインシデント対応を支援する「AWS Security Incident Response」を発表 アラートに圧倒されるセキュリティチームをどう支援?
  10. SBOMの本質を大阪大学 猪俣教授が語る――「うちのソフトは大丈夫なんです」とユーザーにどう証明する?
ページトップに戻る