メール配送系における多様な迷惑メール対策の統合管理手法 ∗佐々木琢磨 (学籍番号200821654)

研究指導教員：阪口哲男

1 はじめに合されたメール配送系の管理方式である. 統合管理に関する先行研究としては, MTA ソフトウェアで利用

インターネットにおける迷惑メールは, ユーザへのされる外部ソフトウェアの規格統一のための API で被害だけではなく, 同時多量送信によるメールサーある milter API および milter manager[2] や, 電子バへの負荷も問題であり, メール配送系 [1] への迷惑メールのフィルタリング動作を記述できるプログラミメール対策の導入は必須である. 一方で, 実際に利用ング言語 Sieve[3] がある.

されているメールサーバソフトウェアは様々であり,

しかし, 前者は MTA の迷惑メール対策ソフトウェ

迷惑メール対策ソフトウェアは, 同じ原理や方式のもアの導入や設定手順の統合, 後者は MDA におけるのでも, メールサーバソフトウェアごとに個別にある.

メール振り分け条件記述の統一にとどまっている. そまた, 様々なソフトウェアを組み合わせるために, 設

こで, 本研究ではメール配送系構成要素全体を対象と定ファイルが散在し, さらに個々の設定ファイルが固し, 迷惑メール対策の統合管理のための記述言語を提有の記述形式であるなど, 管理者に負担がかかるとい案する.

う問題がある. その問題の解決のため, 本研究では,メール配送系と迷惑メール対策の設定を統合して管理する手法とその実現方式を提案する.

2 迷惑メール対策の統合管理

3 メール配送系の統合管理手法
3.1 統合管理言語と解釈系
メール配送系における迷惑メール対策の設定ファイ
ルの散在およびソフトウェア固有の設定記法による管複数の迷惑メール対策をメール配送系で併用する理の手間を低減すべく, 必要な設定項目の記述形式を場合, メールサーバソフトウェアと, 迷惑メール対策統一したメール配送系統合管理言語を定義し, その記のために導入したフィルタソフトウェアの両方を設

述から各ソフトウェアの設定ファイルおよびメール配定・管理する必要がある. しかし, メールサーバソフ送系構成要素の設定ファイルを生成する解釈系を開発

トウェアは迷惑メール対策設定以外にも設定事項はあした. これらの言語およびその解釈系を適用したメーり, 場合によっては基本的なメールサーバの動作設定

ル配送系は, 全体の迷惑メール対策の構成を確認すると迷惑メール対策設定が同一の設定ファイル内に混在場合に散在した設定ファイルを辿る必要がなくなり,することもある. また, フィルタソフトウェアを複数管理の負担が低減される.

導入すると, 各フィルタソフトウェアの設定・管理も必要となる.

本研究で開発したメール配送系統合管理言語をamaretto と呼ぶ. 図 1 に amaretto の記述例を示す.

その結果, 迷惑メール対策を含めたメール配送系全

図 1 は, MTA に postfix を用い, 迷惑メール対策と体の設定内容を確認する場合, 散在した各設定ファイして postgrey を導入して Greylisting を行う場合のルを辿っていく必要があり, 管理者の手間となる. そamaretto の記述例である. amaretto では, use ブ

こで, 迷惑メール対策の統合管理が必要と考えられる.

ロックごとに管理対象ソフトウェアの設定項目を記述

迷惑メール対策の統合管理とは, メールサーバソフトするようにし, 記法および設定ファイルを統合した.

ウェアの設定と迷惑メール対策設定の記述や記法が統∗ “Anintegrated method for management of email
delivery systems with various anti-spam tools ” byTakuma SASAKI

次に amaretto の解釈系について述べる. 解釈系は,多様に存在する迷惑メール対策に対して柔軟に対応させる必要がある. そこで, 解釈系は, amaretto 記述を

12

require "amaretto";
set "greyport" "60000";

SableCC を用いて開発を行った.

4 試験運用と評価

3
4

use "postgrey" as GREYLISTING{

本研究のメール配送系統合管理手法を適用したメー

5

delay "300";

ルサーバを試験運用し, 迷惑メール対策の設定・更新

6

postgrey.port "${greyport}";作業を行うことにより, 本手法における管理の手間を7

従来の場合と比較して評価を行った.

};

試 験 運 用 は, VMWare 仮 想 サ ー バ 上 に Debian

89use "postfix" as MTA{

1011service "${greyport}";

GNU/Linux 5.0 を OS とし, MTA ソフトウェアとして Postfix 2.5, MDA・MRA ソフトウェアとして Cyrus IMAP Server 2.2 を用いた. 導入する迷};

図 1 amaretto の記述例 (迷惑メール対策設定部

惑メール対策方式としては, Greylisting, Whitelist,Cyrus IMAP Server がサポートする Sieve 機能を分を抜粋)

採 用 し, Greylisting に 関 し て は, postgrey お よ び
各ソフトウェアの設定ファイルのテンプレートおよびルール記述に適用することにより各設定ファイルを生成させる方式とした. ルール記述とは, amaretto 記述をテンプレートに適用する際の制約, 時間の単位変換などの計算命令を記述したものである. テンプレートとルール記述の例を図 2, 3 に示す.

1

delay %{delay}m2

autowhite %{max-age}d

図 2 milter-greylist 用テンプレート (抜粋)milter-greylist を採用した.
上記の迷惑メール対策の導入・管理作業をいくつかのパターンで行ったところ, 従来では最大で操作対象ファイルが 5 つで計 500 行程度であったのに対し, 本手法では約 30 行の amaretto 記述のみで作業が終了するなど, 手間の低減が確認された.

5 おわりにメール配送系統合管理言語 amaretto とその解釈系を用いた本手法は, 迷惑メール対策の設定・更新作業において, 従来よりも管理者の作業の手間が低減されることが示された.

1

using GREYLISTING

また, 今後新しい迷惑メール対策方式が実現された

2

if delay :exists

場合でも, その方式のテンプレートおよびルール記述

3

then value.to i / 60

図 3 milter-greylist のルール記述の例

3.2 解釈系の実現を用意することで本手法は対応できると考えられるが, その検証については残された課題となっている.

参考文献

解釈系は前処理として amaretto 記述とルール記述[1] David Wood. “インターネット上の電子メール”.

を入力し, ルールを適用した中間ファイルを出力する

電子メールプロトコル. 佐々木雅之ほか監訳. オ

ルール解釈部分と, その中間ファイルとテンプレート

ライリー・ジャパン, 2002, p. 1-24.

を入力して該当部分を置換処理する amaretto 記述解釈部分である.
解釈系の開発は, Java 言語を用いた. parser gen-[2] クリアコード. milter manager. http://miltermanager.sourceforge.net/index.html[3] RFC 5228. Sieve: An Email Filtering Lan-erator には SableCC[4] を用い, 生成された各クラス

guage.

を利用して開発した. 入力された amaretto 記述は,

http://tools.ietf.org/rfc/rfc5228.txt

ルール記述解釈部分により記述の計算や制約の確認が[4] SableCC project. SableCC.

され, amaretto 記述解釈部分に渡される. amaretto

http://sablecc.org/wiki

記述の処理系も, 適用ルール記述の処理系と同様に