SPAWN(8) SPAWN(8)
名前
spawn - Postfix 外部コマンド呼び出し
書式
spawn [generic Postfix daemon options] command_attributes...
解説
spawn(8) デー モ ンはPostfixで inetd と同等な機能を提供します。Postfix
master.cf ファイルで指定されたポートで待ち、接続が確立されると外部コ マ
ンドを呼び出します。接続は (UNIX ドメインソケットのような) ローカル IPC
または (TCP ソケットのような) 非ローカル IPC を通して行なわれます。コマ
ン ドの標準入力、出力やエラー出力は直接 communication endpoint に接続さ
れます。
このデーモンは master(8) プロセスマネージャから起動されることを想定して
います。
コマンド属性の文法
外部コマンドの属性は master.cf ファイルでサービスの定義の後に与えます。
文法は次の通りです:
user=username (必須)
user=username:groupname
外部コマンドは username で指定された権限で実行されます。ソフトウ
ェアはルート権限やメールシステムの所有者権限で実行することを拒否
します。groupname が指定されると、username のグループ ID の代 わ
りに対応するグループ ID が使われます。
argv=command... (必須)
実行されるコマンド。これは最後のコマンド属性として指定されなけれ
ばいけません。コマンドは直接実行されます。つまり、シェルのコマン
ド解釈によるシェルのメタ文字の解釈は受けません。
バグ
通 常のPostfixプロセスリソース制御を働かせるため、spawn(8) は同時に一つ
の外部コマンドしか走らせません。それだけでも貴重なプロセスリソースを 浪
費することで大きなオーバーヘッドを示します。spawn(8) デーモンはより組織
的な解決法に置き換えられることが期待されます。
診断
spawn(8) デーモンは子の異常終了を報告します。問題は syslogd(8) に記録さ れ
ます。
セキュリティ
こ のプログラムは指定されたユーザで外部コマンドを実行するためにルート権
限が必要です。そのため、セキュリティに注意を払う必要があります。 し か
し、spawn(8) デーモンは外部コマンドに話しかけないため、data-driven な攻
撃は受けにくいです。
設定パラメータ
spawn(8) プロセスは限られた短時間しか動かないため、main.cf への変更は自
動 的に拾われます。この変更を早くしたければ "postfix reload" コマンドを
使ってください。
以下の文章はパラメータの概要のみを提供します。例を含 む 詳 細 は post-
conf(5) を参照してください。
リソースと速度の制御
transport_time_limit ($command_time_limit)
終了されるまでにコマンドが動くことが許される時間量。
その他
config_directory ('postconf -d' の出力を参照)
Postfix main.cf および master.cf 設定ファイルのデフォルトの場所
。
daemon_timeout (18000s)
ビルトイン監視タイマーによって終了するまでの、Postfix デーモンプ
ロセスが要求を扱うことができる時間。
export_environment ('postconf -d' の出力を参照)
Postfix プロセスが非 Postfix プロセスに渡す環境変数のリスト。
ipc_timeout (3600s)
内部通信チャネルを使った情報の送受信の時間制限。
mail_owner (postfix)
Postfix キューおよびほとんどの Postfix デーモンプロセスを所有す
る UNIX システムアカウント。
max_idle (100s)
Postfix デーモンプロセスが終了するまでに次のサービス要求を待つ最
大時間。
max_use (100)
Postfix デーモンプロセスが終了するまでの接続要求の最大数。
process_id (read-only)
Postfix コマンドまたはデーモンプロセスのプロセス ID。
process_name (read-only)
Postfix コマンドまたはデーモンプロセスのプロセス名。
queue_directory ('postconf -d' の出力を参照)
Postfix トップレベルキューディレクトリの場所。
syslog_facility (mail)
Postfix ロギングの syslog facility 名。
syslog_name (postfix)
例 えば "smtpd" が "postfix/smtpd" となるようにするために syslog
レコードのプロセス名の前に付けられるメールシステムの名前。
関連項目
postconf(5), 設定パラメータ
master(8), プロセスマネージャ
syslogd(8), システムロギング
ライセンス
The Secure Mailer license はこのソフトウェアと一緒に配布されなければ い
けません。
作者
Wietse Venema
IBM T.J. Watson Research
P.O. Box 704
Yorktown Heights, NY 10598, USA
SPAWN(8)