"fml" バイブル -- fml trekking guide --
( オライリージャパン より 2001年 01月 刊 )
ISBN: 4-87311-032-7

fml バイブル についての誤植や補足事項については、 別途ページを作っていくことにしました。 http://www.fml.org/home/fukachan/book/fml_bible/ へ移しましたので、そちらを参照して下さい。


目次


目次
はじめに
I部 イントロダクション
1章 イントロダクション
	1.1 電子メール(Email)
	1.2 メーリングリスト
	1.3 メーリングリストサーバのモデル
	1.4 fmlにできること
2章 fmlの操作
	2.1 ユーザという概念
	2.2 メーリングリストサーバのホストへ入る
	2.3 makefmlの基本的な使い方
	2.4 メーリングリストを作る
	2.5 メンバーの登録
	2.6 メンバーの削除
	2.7 fmlの設定を変更する
3章 メーリングリストサーバの動作
	3.1 メールを受け取る
	3.2 プログラムfmlの実行
	3.3 メールの配送
	
II部 fmlのセットアップ〜MLの作成
4章 Unix上でのfmlのインストール
	4.1 インストールの準備
	4.2 ダウンロードとソースの展開
	4.3 fmlのインストール
	4.4 メールサーバの設定(sendmail)
	4.5 メールサーバの設定(Postfix)
	4.6 メールサーバの設定(qmail)
	4.7 ケーススタディ:MacOS X Serverの場合
	4.8 Q and A
5章 Unix上でMLを作る
	5.1 MLを作る
	5.2 メールサーバの設定(sendmail)
	5.3 メールサーバの設定(Postfix)
	5.4 メールサーバの設定(qmail)
	5.5 Cラッパ(Wrapper)
	5.6 いくつかの注意点について
	5.7 Q and A
6章 Windows 2000/NT4上でのfmlのインストール
	6.1 インストールの準備
	6.2 fmlのインストール
	6.3 ケーススタディ:POPを使ったML
	6.4 ケーススタディ:Sendmail
	6.5 注意点
7章 アップグレード
	7.1 /usr/local/fmlディレクトリのバックアップ
	7.2 メールサーバを停止する
	7.3 fmlのインストール
	7.4 elena MLのアップデート
8章 Unix上でのCGIのセットアップ
	8.1 CGIのインストール
	8.2 /cgi-bin/階層のモデル
	8.3 CGIスクリプトのセットアップ
	8.4 WWWサーバの設定(fml CGI専用WWWサーバの場合)
	8.5 メールサーバの設定
	8.6 ケーススタディ:suexecでユーザfmlのCGI扱いにする
	8.7 Q and A
9章 fmlの動作確認
	9.1 メールサーバ自体のテストを行う
	9.2 MLへの送信テスト
	9.3 fml自体のテスト
	9.4 テストした形跡を消す(MLの最初期化)

III部 fmlのカスタマイズ
10章 MLのメンバーができること
	10.1 ガイドを取り寄せる
	10.2 MLに参加する
	10.3 ヘルプを取り寄せる
	10.4 投稿する/記事を読む
	10.5 登録されているメールアドレスを変更する
	10.6 過去の記事を読む
	10.7 MLから抜ける
11章 fml管理者ができること
	11.1 MLの作成
	11.2 MLの削除
	11.3 MLメンバーの登録と削除
	11.4 登録しているアドレスを変更する
	11.5 一時休止と再開
	11.6 まとめ送り
	11.7 リモート管理
	11.8 MLのカスタマイズ
12章 fmlの設定ファイルを変更する
	12.1 設定ファイルconfig.phの変更方法
	12.2 メニューで設定を操作する
	12.3 cfのファイル形式とconfig.phの関係
	12.4 すべてのMLに同じ設定を強制する
13章 MLのスタイルのカスタマイズ
	13.1 MLには誰がどう投稿できるのかを変更する
	13.2 デフォルト設定
	13.3 コマンドメールを禁止する
	13.4 自動登録:投稿は特定多数で登録はfmlまかせ
	13.5 誰でも投稿可能なML(例:企業のサポート用)
	13.6 メールマガジン型のML(投稿できる人を特定少数に制限する)
	13.7 記事を査読するML(モデレータモード)
	13.8 自動ファイル返送サーバ
	13.9 ケーススタディ:複数の管理者による運用
	13.10 登録と削除をまとめておこなう
	13.11 ケーススタディ:listserv風コマンド用アドレス
	13.12 ケーススタディ:メンバー管理が階層化されたML
	13.13 ケーススタディ:procmailを使ったML
	13.14 ケーススタディ:elena-ctlアドレスが用意できない
	13.15 推奨設定(よりセキュアに)
	13.16 Q and A
14章 ヘッダの書き換え
	14.1 メールヘッダ
	14.2 記事のヘッダ書き換え
	14.3 記事のSubject:を変更する
	14.4 記事のヘッダを強制指定/上書き
	14.5 ヘッダを削除する
	14.6 記事のヘッダのあるフィールドを別のフィールドにコピー
	14.7 記事のあるフィールドを別のフィールドへ移動する
	14.8 記事の元のヘッダフィールドを使う
	14.9 ヘッダフィールドの並び順をカスタマイズする
	14.10 レポート メールのヘッダ操作
	14.11 Q and A
15章 fmlの返すメッセージをカスタマイズする
	15.1 ガイドなどのテンプレートのカスタマイズ
	15.2 エラーメッセージのカスタマイズ
	15.3 コマンド メールへの応答のカスタマイズ
16章 記事のフィルタリング
	16.1 どの段階で弾くべきなのか
	16.2 fmlのフィルタリング機能を有効にする
	16.3 ケーススタディ:SPAMを弾く
	16.4 ケーススタディ:HTMLメールを弾く
	16.5 ケーススタディ:ウイルスを弾く
	16.6 fmlフィルタリング機構のまとめ
	16.7 メールの入力サイズを制限する
	16.8 Q and A
17章 トラフィックを制限する(メール爆弾対策)
	17.1 MTIの機能を有効にする
	17.2 MTI(Mail Traffice Information)の理論
	17.3 MTI評価関数のカスタマイズ例
	17.4 Q and A
18章 リモート管理(メールでfmlを操作する)
	18.1 リモート管理機能を有効にする
	18.2 adminコマンドとapproveコマンド
	18.3 リモート管理者を登録する
	18.4 リモート管理者を削除する
	18.5 リモート管理の認証方法を変更する
	18.6 PGP2による認証
	18.7 PGP5による認証
	18.8 adminコマンド:メンバーのリストの操作
	18.9 adminコマンド:ファイルの操作
	18.10 adminコマンド:ログファイル/ディレクトリを見る
	18.11 adminコマンドのカスタマイズ
	18.12 Q and A
19章 MLの暗号化
	19.1 fmlの暗号化のプロセス
	19.2 暗号化機能を有効にする
	19.3 鍵の操作(PGP version 2)
	19.4 鍵の操作(PGP version 5)
	19.5 ケーススタディ:MLの暗号化の手順(PGP 5)
20章 MLの記事をWWWで公開する
	20.1 fml内臓のHTML化機構
	20.2 MLの記事をWWWで公開する(MHonArc)
	20.3 検索エンジン
21章 まとめ送り
	21.1 あるメンバーへの配送をまとめ送りにする
	21.2 全部のMLでまとめ送りをサービスする
	21.3 特定のML(elena ML)だけでまとめ送りをサービスする
	21.4 elenaとmirei MLでまとめ送りをサービスする
	21.5 Q and A

IV部 トラブルシューティング
22章 トラブル対応の手順
	22.1 ソフトウェアのバージョンを調べる/確認する
	22.2 ログを調べる
	22.3 エラー発生箇所
	22.4 ケーススタディ:配送のエラーを切り分ける
	22.5 ケーススタディ:同じメールが何通も送られてきます
23章 fmlのセットアップ時のトラブル
	23.1 パーミッションに関する話題
	23.2 Perlの出すエラー
	23.3 fmlとメールサーバとの間のトラブル
	23.4 メールサーバの設定関連のトラブル
	23.5 CGIのセットアップのトラブル
24章 配送やメールリーダにまつわるトラブル
	24.1 配送のトラブル
	24.2 メールリーダに関連したトラブル
25章 fml自体のトラブル
	25.1 fmlの設定にまつわるトラブル
	25.2 fmlのコマンド関連のトラブル
	25.3 その他

V部 その他のトピック
26章 日々の運用について
	26.1 ログファイルを見る
	26.2 ディスク使用量の目安について
	26.3 自動的に記事のスプールを圧縮する
	26.4 自動的にスプールの記事を消す
	26.5 設定の変更と更新履歴を残す
	26.6 バックアップ
	26.7 古いファイルを順次消す
	26.8 ケーススタディ:サーバにもとめられる条件
27章 エラーメールを自動解析する
	27.1 エラーメールのフォーマット
	27.2 エラーメールの送られる先を変更する
	27.3 全MLのエラーメールを自動解析する(mead)
	27.4 特定のMLのエラーメールのみを自動解析する
	27.5 VERPsを使いフォワードされた先でのエラーを検出したい
	27.6 meadのカスタマイズ
	27.7 ケーススタディ:smtpfeedによるVERPs風エラー解析
	27.8 メールのループを防ぐ
	27.9 定期的にMLに入りつづけるかを訪ねる(confirmd)
28章 メールサーバの変更/引越し
	28.1 DNSを利用したISPのスムーズな変更
	28.2 fmlを他のホストへコピーする
	28.3 ケーススタディ
	28.4 Q and A
29章 バーチャルドメイン
	29.1 fmlのセットアップ(複数のfml)
	29.2 fmlのセットアップ(/usr/local/fmlを共用する)
	29.3 メールサーバのバーチャルドメイン設定
	29.4 ケーススタディ:sendmail
	29.5 ケーススタディ:Postfix
	29.6 ケーススタディ:qmail

VI部 fmlの内部構造と機能拡張
30章 変数と関数
	30.1 変数名の付け方のルール
	30.2 %Envelopeハッシュテーブル
	30.3 変数:ディレクトリ名
	30.4 変数:便利な変数
	30.5 関数名の付け方のルール
	30.6 config.ph内で使える関数
31章 リストファイルのフォーマット
	31.1 配送リスト
	31.2 メンバー管理ファイル
32章 fml.plプロセスの動作
	32.1 前半
	32.2 後半
	32.3 記事の配送処理
	32.4 コマンドメールの処理
33章 デバッグをする
	33.1 デバッグモードを有効にする
	33.2 デバッグ出力をファイルに保存する
	33.3 $debugを使ったソースコードの書き方
34章 コマンドメールのカスタマイズ
	34.1 コマンド入力の制限
	34.2 あるコマンドを無効にする
	34.3 特定のコマンドだけを有効にする
	34.4 既存のコマンドをカスタマイズする
	34.5 Q and A
35章 ケーススタディ:HOOKによる拡張
	35.1 $START_HOOK
	35.2 $SMTP_OPEN_HOOK
	35.3 $HEADER_ADD_HOOK
	35.4 $FML_EXIT_HOOK
	35.5 事例集

VII部 Advanced Study
36章 fmlからデータベースへのアクセス
	36.1 データベースとは?
	36.2 fmlからデータベースを呼ぶ
	36.3 ケーススタディ:WWWとデータベースとメールマガジン
	36.4 ケーススタディ:社内のディレクトリサービス
	36.5 ケーススタディ:大規模なシステム
37章 配送の高速化について
	37.1 SMTP(Simple Mail Transfer Protocol)
	37.2 メール配送におけるDNSの役割
	37.3 理論上はどのくらいの配送速度が出るだろうか?
	37.4 ケーススタディ:smtpfeed、qmail、Postfix
	37.5 fmlのSMTP機構のカスタマイズ
	37.6 ケーススタディ:fmlが複数のMTAを使う
38章 試論:現代的サーバデザインについて
	38.1 デザインの方向性
	38.2 FWTK(FireWall Tool Kit)
	38.3 キュー(queue)ディレクトリとset-uid bit
	38.4 ケーススタディ:fml.orgの選択
あとがき

VIII部 付録
付録A ミニ用語集
付録B Unixの豆知識
	B.1 Unixのプロセス
	B.2 Unixのファイル
	B.3 Unixコマンドtips
	B.4 Unixデーモンtips
付録C メールサーバのインストール
	C.1 CFによるsendmail.cfの作成(概略)
	C.2 Postfixのインストール
	C.3 qmailのインストール(概略)
付録D virus_check.phの例
付録E makefmlリファレンス
付録F adminコマンド・リファレンス
付録G 変数とメニュー階層リスト(アルファベット順)
索引

Copyright (C) 2001 Ken'ichi Fukamachi
         All rights reserved.

$FML: treking_guide.ja.html,v 2.8 2002/03/24 12:34:40 fukachan Exp $