Chapter 34. フィルタ

Table of Contents
フィルタの概要
設定変数
サイズ制限
コマンドメールへの制限
mime component filter のルール構成法
議論: mime component filter に必要な機能とは?

Caution

ここでいうフィルタとは、特にこだわらない限り、投稿された記事に対するフィ ルタです。このフィルタは FML::Filter クラスに実装されています。

また、記事ではなくコマンドメール特有の特別なフィルタなども考えられます。 この場合 FML::Filter にあるとはかぎりません。 たとえばコマンドメールのコマンドの長さ制限などは FML::Command::Filter クラスが担当しています。

フィルタの概要

コンテンツを検査するフィルタには大きく分けて3種類あります。それは、 ヘッダ、 メール本文、 MIME 構造を元にしたフィルタ(mime component filter)の3つです。 メール本文に対するフィルタには MIME でないものをどうするか? text/plain に対してより厳しいシンタックスチェックを行なうフィルタも あるので、大きく分けると4つというほうがよいかもしれません。

大まかな区分け

  header

  body
	non-mime
		permit / reject (4.0 の content filter の !MIME)

	mime component filter
		4.0 の content filter

	text/plain filter
			ja, en, ... (言語依存)
			非言語依存パート (M$ GUID scanner みたいな)
		先頭部分の text/plain パートに対する
		シンタックスチェック

	外部フィルタ (ウィルス/SPAM チェッカを呼び出す)
		clamav
		spamassassin
		bogofilter
本当はこれ以外に、SMTP もしくは LMTP を使って、外部の virus scanner な りに飛ばす迂回路(postfix の content_filter 相当)が必要だと思うんだけど 今はまだ考えていません。とりあえず、それは postfix でやってください。

また、これら以外にトラフィックベースのフィルタがあります(まだかなりの 部分が未実装なので省略します)。

fml 8.0 (fml-devel) project homepage is www.fml.org/software/fml8/.
fml 4.0 project homepage is www.fml.org/fml/menu.ja.html.
about one floppy bsd routers, see www.bsdrouter.org/.
other free softwares are found at www.fml.org/software/.

author's homepage is www.fml.org/home/fukachan/.
Also, visit nuinui's world :) at www.nuinui.net.

For questions about FML, e-mail <fml-bugs@fml.org>.