PROXYMAP(8) PROXYMAP(8)
名前
proxymap - Postfix 検索テーブルプロキシサーバ
書式
proxymap [generic Postfix daemon options]
解説
proxymap サーバは Postfix プロセスに読み込み専用のテーブル検索サービス
を提供します。このサービスの目的:
o chroot 制限を克服するため。例えば、chroot された SMTP サーバは存
在 し な い ローカルアドレス宛のメールを拒否するためにシステムの
passwd ファイルにアクセスする必要がありますが、 chroot 監 獄 で
passwd ファイルのコピーを維持するのは実用的ではありません。解法:
local_recipient_maps =
proxy:unix:passwd.byname $alias_maps
o 複数のプロセス間で一つのオープンテーブルを共有することで、多くの
オープン検索テーブルを一元管理するため。例えば、あらゆる Postfix
デーモンプロセスから mysql に接続すると、 "too many connections"
エラーになります。解法:
virtual_alias_maps =
proxy:mysql:/etc/postfix/virtual_alias.cf
接続の総数は proxymap サーバプロセスの数に制限されます。
proxymap サーバは次の要求を実装しています:
open maptype:mapname flags
形 式が maptype で名前が mapname のテーブルを flags に制御される
ように開きます。応答には (正規表現テーブルからの固定文字列を区別
するために) maptype に依存したフラグを含みます。
lookup maptype:mapname flags key
要求されたキーに保存されたデータを検索します。応答は要求完了ステ
ータスコード(以下参照)と、検索結果の値です。 maptype:mapname お
よび flags は open 要求と同じです。
close コマンドはなく、クライアントの接続が切れたときに暗黙のうちにテー
ブルを閉じたりもしません。これは複数のクライアントプロセス間でテーブ ル
を共有するためです。
サーバプロセス管理
proxymap サーバは Postfix master サーバの制御下で動きます。それぞれのサ
ーバは同時に複数の接続を扱うことができます。クライアントの接続時に全 て
の サーバが使われていると、 master は新しい proxymap サービスプロセスを
生成しますが、プロセス制限を超えることはありません。それぞれのサーバ は
少 なくとも $max_use 個のクライアントにサービスしたり、$max_idle 秒のア
イドル時間が経過すると終了します。
セキュリティ
proxymap サーバは proxy_read_maps 設定パラメータを通して許可されたテ ー
ブ ルのみを開き、ユーザに話しかけることはなく、固定された低い権限で動き
、chroot されてもされなくても構いません。しかし、proxymap サ ー バ を
chroot して走らせると、chroot されたテーブルしか開けないため、使い勝手
を大幅に制約することになります。
proxymap サーバは信頼されたデーモンプロセスではないので、ユーザやグルー
プ ID、メールボックスファイル/ディレクトリ名や外部コマンドといった注意
を払う必要がある情報の検索に使ってはいけません。
診断
問題および処理は syslogd(8) に記録されます。
バグ
proxymap サーバは複数のクライアントにサービスを提供するため、検索に時間
のかかるテーブルに使ってはいけません。
設定パラメータ
忙しいメールシステムでは、proxymap(8) 関連の main.cf への変更が拾われる
までに長時間経過する可能性があります。変更を早くした け れ ば "postfix
reload" コマンドを使ってください。
以 下 の 文 章 はパラメータの概要のみを提供します。例を含む詳細は post-
conf(5) を参照してください。
config_directory ('postconf -d' の出力を参照)
Postfix main.cf および master.cf 設定ファイルのデフォルトの場 所
。
daemon_timeout (18000s)
ビルトイン監視タイマーによって終了するまでの、Postfix デーモンプ
ロセスが要求を扱うことができる時間。
ipc_timeout (3600s)
内部通信チャネルを使った情報の送受信の時間制限。
max_idle (100s)
Postfix デーモンプロセスが終了するまでに次のサービス要求を待つ最
大時間。
max_use (100)
Postfix デーモンプロセスが終了するまでの接続要求の最大数。
process_id (read-only)
Postfix コマンドまたはデーモンプロセスのプロセス ID。
process_name (read-only)
Postfix コマンドまたはデーモンプロセスのプロセス名。
proxy_read_maps ('postconf -d' の出力を参照)
proxymap(8) サーバのアクセスが許される検索テーブル。
ライセンス
The Secure Mailer license はこのソフトウェアと一緒に配布されなければい
けません。
歴史
proxymap サービスは Postfix 2.0 で導入されました。
作者
Wietse Venema
IBM T.J. Watson Research
P.O. Box 704
Yorktown Heights, NY 10598, USA
PROXYMAP(8)