Postfix main.cf 設定ファイルには、Postfix メールシステムの動作を 制御する全てのパラメータのうち、小さなサブセットを指定します。 main.cf で指定されていないパラメータは、そのデフォルト値のまま 残されます。
main.cf ファイルの一般的な書式は以下の通りです:
それぞれの論理行は "parameter = value" の形式を取ります。 "=" の前後の空白は無視されます。また論理行の最後の空白も同様です。
空行と空白だけの行は無視されます。また、最初の非空白文字が `#' の行も同様です。
論理行は空白以外のテキストで始まります。空白で始まる行は 論理行を継続します。
パラメータの値は他のパラメータを参照することができます。
"$name" や "${name}"、"$(name)" という表記は指定された パラメータの値で再帰的に置き換えられます。
"${name?value}" という表記は、"$name" が空でない場合に "value" に展開されます。
"${name:value}" という表記は、"$name" が空の場合に "value" に展開されます。
同じパラメータが複数回定義されていると、最後のものだけが 記憶されます。
それ以外は、main.cf パラメータの定義の順番は重要では ありません。
このドキュメントの残りの部分は、全ての Postfix 設定パラメータの 解説です。デフォルト値はパラメータ名の後のカッコ内に示され、 postconf -d コマンドで調べることもできます。
注意: これは Postfix 設定パラメータの変更の勧めではありません。 不必要な変更はメールシステムの動作を損なうおそれがあります。
送信者に返すことができない不達メールの受信者。この機能は notify_classes パラメータで有効になります。
クライアントが access(5) マップ制限により拒否された場合の、数字の Postfix SMTP サーバ応答コード。
RFC 821 を完全に理解しているのでなければ、これを変更してはいけません。
アドレス検証プローブに対する default_transport パラメータ設定を 上書きします。
この機能は Postfix 2.1 以降で使えます。
アドレス検証プローブに対する local_transport パラメータ設定を 上書きします。
この機能は Postfix 2.1 以降で使えます。
永続的なアドレス検証状態ストレージの、オプションの検索テーブル。 このテーブルは verify(8) サービスによって管理され、プロセスが権限を 解放する前に開かれます。
デフォルトでは、情報は揮発性メモリに保持され、"postfix reload" または "postfix stop" の後で失われます。
埋め尽くされることのないファイルシステムの場所を指定します。 データベースが壊れると、世界が終わってしまいます。修復するには ファイルを削除し、"postfix reload" します。
例:
address_verify_map = hash:/etc/postfix/verify address_verify_map = btree:/etc/postfix/verify
この機能は Postfix 2.1 以降で使えます。
失敗したアドレス検証プローブの結果のキャッシュを有効にします。 この機能が有効になっていると、キャッシュはすぐにゴミで汚染される 可能性があります。この機能が無効になっていると、Postfix は全ての 検索にアドレスプローブを生成します。
この機能は Postfix 2.1 以降で使えます。
失敗したプローブがアドレス検証キャッシュから消えるまでの時間。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。
この機能は Postfix 2.1 以降で使えます。
失敗したプローブのアドレス検証キャッシュの更新が必要となるまでの時間。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。
この機能は Postfix 2.1 以降で使えます。
進行中のアドレス検証要求を完了するために verify(8) サービスに 問い合わせる回数。
デフォルトのポーリング回数は 3 です。
1 を指定すると粗っぽい形で greylisting を実装します。すなわち、 以前に見たことがないアドレスの最初の配送要求は常に遅延されます。
例:
address_verify_poll_count = 1
この機能は Postfix 2.1 以降で使えます。
進行中のアドレス検証要求を完了するための、問い合わせの間に入れる遅延。
デフォルトのポーリング遅延は 3 秒です。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。
この機能は Postfix 2.1 以降で使えます。
成功したプローブがアドレス検証キャッシュから消えるまでの時間。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。
この機能は Postfix 2.1 以降で使えます。
成功したプローブのアドレス検証キャッシュの更新が必要となるまでの時間。 アドレス検証状態はプローブが失敗すると更新されません (楽観的 キャッシング)。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。
この機能は Postfix 2.1 以降で使えます。
アドレス検証プローブに対して、relay_transport パラメータ設定を上書き します。
この機能は Postfix 2.1 以降で使えます。
アドレス検証プローブに対して、relayhost パラメータ設定を上書きします。
この機能は Postfix 2.1 以降で使えます。
アドレス検証プローブで使う送信者のアドレス。アドレスプローブに対して アドレスプローブを送ってしまう問題を回避するため、Postfix SMTP サーバは SMTPD access ブロックからプローブ送信者アドレスを除外します。
null 送信者アドレスを使いたい場合は空値 (address_verify_sender =) または <> を指定してください。RFC が <> からのアドレスを 受け付けるよう要求しているにもかかわらず、そのようなアドレスを拒否する サイトがあることに注意してください。
例:
address_verify_sender = <> address_verify_sender = postmaster@my.domain
この機能は Postfix 2.1 以降で使えます。
verify(8) アドレス検証サービスの名前。このサービスは送信者や受信者の アドレス検証プローブの状態を管理し、他の Postfix プロセスによる要求で プローブを生成します。
アドレス検証プローブに対して、transport_maps パラメータ設定を上書き します。
この機能は Postfix 2.1 以降で使えます。
アドレス検証プローブに対して、virtual_transport パラメータ設定を上書き します。
この機能は Postfix 2.1 以降で使えます。
"newaliases" や "sendmail -bi" で更新される、local(8) 配送のエイリアスデータベース。
$alias_maps で指定されるテーブル全てがローカルファイルである必要は ないため、これは別の設定パラメータになっています。
例:
alias_database = hash:/etc/aliases alias_database = hash:/etc/mail/aliases
local(8) 配送で使われるエイリアスデータベース。文法の詳細は aliases(5) を参照してください。
デフォルトのリストはシステムに依存します。NIS を持つシステムでは、 デフォルトではローカルのエイリアスデータベースを検索し、それから NIS エイリアスデータベースを検索します。
エイリアスデータベースを変更したら、"postalias /etc/aliases" (またはシステムがメールエイリアスファイルを保存している場所) を 走らせるか、単に "newaliases" を走らせて必要な DBM または DB ファイルを作ってください。
例:
alias_maps = hash:/etc/aliases, nis:mail.aliases alias_maps = hash:/etc/aliases
local(8) が外部コマンドへメールを配送するのを制限します。 デフォルトでは :include: ファイルでの "|command" への配送を認めません (この用例を定義している文章は aliases(5) を参照してください)。
コマンドを許可するためには、次のうちゼロ個またはそれ以上を指定して ください: alias、forward または include で、 それぞれ aliases(5)、.forward ファイルまたは :include: ファイルでの コマンドを許可します。
例:
allow_mail_to_commands = alias,forward,include
local(8) が外部ファイルへメールを配送するのを制限します。 デフォルトでは :include: ファイルで "/file/name" を配送先と するのを認めません (この用例を定義している文章は aliases(5) を 参照してください)。
"/file/name" 配送先を許可するためには、次のうちゼロ個または それ以上を指定してください: alias、forward または include で、それぞれ aliases(5)、.forward ファイルまたは :include: ファイルで "/file/name" 配送先を許可します。
例:
allow_mail_to_files = alias,forward,include
受信者アドレスが最初の文字として `-' を持つことを許可します。 コマンドラインでEメールアドレスを渡すソフトウェアでの事故を避ける ため、デフォルトではこれを認めません。
"user%domain" の形から "user@domain" への書き換えを有効にします。 これはデフォルトで有効になっています。
例:
allow_percent_hack = no
信頼していないクライアントから $relay_domains にマッチする配送先へ、 送信者が指定したルーティング (user[@%!]remote[@%!]site) を持つメールを 転送します。
デフォルトでは、この機能は無効になっています。これはバックアップ MX ホストが騙されてジャンクメールをプライマリ MX ホストに転送してしまい、 spam が世界中に送られてしまうことになる、厄介なオープンリレーの 抜け穴を塞ぎます。
このパラメータは送信者が指定したルーティングを持つ非ローカルアドレスが Postfix access テーブルにマッチできるかどうかも制御します。 デフォルトでは、そのようなアドレスは曖昧であるため Postfix access テーブルにはマッチできません。
コマンドラインの "-c config_directory" で指定されたり MAIL_CONFIG 環境変数パラメータで指定される、非デフォルトな Postfix 設定 ディレクトリのリスト。
このリストはデフォルトの Postfix 設定ディレクトリで指定されなければ なりません。またこのリストは postqueue(1) や postdrop(1) のような set-gid された Postfix コマンドによって使われます。
Postfix メールシステムが受け取ったメッセージそれぞれの "blind carbon copy" を受け取る、オプションのアドレス。
注意: BCC アドレス宛のメールがバウンスすると、送信者に返されます。
クライアントの接続速度やその他の速度の計算に用いられる単位時間。
この機能は安定版 Postfix 2.1 リリースには含まれない anvil(8) サービスに よって実装されています。
デフォルトの間隔はかなり短いです。更新の頻度が高いため、anvil(8) サーバは揮発性メモリしか使いません。つまり、プロセスが終了すると 情報は失われます。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
anvil(8) 接続および速度制限サーバが使用量のピーク情報をログに 記録する頻度。
この機能は安定版 Postfix 2.1 リリースには含まれない anvil(8) サービスに よって実装されています。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
ドメイン情報のないメールアドレスに文字列 "@$myorigin" を付け加えます。
この機能はデフォルトで有効になっており、無効にしてはいけません。 Postfix はドメインのないアドレスをサポートしていません。
".domain" 情報のないアドレスに文字列 ".$mydomain" を付け加えます。
この機能はデフォルトで有効になっています。無効にするとユーザは "user@partialdomainname" にメールを送れなくなり、代わりに フルドメイン名を指定しなければならなくなります。
コマンドがサーバの入力バッファに入ってくる要求を諦めずに待つ時間の長さ。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
この機能は Postfix 2.1 以降で使えます。
XVERP コマンドを指定できる SMTP クライアント。 このコマンドは同時に1つの受信者に、受信者ごとのリターンアドレスを 付けてメールを配送するように要求します。
デフォルトでは、信頼されたクライアントのみが XVERP を指定することが 許されます。
このパラメータは Postfix バージョン 1.1 で導入されました。Postfix バージョン 2.1 では、このパラメータは smtpd_authorized_verp_clients に 改名され、デフォルト値はなくなりました。
カンマや空白で区切った network/netmask パターンのリストを指定して ください。mask にはホストアドレスのネットワーク部分のビット数を 指定します。ホスト名や .domain 名 (最初にドットを付けると domain 以下のあらゆる名前にマッチするようになります)、"/file/name"、 "type:table" パターンを指定することもできます。"/file/name" パターンは その内容で置き換えられます; "type:table" 検索テーブルはテーブルの エントリが検索文字列にマッチするとマッチします (検索結果は無視 されます)。次の行を空白で始めることで長い行を継続します。
古いバージョンの Postfix でも読める、追加の bounce(8) ログファイル レコードを生成します。洗練された機能を実装するには現状および より拡張可能な "name = value" という書式が必要です。
この機能は Postfix 2.1 以降で使えます。
Berkeley DB hash もしくは btree テーブルを作成するプログラムのための、 テーブルごとの I/O バッファサイズ。バイト数を指定します。
この機能は Postfix 2.0 以降で使えます。
Berkeley DB hash もしくは btree テーブルを読み込むプログラムのための、 テーブルごとの I/O バッファサイズ。バイト数を指定します。
この機能は Postfix 2.0 以降で使えます。
"mail loops back to myself" エラー条件を検出した場合に Postfix クライアントがメールを送るべき場所。これはローカル MTA が $mydestination や $inet_interfaces、$proxy_interfaces、 $virtual_alias_domains、$virtual_mailbox_domains にリストアップ されていない配送先の SMTP メール交換機の場合に起こります。 デフォルトでは、Postfix SMTP クライアントはそのようなメールを 配送できないものとして返します。
例えば、SMTP クライアントからのメールを local(8) 配送エージェントに 渡すには "best_mx_transport = local" を指定します。master.cf に 定義されているメッセージ配送 "transport" または "transport:nexthop" を 指定することもできます。"transport" や "transport:nexthop" の 文法や意味は transport(5) マニュアルページを参照してください。
しかし、この機能は local(8) 配送エージェントが仕事をしている間 Postfix SMTP クライアントプロセスを拘束してしまうため、負荷が高く なります。ホスティングしているドメインを全てテーブルやデータベースに リストアップしておくのが (Postfix にとって) より効果的です。
ローカル biff サービスを使うかどうか。このサービスは UNIX コマンド "biff y" で新着メール通知を要求したユーザに "新着メール" 通知を 送ります。
互換性の理由から、この機能はデフォルトで有効になっています。 インタラクティブユーザの多いシステムでは、biff サービスが パフォーマンスの浪費になるかもしれません。無効にするには "biff = no" を 指定します。
body_checks(5) マニュアルページに書かれているようなコンテンツ検査を おこなう、オプションの検索テーブル。
注意: バージョン 2.0 以前の Postfix では、これらのルールは最初の メッセージヘッダの後のコンテンツ全てを検査します。
$body_checks 検査を受けるメッセージ本体セグメント (もしくは添付、 この単語の方がよければ) のテキストの量。 テキストの量は巨大な添付ファイルのスキャンを避けるために制限されます。
この機能は Postfix 2.0 以降で使えます。
Postfix が配送しなかったメールのヘッダ、および Postfix が 受け取らなかったメールの SMTP 対話の写しを持つ、ポストマスターへの 通知の受信者。この機能は notify_classes パラメータで有効になっています。
配送できないと見なすまでに、バウンスメッセージがキューに入っている 最大の時間。デフォルトでは、通常のメールに対するキューの寿命と同じです。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は d (日) です。
メール配送の試行を1回だけにするには 0 を指定します。
この機能は Postfix 2.1 以降で使えます。
bounce(8) サービスの名前。このサービスは失敗した配送試行の記録を管理し、 不達通知を生成します。
この機能は Postfix 2.0 以降で使えます。
不達通知で送られるオリジナルメッセージテキストの最大量。バイト数を 指定します。
古いバージョンの AUTH コマンド (RFC 2554) を実装した SMTP クライアントとの相互運用性を有効にします。このようなクライアントには MicroSoft Outlook Express バージョン 4 や MicroSoft Exchange バージョン 5.0 といった例があります。
標準的でない方法の AUTH サポートを Postfix に案内させるには、 "broken_sasl_auth_clients = yes" を指定します。
オプションのメッセージヘッダおよびエンベロープのアドレスマッピング 検索テーブル。マッピングは送信者アドレスと受信者アドレスの両方に 適用されます。これは典型的には、古いメールシステムの汚いアドレスを きれいにしたり、ログイン名を Firstname.Lastname で置き換えるのに 使われます。テーブルの書式と検索は canonical(5) に記述されています。
この機能を使う場合、必要な DBM または DB ファイルを作るために、 更新するたびに "postmap /etc/postfix/canonical" を実行して ください。変更は1分程度で反映されます。遅延をなくすには "postfix reload" を使ってください。
例:
canonical_maps = dbm:/etc/postfix/canonical canonical_maps = hash:/etc/postfix/canonical
cleanup(8) サービスの名前。このサービスはアドレスを標準的な形式に 書き換え、canonical(5) アドレスマッピングと virtual(5) エイリアシングを 実行します。
この機能は Postfix 2.0 以降で使えます。
全ての Postfix 管理コマンドの場所。
$mailbox_command の $name 展開で local(8) 配送エージェントが許す 文字を制限します。許可されたセット以外の文字はアンダースコアで置き換え られます。
外部コマンドへの配送の時間制限。この制限は local(8) 配送エージェントに よって使われます。また pipe(8) 配送エージェントによる配送のデフォルトの 時間制限でもあります。
注意: この時間制限を大きな値に設定するのであれば、一般的な ipc_timeout パラメータも同様に更新しなければいけません。
Postfix main.cf および master.cf 設定ファイルのデフォルトの場所。 これは以下のメカニズムを通して上書きされます:
MAIL_CONFIG 環境変数 (デーモンプロセスおよびコマンド)。
"-c" コマンドラインオプション (コマンドのみ)。
set-gid 権限で動く Postfix コマンドでは、config_directory を上書き するには、root 権限でおこなうか、デフォルトの main.cf ファイルの alternate_config_directories パラメータでディレクトリがリストアップ されていることが必要です。
キューに入った後でメールをフィルタリングするメール配送 transport の 名前。
このパラメータは Postfix transport(5) テーブルの右側部分と同じ文法を 使います。この設定は access(5) テーブルや header_checks(5)、 body_checks(5) テーブルで指定されるコンテンツフィルタよりも優先度は 下です。
Postfix サポートプログラムおよびデーモンプログラムがあるディレクトリ。 これらは人間によって直接呼び出されるべきではありません。ディレクトリは root が所有しなければいけません。
ビルトイン監視タイマーによって終了するまでの、Postfix デーモン プロセスが要求を扱うことができる時間。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
リモートクライアントまたはサーバが debug_peer_list パラメータの パターンにマッチした場合の、冗長ログレベルの増分。
冗長ログレベルを $debug_peer_level で指定された量だけ増加させる、 リモートクライアントまたはサーバのホスト名またはネットワークアドレスの パターンのオプションのリスト。
ドメイン名や network/netmask パターン、"/file/name" パターン、 "type:table" 検索テーブルを指定します。検索テーブルからの結果は 無視されます。
ドメイン名のパターンマッチは parent_domain_matches_subdomains パラメータによって制御されます。
例:
debug_peer_list = 127.0.0.1 debug_peer_list = some.domain
Postfix デーモンプログラムが -D オプション付きで呼ばれたときに 実行される外部コマンド。
処理が進む前にデバッガを装着するために、"command .. & sleep 5" を 使ってください。X ベースのデバッガを使うのであれば、Postfix を 起動する前に XAUTHORITY 環境変数を設定していることを確認してください。
例:
debugger_command = PATH=/usr/bin:/usr/X11R6/bin xxgdb $daemon_directory/$process_name $process_id & sleep 5
newaliases(1) や postalias(1)、postmap(1) コマンドで使う、 デフォルトのデータベース形式。多くの UNIX システムでは、デフォルトの 形式は dbm か hash のどちらかです。デフォルトの設定は Postfix システムが構築される際に固定されます。
例:
default_database_type = hash default_database_type = dbm
Postfix キューマネージャのスケジューラがあるメッセージを他のメッセージの 配送に割り込みを許す頻度。
それぞれの transport はいわゆる「利用可能な配送スロットカウンタ」を 管理します。あるメッセージは、他のメッセージが現在蓄積している (または最終的に蓄積する - 以下の slot loan を参照) メッセージカウンタ よりも配送スロット (すなわち配送エージェントの呼び出し) が少なければ、 そのメッセージによって割り込まれます。このパラメータはカウンタが増加する 頻度を制御します - default_delivery_slot_cost の受信者数に配送される ごとに増加します。
完全に割り込みスケジューリングを無効にするには、コストとして 0 を 使います。スケジューリングアルゴリズムが使える最小値は 2 です - メッセージスループット速度を最大にしたければ、この値を使ってください。 最大値はありませんが、およそ 50 を超える値を使うのは意味がありません。
2という値がデフォルトではないのは、このパラメータがメーリングリストの メール配送に影響を及ぼすというのが唯一の理由です。最悪の場合、 それらの配送は割り込みスケジュールが無効になっている場合のおよそ (cost+1/cost) から (cost/cost-1) 倍になります。5というデフォルト値は、 最悪の場合でもメーリングリストの配送が 20-25 パーセント以上伸びない ことが確認されており、合理的なメッセージ応答時間が得られることが わかっています。
例:
default_delivery_slot_cost = 0 default_delivery_slot_cost = 2
transport に特有の _delivery_slot_discount 設定のデフォルト値。
このパラメータはメッセージ割り込みが起こった瞬間の速度を上げます。 要求された配送スロットの量が全て使えるようになるのを待つのではなく、 要求量プラス transport_delivery_slot_loan の transport_delivery_slot_discount パーセントが蓄積を待って残っていれば、 割り込みが起こります。後で他の割り込みが起こる場合には、その前に 全量が蓄積していなければいけないことに注意してください。
transport に特有の _delivery_slot_loan 設定のデフォルト値。
このパラメータはメッセージ割り込みが起こった瞬間の速度を上げます。 要求された配送スロットの量が全て使えるようになるのを待つのではなく、 要求量プラス transport_delivery_slot_loan の transport_delivery_slot_discount パーセントが蓄積を待って残っていれば、 割り込みが起こります。後で他の割り込みが起こる場合には、その前に 全量が蓄積していなければいけないことに注意してください。
同じ配送先への並列配送の、デフォルトの最大数。これは lmtp(8) や pipe(8)、smtp(8)、virtual(8) 配送エージェントを使った配送のデフォルトの 制限です。
メッセージ配送ごとの受信者数の、デフォルトの最大数。これは lmtp(8) や pipe(8)、smtp(8)、virtual(8) 配送エージェントを使った配送のデフォルトの 制限です。
このパラメータの値を1に設定すると、対応する配送先ごとの並列制限は ドメインごとの並列度から受信者ごとの並列度へと意味を変えます。
transport ごとの予備のメモリ内受信者数に課せられる制限のデフォルト値。 Postfix キューマネージャのスケジューラがあるメッセージに他の メッセージを割り込みが入り、パフォーマンス低下を避けるために 選択されたメッセージが急に余計な受信者スロットを必要とした場合の ために、予備の受信者空間が予約されます。
Postfix キューマネージャのスケジューリングアルゴリズムを呼び出さなければ ならなくなる、1メッセージの受信者の数。少なくともこの配送スロット数まで 蓄積していない(スロットコストパラメータの制約も受けます) メッセージは 割り込みを受けません。
外部ファイルまたはコマンドへの配送で、local(8) 配送エージェントが使う デフォルトの権限。これらの権限は root が所有する aliases(5) ファイルから配送が要求されたり、root の代理として配送が なされる際に使われます。特権ユーザや POSTFIX の所有者を指定しては いけません。
指定されたサービスを提供する Postfix 子プロセスの、デフォルトの最大数。 この制限は master.cf ファイルの特定のサービスに対して上書きできます。
RBL ベースの制限で拒否された要求に対する、デフォルトの SMTP サーバ 応答のテンプレート。このテンプレートはオプションの rbl_reply_maps 検索テーブルのエントリで指定することで上書きできます。
この機能は Postfix 2.0 以降で使えます。
テンプレートはちょうど1レベルの $name 置き換えを受けます:
$name の代わりに ${name} や $(name) も指定できます。
メモリ内受信者数の transport ごとのデフォルトの上限。メッセージが それぞれの transport に割り振られた後は、これらの制限は一般的な qmgr_message_recipient_limit よりも優先されます。 default_extra_recipient_limit や qmgr_message_recipient_minimum も 参照してください。
$mydestination、$inet_interfaces、$proxy_interfaces、 $virtual_alias_domains、$virtual_mailbox_domains または $relay_domains にマッチしなかったドメイン宛の、デフォルトのメール配送 transport。 この情報は transport(5) テーブルで上書きできます。
transport:nexthop という形の文字列を指定します。ここで transport は master.cf に定義されたメール配送 transport の 名前です。:nexthop 部分はオプションです。より詳細は transrport(5) マニュアルページを参照してください。
例:
default_transport = uucp:relayhostname
デフォルトの2つの VERP 区切り文字。これらは SMTP XVERP コマンドや "sendmail -V" コマンドラインオプションで指定された明示的な 区切り文字が指定されていない場合に使われます。verp_delimiter_filter 設定で許可されている文字を指定してください。
この機能は Postfix 1.1 以降で使えます。
リモート SMTP クライアントの要求が "defer" 制限で拒否された場合の、 数字の Postfix SMTP サーバ応答コード。
RFC 821 を完全に理解していないのであれば、これを変更しないでください。
defer(8) サービスの名前。このサービスは失敗した配送試行の記録を管理し、 不達通知を生成します。
この機能は Postfix 2.0 以降で使えます。
誰かが "sendmail -q" または等価なものを実行しなければ配送される べきではないメッセージ配送 transport の名前。master.cf の最初の フィールドに現れるメール配送 transport の名前をゼロ個もしくは それ以上指定します。
例:
defer_transports = smtp
$delay_warning_time 時間単位内に送れなかったメールのメッセージ ヘッダを持つ、ポストマスターへの通知の受信者。
この機能は delay_warning_time パラメータで有効になります。
依然としてキューに入っているメールのメッセージヘッダを送信者が 受け取るまでの時間。
この機能を有効にするには、ゼロ以外の整数値を指定します。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は h (時) です。
メールボックスファイルや bounce(8) ログファイルの排他的ロックを 獲得しようとする最大回数。
メールボックスファイルや bounce(8) ログファイルの排他的ロックを 獲得しようとする時間間隔。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
Postfix SMTP および LMTP クライアントでの DNS 検索を無効にします。 無効になると、通常は /etc/hosts も検索する gethostbyname() システム ライブラリルーチンを使ってホストが検索されます。
デフォルトでは DNS 検索は有効になっています。
メール受信中の MIME 処理を無効にします。これは Content-Type: メッセージ ヘッダを特別扱いせず、最初のメッセージヘッダの後にある全てのテキストは メッセージ本体の一部と見なされることを意味します。
この機能は Postfix 2.0 以降で使えます。
MIME 入力の処理はデフォルトで有効になっており、これはメッセージの 中身で MIME ヘッダを認識するのに必要です。
8BITMIME 形式から 7BIT 形式への変換を無効にします。MIME 出力の変換は 配送先が 8BITMIME サポートを案内しない場合に必要です。
この機能は Postfix 2.0 以降で使えます。
受信者ごとに1つのバウンスレポートを送らないようにします。
受信者ごとに1つというデフォルトは ezmlm が必要としているものです。
この機能は Postfix 1.1 以降で使えます。
SMTP VRFY コマンドを無効にします。これはEメールアドレス収集に使われる あるテクニックを止めます。
例:
disable_vrfy_command = no
キューファイルを削除せずに、それらを "saved" メールキューに保存します。 これはデバッグを助けます。エンベロープ情報や Postfix キューファイルの 中身を調べるには、postcat(1) コマンドを使ってください。
メールシステムによって生成されるポストマスターへの通知の送信者アドレス。 このアドレスへの全てのメールは、メールバウンスループを終わらせるために、 静かに破棄されます。
aliases(5) または virtual(5) エイリアスの展開や showq(8) キューの 表示に対して、アドレス複製フィルタが記憶するアドレスの最大数。
null アドレス宛のメールの受信者。Postfix はそのようなアドレスを SMTP コマンドでは受けませんが、設定やソフトウェアエラーの結果として ローカルで生成される可能性があります。
エンベロープ送信者アドレスの代わりに、非標準的な Error-To: メッセージ ヘッダで指定されたアドレスにメール配送エラーを報告します。 Postfix 2.1 以降ではこのサポートはデフォルトで無効になっており、 それ以前のバージョンの Potfix では常に有効です。
X-Original-To メッセージヘッダのサポートを有効にします。このヘッダは 受信者が複数いるメールボックスに必要です。
このパラメータが yes に設定されていると、cleanup(8) デーモンは (元の受信者、書き換えられた受信者) の厳密な組み合わせの重複をなくし、 元の受信者が空ではないキューファイル記録を生成します。
このパラメータが no に設定されていると、cleanup(8) デーモンは 書き換えられた受信者アドレスだけの重複をなくし、元の受信者が空の キューファイル記録を生成します。
この機能は Postfix 2.1 以降で使えます。Postfix 2.0 では、X-Original-To メッセージヘッダのサポートは常に有効です。2.0 以前のバージョンの Postfix では、X-Original-To メッセージヘッダのサポートはありません。
ポリシー、リソース、ソフトウェアまたはプロトコルエラーによって 起きたメール配送問題に関するポストマスターへの通知の受信者。これらの 通知は notify_classes パラメータで有効にされます。
error(8) 疑似配送エージェントの名前。このサービスは常にメールを 配送できないものとして返します。
この機能は Postfix 2.0 以降で使えます。
対応する "owner-aliasname" エイリアスを持つエイリアス "aliasname" への 配送時に、エンベロープ送信者アドレスとして "owner-aliasname" エイリアスを展開したものをセットします。通常は、Postfix はエンベロープ 送信者アドレスを "owner-aliases" エイリアスの名前にセットします。
Postfix プロセスが非 Postfix プロセスに渡す環境変数のリスト。 System-V 系のシステムで時間を健全に保つには TZ 変数が必要です。
名前や name=value の組を空白またはカンマで区切ったリストを指定します。
例:
export_environment = TZ PATH=/bin:/usr/bin
メールが "sendmail -t" で投函された際に、Postfix がメッセージヘッダから 抽出する受信者アドレスの最大数。
この機能は Postfix 2.1 で削られました。
見つからなかったり到達できない SMTP 配送先への、オプションのリレー ホストのリスト。
デフォルトでは、配送先が見つからない場合にはメールは送信者に返され、 配送先に到達できない場合には配送が遅延されます。
fallback relay は SMTP による配送先でなければいけません。ドメイン、 ホスト、host:port、[host]:port、[address] または [address]:port を 指定します; [host] の形式は MX 検索を無効にします。複数の SMTP 配送先を指定すると、Postfix は指定された順でそれらを試します。
aliases(5) データベースや UNIX passwd データベースに名前が見つからない 場合に、local(8) 配送エージェントが使う、オプションのメッセージ配送 transport。
配送先ごとのログファイルに適格な配送先で、それらの配送先宛のキューに 入ったメールを持つものの、オプションのリスト。
デフォルトでは、Postfix は Postfix SMTP サーバがリレーしようとする 配送先に対してのみ、"高速flush" ログファイルを管理します (すなわち デフォルトは "fast_flush_domains = $relay_domains"; postconf(5) マニュアルの relay_domains パラメータを参照してください)。
ホストまたはドメイン、"/file/name" パターン、"type:table" 検索テーブルを カンマや空白で区切って指定してください。次の行を空白で始めることで 長い行を継続します。"/file/name" パターンはその内容で置き換えられます; "type:table" 検索テーブルはドメインまたはその親ドメインが検索キーとして 現れるとマッチします。
この機能を完全に無効にするには "fast_flush_domains =" を指定します。
空の配送先ごとの "高速 flush" ログファイルが削除されるまでの時間。
数値、または数字に時間単位を示す文字を付けて時間を指定できます: s=秒、m=分、h=時間、d=日、w=週。デフォルトの時間単位は日です。
空ではないが読まれていない 配送先ごとの "高速 flush" ログファイルの 更新が必要となるまでの時間。ログファイルの内容はログファイルに リストアップされた全てのメッセージの配送を要求することで更新されます。
数値、または数字に時間単位を示す文字を付けて時間を指定できます: s=秒、m=分、h=時間、d=日、w=週。デフォルトの時間単位は時間です。
内部テストの失敗がないと再現が難しいエラーの扱いをテストするため、 特定の内部テストの失敗を強制します。
flush(8) サービスの名前。このサービスはキューに入っているメールの キューファイル名を持つ配送先ごとのログファイルを管理します。
この機能は Postfix 2.0 以降で使えます。
子プロセスを fork() しようとする最大回数。
子プロセスの fork() 試行間に入れる遅延。
時間単位: s (秒), m (分), h (時間), d (日), w (週)。デフォルトの 時間単位は s (秒) です。
$forward_path の $name 展開で local(8) 配送エージェントが許す 文字を制限します。許可されたセット以外の文字はアンダースコアで置き換え られます。
許可されたセット以外の文字はアンダースコアで置き換えられます。
ユーザが指定した配送方法が書かれた .forward ファイルを見つけるための、 local(8) 配送エージェント検索リスト。最初に見つかったファイルが 使われます。
実際に検索を始める前に、forward_path では以下のように展開されます:
$name の代わりに ${name} や $(name) も指定できます。
例:
forward_path = /var/forward/$user forward_path = /var/forward/$user/.forward$recipient_delimiter$extension, /var/forward/$user/.forward
hash_queue_names パラメータにリストアップされたキューディレクトリの、 サブディレクトリレベル数。
hash_queue_names または hash_queue_depth パラメータの変更後は、 コマンド "postfix reload" を実行してください。
複数のサブディレクトリレベルにわたって分割されるキューディレクトリの 名前。
hash_queue_names または hash_queue_depth パラメータの変更後は、 コマンド "postfix reload" を実行してください。
アドレスメッセージヘッダ内で許されるアドレストークンの最大数。 制限を超えた情報は破棄されます。 この制限は cleanup(8) サーバによって強制されます。
header_checks(5) マニュアルページに書かれているような、非 MIME な 最初のメッセージヘッダのコンテンツ検査をおこなう、オプションの検索 テーブル。
メッセージヘッダを格納するメモリの、バイト単位の最大量。 それよりもヘッダが大きい場合、超過分は破棄されます。この制限は cleanup(8) サーバによって強制されます。
問題のある設定をログで警告し、参考になる忠告を提供します。
この機能は Postfix 2.0 以降で使えます。
オプションのメールボックスファイルの local(8) ユーザのホーム ディレクトリからの相対パス名。
qmail 形式の配送をするには、"/" で終わるパス名を指定します。
local(8) 配送機能の優先度は高いものから低いものの順に: aliases、.forward files、mailbox_transport、mailbox_command_maps、 mailbox_command、home_mailbox、mail_spool_directory、fallback_transport そして luser_relay。
例:
home_mailbox = Mailbox home_mailbox = Maildir/
最初のメッセージヘッダで許される Received: メッセージヘッダの最大数。 制限を超えたメッセージはメーラループを止めるためにバウンスされます。
Postfix サブシステムや機能に関する構築方法や設定方法、操作方法が 書かれた Postfix HTML ファイルの場所。
応答しない DNS MX 検索を無視します。デフォルトでは、Postfix SMTP クライアントは配送を遅延し、しばらくしてから再試行します。 この振る舞いは SMTP 標準によって要求されています。
代わりに DNS A レコード検索を強制するには、 "ignore_mx_lookup_error = yes" を指定してください。これは SMTP 標準からはずれており、メールの配送ミスを起こす可能性があります。
Postfix プロセスが非 Postfix 親プロセスから受け取る環境変数 パラメータのリスト。関連するパラメータの例:
名前や name=value の組のリストを空白またはカンマで区切って指定します。 name=value 形式は Postfix 2.1 以降でサポートされています。
メッセージ到着速度がメッセージ配送速度を超えた場合に、新しいメッセージを 受ける前に一時停止する時間。この機能はデフォルトで有効になっています (SCO バグのため、SCO UNIX では無効にされています)。
デフォルトの 100 SMTP サーバプロセス制限では、"in_flow_delay = 1s" は1秒あたりのメッセージ配送数を超えて入ってくるメールを 毎秒 100 メッセージに制限します。
この機能を無効にするには 0 を指定します。有効な遅延は 0..10 です。
このメールシステムがメールを受け取るネットワークインターフェース アドレス。デフォルトでは、マシン上でアクティブな全てのインターフェースを ソフトウェアは要求します。このパラメータは user@[ip.address] 宛の メールの配送も制御します。
プロキシやアドレス変換を通って転送されてくるネットワークアドレスに ついては、proxy_interfaces パラメータも参照してください。
注意: このパラメータを変更したら Postfix を stop してから start する 必要があります。
同じ配送先に並列で配送する際の、配送先ごとの並列度の初期値。この制限は smtp(8) を使った配送や、pipe(8) や virtual(8) 配送エージェントを使った 配送に適用されます。
警告: 並列度を 1 にすると、悪いメッセージが1つあるだけであるサイトへの 全てのメールを止めてしまうことになりかねません。
クライアントの HELO または EHLO コマンドパラメータが reject_invalid_hostnam 制限で拒否された場合の、数字の Postfix SMTP サーバ応答コード。
RFC 821 を完全に理解していないのであれば、これを変更しないでください。
アイドル状態になっている内部接続チャネルをクライアントが閉じるまでの 時間。これはサーバがアイドル状態になったあとで、自主的に終了できる ようにすることが目的です。これは例えばアドレス解決および書き換え クライアントによって使われます。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
内部通信チャネルを通して情報を送受信する際の時間制限。これは デッドロック状態を打破するのが目的です。制限時間を超えると、 ソフトウェアは致命的エラーを出して強制終了します。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
アクティブな内部通信チャネルをクライアントが閉じるまでの時間。これは クライアントが制限に達した際に、サーバが自主的に終了できるように することが目的です。これは例えばアドレス解決および書き換え クライアントによって使われます。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
この機能は Postfix 2.1 以降で使えます。
入力時に、長い行は最大でこの長さの断片に分けられます; 配送時には 長い行は再構築されます。
$max_idle 秒になるまで Postfix LMTP クライアントの接続を開いたままに します。LMTP クライアントが同じ接続を要求された際に、接続は再利用 されます。
キャッシュされた接続の効率は使用中の LMTP サーバの数と LMTP クライアントに対して指定された並列度の制限によって決まります。 キャッシュされた接続は以下のいずれかの条件で閉じられます:
これらの制限の多くは Postfix が複数の LMTP クライアントプログラムで 共有する接続キャッシュを実装したときになくなる予定です。
TCP 接続を完了するまでの LMTP クライアントの時間制限、またはゼロ (オペレーティングシステムのビルトイン時間制限を使います)。期限までに 接続できないと、LMTP クライアントはメール交換機リストの次のアドレスを 試行します。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
例:
lmtp_connect_timeout = 30s
LMTP "." を送り、サーバの応答を受け取るまでの、LMTP クライアントの 時間制限。期限までに応答を受けないと、メールが複数回配送されるかも しれないという警告がログに記録されます。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
LMTP DATA コマンドを送り、サーバの応答を受け取るまでの、LMTP クライアントの時間制限。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
LMTP メッセージコンテンツを送る際の LMTP クライアントの時間制限。 接続が $lmtp_data_xfer_timeout 以上の時間行き詰まると、LMTP クライアントは転送を終了します。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
lmtp メッセージ配送 transport を使った同じ配送先への並列配送の最大数。 この制限はキューマネージャによって強制されます。メッセージ配送 transport の名前は master.cf ファイルのエントリの最初のフィールドです。
lmtp メッセージ配送 transport を使った、配送ごとの受信者の最大数。 この制限はキューマネージャによって強制されます。メッセージ配送 transport の名前は master.cf ファイルのエントリの最初のフィールドです。
このパラメータの値を1に設定すると、lmtp_destination_concurrency_limit の意味がドメインごとの並列度から受信者ごとの並列度に変わります。
LMTP グリーティングバナーを受け取るまでの LMTP クライアントの時間制限。 サーバがグリーティングバナーを送らずに接続を落としたり、期限までに グリーティングバナーを送らないと、LMTP クライアントはメール交換機 リストの次のアドレスを試行します。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
MAIL FROM コマンドを送り、サーバの応答を受け取るまでの、LMTP クライアントの時間制限。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
QUIT コマンドを送り、サーバの応答を受け取るまでの、LMTP クライアントの 時間制限。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
RCPT TO コマンドを送り、サーバの応答を受け取るまでの、LMTP クライアントの時間制限。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
RSET コマンドを送り、サーバの応答を受け取るまでの、LMTP クライアントの 時間制限。LMTP クライアントはキャッシュされた接続がまだ生きているか どうかを知るために RSET を送ります。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
Postfix LMTP クライアントの SASL 認証を有効にします。
ホストまたはドメインごとに1つの username:password エントリを持つ、 オプションの LMTP クライアント検索テーブル。リモートホストや リモートドメインの username:password エントリがない場合、Postfix LMTP クライアントはそのリモートホストに対して認証を試そうとしません。
Postfix LMTP クライアントで使うことが許される認証メカニズム。 使用できる認証メカニズムのリストはシステムに依存します。
例:
lmtp_sasl_security_options = noplaintext
LMTP LHLO サーバ応答が XFORWARD サポートを通知した場合に、LMTP サーバに XFORWARD コマンドを送ります。これはコンテンツフィルタによるメッセージの 差し挟みに使われる lmtp(8) 配送エージェントが元のクライアントの 名前やアドレス、プロトコル、HELO 名をコンテンツフィルタや下流で キューイングする LMTP サーバに転送できるようにします。 値を yes に変更する前に、コンテンツフィルタがこのコマンドをサポート しているか確認するのがよいでしょう。
この機能は Postfix 2.1 以降で使えます。
LMTP QUIT コマンドへの応答を待ちます。
Postfix LMTP クライアントが接続する、デフォルトの TCP ポート。
XFORWARD コマンドを送り、サーバの応答を受け取るまでの、LMTP クライアントの時間制限。
問題が起こった場合、クライアントはメール交換機リストの次のアドレスを 「試しません」。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
この機能は Postfix 2.1 以降で使えます。
local(8) が非 Postfix コマンドに配送する際の、オプションのシェル プログラム。デフォルトでは、非 Postfix コマンドは直接実行されます; コマンドがシェルのメタ文字やシェルビルトインコマンドを含んでいる 場合に限り、コマンドは /bin/sh に与えられます。
"sendmail's restricted shell" (smrsh) は例えば .forward ファイルから 実行できるプログラムを制限するために、最も多くの人が使うものでしょう (smrsh は Sendmail 配布物の一部です)。
注意: シェルプログラムが指定されると、コマンドがシェルビルトイン コマンドやメタ文字を含んでいない場合でもそれが呼ばれます。
例:
local_command_shell = /some/where/smrsh -c
local メール配送 transport を使った同じ受信者への並列配送の最大数 ("local_destination_recipient_limit = 1" の場合)、または同じ ローカルドメインへの並列配送の最大数 ("local_destination_recipient_limit > 1" の場合)。この制限はキュー マネージャによって強制されます。メッセージ配送 transport の名前は master.cf ファイルのエントリの最初のフィールドです。
.forward ファイルやエイリアスに (メーリングリストマネージャのような) 負荷の高いシェルコマンドがある場合だけに備えた、2という低い制限が 推奨されます。同時にこれらをたくさん動かす必要はないでしょう。
local メール配送 transport を使ったメッセージ配送ごとの、最大の 受信者数。この制限はキューマネージャによって強制されます。 メッセージ配送 transport の名前は master.cf ファイルのエントリの 最初のフィールドです。
このパラメータを1より大きい値に変更すると、 local_destination_concurrency_limit の意味が受信者ごとの並列度から ドメインごとの並列度に変わります。
ローカル受信者の全ての名前もしくはアドレスを持つ検索テーブル: ドメインが $mydestination や $inet_interfaces、$proxy_interfaces に マッチする受信者アドレスがローカルです。有効な受信者リストを持たない ドメインはワイルドカードとして @domain を指定します。 技術的には、$local_recipient_maps でリストアップされたテーブルは リストとして使われます: Postfix は検索文字列が見つかるかどうかだけを 知る必要があり、検索テーブルの結果は使いません。
このパラメータが空でなければ (デフォルトです)、Postfix SMTP サーバは 知らないローカルユーザ宛のメールを拒否します。
Postfix SMTP サーバでのローカル受信者チェックを無効にするには、 "local_recipient_maps =" (つまり空値) を指定します。
デフォルトの設定はローカル配送にデフォルトの Postfix local 配送 エージェントを使うことを想定しています。次の場合には local_recipient_maps 設定を更新する必要があります:
詳細は LOCAL_RECIPIENT_README ファイルに記述されています。
注意: Postfix SMTP サーバが chroot されて走っている場合、chroot アクセス制限を乗り越えるために proxymap(8) サービスを通して passwd ファイルにアクセスする必要があります。代わりにシステム パスワードファイルのコピーを chroot 監獄で管理するのは実用的では ありません。
例:
local_recipient_maps =
$mydestination、$inet_interfaces または $proxy_interfaces にマッチする ドメイン宛の、デフォルトのメール配送 transport。この情報は transport(5) テーブルで上書きできます。
デフォルトでは、ローカルメールは単に master.cf ファイルで定義された サービスの名前である "local" という transport に配送されます。
transport:nexthop という形式の文字列を指定します。ここで transport は master.cf で定義されたメール配送 transport の 名前です。:nexthop 部分はオプションです。詳細は transport(5) マニュアルページを参照してください。
注意: デフォルトの local 配送エージェントを上書きするのであれば、 LOCAL_RECIPIENT_README ドキュメントを再検討する必要があります。 そうしないと、SMTP サーバはローカルの受信者宛のメールを拒否してしまう かもしれません。
知らない local(8) 受信者全ての、オプションの配送先。デフォルトでは、 $mydestination や $inet_interfaces、$proxy_interfaces にマッチする ドメインの知らない受信者宛のメールは配送できないものとして返されます。
luser_relay では以下の $name 展開がおこなわれます:
$name の代わりに ${name} や $(name) を指定することもできます。
注意: luser_relay は Postfix local(8) 配送エージェントに対してのみ 働きます。
注意: UNIX パスワードファイルにないアカウントに対してこの機能を 使うのであれば、main.cf ファイルで "\fBlocal_recipient_maps =\fR" (つまり空値) を指定しなければいけません。そうしないと、Postfix SMTP サーバは非 UNIX アカウント宛のメールを "User unknown in local recipient table" として拒否してしまいます。
例:
luser_relay = $user@other.host luser_relay = $local@other.host luser_relay = admin+$local
Received: ヘッダや SMTP グリーティングバナー、バウンスされたメールに 表示されるメールシステム名。
Postfix キューおよびほとんどの Postfix デーモンプロセスを所有する UNIX システムアカウント。他のアカウントとグループを共有せず、システムの 他のファイルやシステムを所有しないユーザアカウント名を指定します。 特に、nobody や daemon を指定しないでください。「専用のユーザIDと グループIDを使ってください。」
"YYYYMMDD" 形式の Postfix リリース日。
local(8) UNIX 形式のメールボックスが置かれるディレクトリ。 デフォルトの設定はシステムの種類に依存します。maildir 形式で 配送するには、/ で終わる名前を指定します。
注意: maildir 配送は受信者の権限でおこなわれます。maildir 形式の配送で mail_spool_directory 設定を使う場合、前もってトップレベルの maildir ディレクトリを作らなければいけません。Postfix は作りません。
例:
mail_spool_directory = /var/mail mail_spool_directory = /var/spool/mail
メールシステムのバージョン。安定版は major.minor.patchlevel のように付けられています。 試験版はリリース日も含んでいます。バージョン文字列は、例えば SMTP グリーティングバナーで使われるかもしれません。
メールボックス配送に local(8) 配送エージェントが使う、オプションの 外部コマンド。コマンドは受信者のユーザ ID と主となるグループ ID 権限で 動きます。例外: root 宛のコマンド配送は $default_privs 権限で実行 します。1) root 宛のメールは実在ユーザにエイリアスされるべきであり、 2) root としてログインせず "su" を使うことから、これは問題では ありません。
以下の環境変数がコマンドに渡されます:
他の Postfix 設定パラメータとは異なり、mailbox_command パラメータは $name の置換を受けません。これはシェル文法の指定を容易にするためです (例を参照)。
シェルのメタ文字があると、Postfix は負荷の高いシェルプロセスを 走らせなければならなくなるため、できるだけ避けてください。Procmail を 使って配送しているのであれば、全体の負荷としてシェルでも大差 ないでしょう。
注意: システム全体のメール配送に mailbox_command 機能を使うのであれば、 root 宛のメールを実在のユーザに転送するようなエイリアスを作らなければ いけません。
local(8) 配送機能の優先度は高いものから低いものの順に: aliases、.forward files、mailbox_transport、mailbox_command_maps、 mailbox_command、home_mailbox、mail_spool_directory、fallback_transport そして luser_relay。
例:
mailbox_command = /some/where/procmail mailbox_command = /some/where/procmail -a "$EXTENSION" mailbox_command = /some/where/maildrop -d "$USER" -f "$SENDER" "$EXTENSION"
local(8) メールボックス配送で使われる、受信者ごとの外部コマンドを 持つ、オプションの検索テーブル。振る舞いは mailbox_command での指定と 同じです。
local(8) 配送機能の優先度は高いものから低いものの順に: aliases、.forward files、mailbox_transport、mailbox_command_maps、 mailbox_command、home_mailbox、mail_spool_directory、fallback_transport そして luser_relay。
配送しようとする前に UNIX 形式の local(8) メールボックスにロックする 方法。利用可能なファイルロック方法をリストアップするには、 "postconf -l" コマンドを使ってください。
\fBmaildir\fR 形式の配送では明示的なロックなしでも安全であるため、 この設定は無視されます。
注意: dotlock 方式では、メールボックスファイルの親ディレクトリに 受信者の UID または GID の書き込み権が必要です。
注意: このパラメータのデフォルトの設定はシステムに依存します。
local(8) の個々のメールボックスまたは maildir の最大サイズ、 もしくはゼロ (制限なし)。実際には、これは local(8) 配送エージェントに よって実行される外部コマンドが書き込むファイルも含めて、ローカル配送で 書かれるあらゆるファイルのサイズを制限します。
この制限はメッセージサイズ制限よりも小さくしてはいけません。
UNIX passwd データベースでの有無にかかわらず、全てのローカル受信者への メールボックス配送に local(8) 配送エージェントが使う、オプションの メッセージ配送 transport。
local(8) 配送機能の優先度は高いものから低いものの順に: aliases、.forward files、mailbox_transport、mailbox_command_maps、 mailbox_command、home_mailbox、mail_spool_directory、fallback_transport そして luser_relay。
Postfix mailq(1) コマンドがインストールされた場所を指定する Sendmail 互換機能。このコマンドは Postfix メールキューをリストアップするのに 使われます。
Postfix マニュアルページがインストールされた場所。
古い機能: 代わりに reject_rbl_client 機能を使ってください。
リモート SMTP クライアントの要求が reject_rbl_client や reject_rhsbl_client、reject_rhsbl_sender、reject_rhsbl_recipient 制限でブロックされた場合の、数字の Postfix SMTP サーバ応答コード。
RFC 821 を完全に理解していないのであれば、これを変更しないでください。
アドレスマスカレードを受けるアドレスの種類。
デフォルトでは、アドレスマスカレードはエンベロープ送信者アドレス、 およびヘッダ送信者・ヘッダ受信者アドレスに制限されます。 これにより、個々のマシンのユーザにメールを転送できるようにしたままで、 メールゲートウェイ上でアドレスマスカレードが使えるようになります。
次のゼロ個もしくはそれ以上を指定してください: envelope_sender、 envelope_recipient、header_sender、header_recipient
Eメールアドレスのサブドメイン構造が削られるドメインの、オプションの リスト。
リストは左から右へと処理され、最初にマッチしたところで処理を止めます。 つまり、
masquerade_domains = foo.example.com example.com
は "user@any.thing.foo.example.com" を "user@foo.example.com" までしか削りませんが、"user@any.thing.else.example.com" を "user@example.com" に削ります。
ドメイン名の前に ! をつけると、そのドメインやサブドメインはマスカレード しないことを意味します。つまり、
masquerade_domains = !foo.example.com example.com
は "user@any.thing.foo.example.com" や "user@foo.example.com" を変化 させませんがer@any.thing.else.example.com" を "user@example.com" へと 削ります。
例:
masquerade_domains = $mydomain
$masquerade_domains にマッチしてもアドレスマスカレードを受けない ユーザ名の、オプションのリスト。
デフォルトでは、アドレスマスカレードは例外を作りません。
ユーザ名、"/file/name" または "type:table" パターンを空白やカンマで 区切ったリストを指定します。リストは左から右へとマッチし、最初に マッチしたところで検索を止めます。リストから name を除外するには、 "!name" を指定します。"/file/name" パターンはその内容で置き換えられます; "type:table" 検索テーブルは name が検索キーにマッチするとマッチします (検索結果は無視されます)。次の行を空白で始めることで長い行を継続します。
例:
masquerade_exceptions = root, mailer-daemon masquerade_exceptions = root
Postfix デーモンプロセスが終了するまでに次のサービス要求を待つ最大時間。 Postfix キューマネージャはこのパラメータを無視します。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
Postfix デーモンプロセスが終了するまでの接続要求の最大数。Postfix キューマネージャや他の長生きな Postfix デーモンプロセスはこの パラメータを無視します。
遅延メッセージの配送を試行する最大の時間間隔。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
配送できないものとして送り返すまでに、メッセージがキューに入っている 最大の時間。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は d(日) です。
配送を1度だけしか試さないようにするのであれば、0 を指定します。
エンベロープ情報を含む、バイト単位のメッセージの最大サイズ。
MIME マルチパート境界文字列の最大長。MIME プロセッサは最初の $mime_boundary_length_limit 文字が異ならない境界文字列を区別することが できません。
この機能は Postfix 2.0 以降で使えます。
header_checks(5) マニュアルページに書かれているような、MIME に関連した メッセージヘッダのコンテンツ検査をおこなう、オプションの検索テーブル。
この機能は Postfix 2.0 以降で使えます。
MIME 処理で扱うマルチパートメールの最大のネストのレベル。Postfix は ネストが深いメールを拒否します。
この機能は Postfix 2.0 以降で使えます。
遅延メッセージの配送を試行する最小の時間間隔。このパラメータは到達 できない配送先が短期間・メモリ内配送状態キャッシュに保持される時間も 制限します。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
リモート SMTP クライアントの要求が reject_multi_recipient_bounce 制限でブロックされた場合の、数字の Postfix SMTP サーバ応答コード。
RFC 821 を完全に理解していないのであれば、これを変更しないでください。
この機能は Postfix 2.1 以降で使えます。
$local_transport メール配送 transport を使って配送されるドメインの リスト。デフォルトではこれは /etc/passwd および /etc/aliases の 全ての受信者を検索する Postfix local(8) 配送エージェントです。 SMTP サーバは受信者アドレスを $local_recipient_maps で確認し、 存在しない受信者を拒否します。ADDRESS_CLASS_README ファイルの ローカルドメインクラスも参照してください。
デフォルトの mydestination 値はローカルマシンの名前だけを指定して います。メールドメインゲートウェイ上では、$mydomain も含む べきでしょう。
$local_transport 配送方法は、メールシステムの user@[the.net.work.address] (IP アドレスは inet_interfaces および proxy_interfaces パラメータで指定されているもの) 宛のメールアドレスでも 選ばれます。
警告:
バーチャルドメインの名前は指定しないでください - これらの ドメインは別の場所で指定されます。詳細情報は VIRTUAL_README を 参照してください。
このマシンがバックアップ MX ホストになっているドメイン名は 指定しないでください。バックアップ MX ホストをセットアップする方法は STANDARD_CONFIGURATION_README を参照してください。
デフォルトでは、Postfix SMTP サーバは local_recipient_maps パラメータにリストアップされていない受信者宛のメールを拒否します。 local_recipient_maps や unknown_local_recipient_reject_code パラメータの記述は postconf(5) マニュアルを参照してください。
ユーザ名、"/file/name" または "type:table" パターンを空白やカンマで 区切ったリストを指定します。リストは左から右へとマッチし、最初に マッチしたところで検索を止めます。リストから name を除外するには、 "!name" を指定します。"/file/name" パターンはその内容で置き換えられます; "type:table" 検索テーブルは name が検索キーにマッチするとマッチします (検索結果は無視されます)。次の行を空白で始めることで長い行を継続します。
例:
mydestination = $myhostname, localhost.$mydomain $mydomain mydestination = $myhostname, localhost.$mydomain www.$mydomain, ftp.$mydomain
このメールシステムのインターネットドメイン名。デフォルトでは $myhostname から最初の要素を引いたものを使います。$mydomain は 他の多くの設定パラメータのデフォルト値として使われます。
例:
mydomain = domain.tld
このメールシステムのインターネットホスト名。デフォルトでは gethostname() から得た完全修飾ドメイン名を使います。$mydomain は 他の多くの設定パラメータのデフォルト値として使われます。
例:
myhostname = host.domain.tld
"よそ者" よりも多くの権限を持つ "信頼された" SMTP クライアントの リスト。
特に、"信頼された" SMTP クライアントは Postfix を通したメールの 中継が許可されます。postconf(5) マニュアルの smtpd_recipient_restrictions の記述を参照してください。
"信頼された" ネットワークアドレスのリストは手動で指定することも Postfix に指定させること (これがデフォルトです) もできます。 詳細な情報は mynetworks_style パラメータの記述を参照してください。
代わりに mynetworks リストを手動で指定することもできます。その場合、 Postfix は mynetworks_style の設定を無視します。
network/netmask パターンを空白やカンマで区切ったリストを指定します。 netmask にはホストアドレスのネットワーク部分のビット数を指定します。 "/file/name" や "type:table" パターンを指定することもできます。 "/file/name" パターンはその内容で置き換えられます; "type:table" 検索テーブルはテーブルエントリが検索文字列にマッチすると マッチします (検索結果は無視されます)。次の行を空白で始めることで 長い行を継続します。
例:
mynetworks = 168.100.189.0/28, 127.0.0.0/8 mynetworks = $config_directory/mynetworks mynetworks = hash:/etc/postfix/network_table
mynetworks パラメータのデフォルト値を生成する方法。これはリレー アクセス制御などのための信頼されたネットワークのリストです。
Postfix がローカルマシンのみを"信頼する"のであれば、 "mynetworks_style = host" を指定します。
Postfix がローカルマシンと同じ IP サブネットワークにある SMTP クライアントを"信頼する"のであれば、"mynetworks_style = subnet" を 指定します。 Linux では、インターフェースが "ifconfig" コマンドで 指定された場合にのみ正確に働きます。
Postfix がローカルマシンと同じ IP クラス A/B/C ネットワークにある SMTP クライアントを"信頼する"のであれば、"mynetworks_style = subnet" を 指定します。ダイアルアップサイトではこれを指定しないでください - Postfix がプロバイダのネットワーク全体を"信頼して"しまいます。 代わりに、mynetworks 設定パラメータに書かれているように、手動で 明示的に mynetworks リストを指定してください。
ドメイン名で、ローカルで投函されたメールはそこから来たように見え、 またローカルで投かんされたメールはそこに配送されます。 デフォルトの $myhostname は小さなサイトに適しているでしょう。 複数のマシンを持つドメインを運用しているのであれば、(1) これを $mydomain に変えるか、(2) それぞれの user を user@that.users.mailhost にエイリアスするような、ドメイン全体のエイリアスデータベースを 設定すべきです。
例:
myorigin = $mydomain
header_checks(5) マニュアルページに書かれているような、添付された メッセージの非 MIME メッセージヘッダのコンテンツ検査をおこなう、 オプションの検索テーブル。
この機能は Postfix 2.0 以降で使えます。
Postfix newaliases(1) コマンドの場所を指定している Sendmail 互換機能。 このコマンドは local(8) aliases(5) データベースを再構築するのに 使われます。
クライアントの要求が reject_non_fqdn_hostname や reject_non_fqdn_sender、reject_non_fqdn_recipient 制限で拒否された 場合の、数字の Postfix SMTP サーバ応答コード。
ポストマスターに報告されるエラークラスのリスト。デフォルトでは最も 深刻な問題のみが報告されます。偏執的な人はポリシー (UCE および メールのリレー) やプロトコルエラー (壊れたメールソフトウェア) の報告も 有効にしたいかもしれません。
エラークラスは:
例:
notify_classes = bounce, delay, policy, protocol, resource, software notify_classes = 2bounce, resource, software
アドレスのローカル部分が owner-listname および listname-request と なっているものを特別扱いします: recipient_delimiter が "-" に なっていても、そのようなアドレスを分割しません。この機能は メーリングリストに便利です。
明示的な ".domain.tld" パターンを要求する代わりに、自動的に "domain.tld" のサブドメインがマッチする Postfix の機能。これは 後方互換性を意図しています: 最終的には、本当にサブドメインにマッチ させたい場合には、明示的な ".domain.tld" 形式のパターンを全ての Postfix 機能が要求することになる予定です。
permit_mx_backup SMTP アクセス機能の使用を、プライマリ MX ホストが リストアップされたネットワークにマッチするドメインだけに制限します。
pickup(8) サービスの名前。このサービスはローカルで投かんされたメールを Postfix maildrop キューから収集します。
この機能は Postfix 2.0 以降で使えます。
Postfix local(8) 配送エージェントが Delivered-To: メッセージヘッダを 前置する、メッセージ配送の場面。
デフォルトでは、メールの転送時やファイル(メールボックス)および コマンドへの配送時に、Postfix local 配送エージェントは Delivered-To: ヘッダを前に付けます。メール転送時に Delivered-To: を無効にするのは 勧められません。
forward や file、command のうちゼロ個以上を 指定します。
例:
prepend_delivered_header = forward
Postfix コマンドまたはデーモンプロセスのプロセス ID。
$queue_directory からの Postfix PID ファイルの相対位置。 これは読みとり専用のパラメータです。
Postfix コマンドまたはデーモンプロセスのプロセス名。
検索キーから検索結果へと拡張アドレスをコピーするアドレス検索テーブル。
例えば、"joe@domain -> joe.user" の virtual(5) マッピングでは、 "joe+foo@domain" は "joe.user+foo" に書き換えられます。
canonical や virtual、alias、forward、 include のうちゼロ個以上を指定します。これらはそれぞれ canonical(5)、virtual(5)、aliases(5) マップ、local(8) .forward および :include: ファイル検索で拡張アドレスを展開させます。
注意: この機能を canonical および virtual 以外の種類で 有効にすると、メールが他のサイト、特にメーリングリスト配信アドレスに 送られると問題を引き起こすかもしれません。
例:
propagate_unmatched_extensions = canonical, virtual, alias, forward, include propagate_unmatched_extensions = canonical, virtual
プロキシまたはネットワークアドレス変換ユニットを通して、このメール システムがメールを受け取るネットワークインターフェースアドレス。
この機能は Postfix 2.0 以降で使えます。
システムが他のドメインのバックアップ MX ホストである場合、"外部の" プロキシ/NAT アドレスを指定しなければいけません。そうしないと、 一次MXホストがダウンしているときにメール配送ループが起こります。
例:
proxy_interfaces = 1.2.3.4
proxymap(8) サーバのアクセスが許される検索テーブル。proxy: で始まらない テーブル参照は無視されます。proxymap(8) テーブルアクセスは読み込み 専用です。
この機能は Postfix 2.0 以降で使えます。
特定の配送先が Postfix active キューを詰まらせているという警告の 最小遅延間隔。無効にするには 0 を指定します。
この機能は helpful_warnings パラメータで有効にされます。
この機能は Postfix 2.0 以降で使えます。
古い機能: 大きなメーリングリストのメッセージ配送にビジーなメール システムが使う配送リソースのパーセンテージ。
この機能は 古い oqmgr(8) キューマネージャにのみ存在します。現在の キューマネージャはよりよい方法でこの問題を解決しています。
active キューのメッセージの最大数。
Postfix キューマネージャがメモリ内に保持する受信者の最大数、 および短期間・メモリ内の "動いていない" 配送先の状態キャッシュサイズの 最大サイズ。
あらゆるメッセージに対するメモリ内受信者の最小値。これは必要な場合は 他のメモリ内受信者制限 (例えば一般的な qmgr_message_recipient_limit や transport ごとの _recipient_limit) よりも優先されます。このパラメータで 許される最小値は 1 です。
QMQP サーバポートへの接続が許されるクライアント。
デフォルトではどのクライアントもこのサービスを使うことが許されません。 これは QMQP サーバはどの配送先へもメールをリレーするためです。
クライアントパターンのリストを指定します。リストパターンにはホスト名や ドメイン名、インターネットアドレス、network/mask パターンを指定します。 mask にはホストアドレスのネットワーク部分のビット数を指定します。 パターンにファイル名を指定すると、ファイル名はその内容で 置き換えられます; パターンが "type:table" と指定されていると、 代わりにテーブル検索が使われます。
パターンは空白またはカンマで区切られます。結果を逆にするには、 ファイル名以外のパターンの前に感嘆符 (!) を付けます。
例:
qmqpd_authorized_clients = !192.168.0.1, 192.168.0.0/24
拒否する応答をクライアントに返す前に QMQP サーバが一時停止する時間。 これは混乱していたり悪意のあるクライアントを遅くすることが目的です。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
ネットワーク越しに情報を送受信する時間の制限。$qmqpd_timeout 秒以上に わたって読み書き操作がないと、QMQP サーバは諦めて接続を切ります。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
Postfix トップレベルキューディレクトリの場所。これは chroot されて 走っている Postfix デーモンプロセスのルートディレクトリです。
Postfix キューファイルに格納される (name=value) 属性の最大数。 この制限は cleanup(8) サーバによって強制されます。
この機能は Postfix 2.0 以降で使えます。
メールを受信するのに必要なキューファイルシステムの、バイト単位の 最低空き容量。これは今のところ SMTP サーバがメールを受け付けるかどうかを 決めるのに使われています。
デフォルトでは、空き容量が 1.5*$message_size_limit よりも少ないと Postfix 2.1 SMTP サーバは MAIL FROM コマンドを拒否します。 空き容量制限を大きくするには、少なくとも 1.5*$message_size_limit の queue_minfree の値を指定します。
Postfix バージョン 2.0 以前では、queue_minfree がゼロの場合は空き容量に 要求する最低値はありませんでした。
遅延されたキューがキューマネージャによってスキャンされる時間間隔。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
qmgr(8) サービスの名前。このサービスは Postfix キューを管理し、 配送要求のスケジューリングをおこないます。
この機能は Postfix 2.0 以降で使えます。
RBL 応答テンプレートを持つ、オプションの検索テーブル。テーブルは RBL ドメイン名でインデックス化されます。デフォルトでは、Postfix は default_rbl_reply 設定パラメータで指定されたデフォルトのテンプレートを 使います。RBL 応答テンプレートの議論はそこを参照してください。
この機能は Postfix 2.0 以降で使えます。
Postfix サブシステムや機能に関する構築方法や設定方法、操作方法が 書かれた Postfix README ファイルの場所。
受信者確認、ビルトインコンテンツフィルタリング、アドレス書き換えを 有効または無効にします。典型的には、これらは smtpd(8) や qmqpd(8)、 pickup(8) デーモンに対して master.cf のコマンドライン引数として 指定されます。
以下のオプションをゼロ個以上指定します。オプションは main.cf 設定を 上書きします。これらは smtpd(8) や qmqpd(8)、pickup(8) 自身が実装して いるか、cleanup サーバに渡されます。
注意: 「コンテンツフィルタの前の」 receive_override_options 設定が main.cf ファイルで指定される場合は、「コンテンツフィルタの後の」 receive_override_options 設定を master.cf に書きます (またはその逆)。
例:
receive_override_options = no_unknown_recipient_checks, no_header_body_checks receive_override_options = no_address_mappings
この機能は Postfix 2.1 以降で使えます。
受信者アドレスでインデックス化された、オプションの BCC (blind carbon-copy) アドレス検索テーブル。BCC アドレス (複数の結果はサポート されていません) は Postfix の外からメールが入ってきたときに 加えられます。
この機能は Postfix 2.1 以降で使えます。
テーブルの検索順序は次の通りです:
使用するデータベースの種類や名前を指定します。変更後は "postmap /etc/postfix/recipient_bcc" を実行してください。
注意: BCC アドレス宛のメールがバウンスすると、そのメールは送信者に 返されます。
例:
recipient_bcc_maps = hash:/etc/postfix/recipient_bcc
エンベロープおよびヘッダ受信者アドレスに対する、オプションのアドレス マッピング検索テーブル。 テーブルの書式や検索は canonical(5) に記述されています。
注意: $recipient_canonical_maps は $canonical_maps の前に処理されます。
例:
recipient_canonical_maps = hash:/etc/postfix/recipient_canonical
ユーザ名と拡張アドレス (user+foo) の間の区切り。aliases や canonical、 virtual、relocated、.forward ファイル検索での効果については canonical(5) および local(8)、relocated(5)、virtual(5) を参照して ください。基本的には、ソフトウェアは user や .forward を試す前に user+foo や .forward+foo を試します。
例:
recipient_delimiter = +
リモート SMTP クライアントの要求が "reject" 制限で拒否された 場合の、数字の Postfix SMTP サーバ応答コード。
RFC 821 を完全に理解していないのであれば、これを変更しないでください。
relay メッセージ配送 transport を使った、同じ配送先への並列配送数の 最大数。この制限はキューマネージャによって強制されます。メッセージ配送 transport 名は master.cf ファイルのエントリの最初のフィールドです。
この機能は Postfix バージョン 2.0 以降で使えます。
relay メッセージ配送 transport を使った、配送ごとの受信者数の最大値。 この制限はキューマネージャによって強制されます。メッセージ配送 transport 名は master.cf ファイルのエントリの最初のフィールドです。
このパラメータの値を1に設定すると、relay_destination_concurrency_limit の意味がドメインごとの並列度から受信者ごとの並列度に変わります。
この機能は Postfix バージョン 2.0 以降で使えます。
このシステムがメールをリレーしようとする配送先のドメイン (および そのサブドメイン)。サブドメインへのマッチは parent_domain_matches_subdomains パラメータで制御されます。relay_domains 値の使われ方についての詳細は permit_auth_destination および reject_unauth_destination SMTP 受信者制限の記述を参照してください。
$relay_domains にマッチするドメインは $relay_transport メール配送 transport を使って配送されます。SMTP サーバは受信者アドレスを $relay_recipient_maps で確認し、存在しない受信者を拒否します。 ADDRESS_CLASS_README ファイルのリレードメインアドレスクラスも 参照してください。
注意: Postfix は自動的にはこのシステムを一次もしくはバックアップ MX ホストにリストアップしているドメインにメールを転送しません。 postconf(5) マニュアルページの permit_mx_backup 制限を参照してください。
ホストまたはドメイン、"/file/name" パターン、"type:table" 検索テーブルを カンマや空白で区切って指定してください。次の行を空白で始めることで 長い行を継続します。"/file/name" パターンはその内容で置き換えられます; "type:table" 検索テーブルはドメインまたはその親ドメインが検索キーとして 現れるとマッチします。
クライアントの要求が reject_unauth_destination 受信者制限で拒否された 場合の、数字の Postfix SMTP サーバ応答コード。
RFC 821 を完全に理解していないのであれば、これを変更しないでください。
$relay_domains にマッチするドメインの、全ての有効なアドレスを持つ オプションの検索テーブル。有効な受信者リストを持たないドメインの ワイルドカードとしては @domain を指定します。技術的には、 $relay_recipient_maps で挙げられたテーブルはリストとして使われます: Postfix は検索文字列が見つかるかどうかのみを知る必要があるため、 検索テーブルからの結果は使いません。
このパラメータが空でなければ、Postfix SMTP サーバは知らないリレー ユーザ宛のメールを拒否します。この機能はデフォルトでは無効になって います。
ADDRESS_CLASS_README ファイルのリレードメインアドレスクラスも参照して ください。
例:
relay_recipient_maps = hash:/etc/postfix/relay_recipients
この機能は Postfix 2.0 以降で使えます。
$relay_domains パラメータ値にマッチするドメイン宛の、デフォルトの メール配送 transport および next-hop 情報。この情報は transport(5) テーブルで上書きできます。
transport:nexthop という形式の文字列を指定します。ここで transport は master.cf で定義されたメール配送 transport の 名前です。:nexthop 部分はオプションです。詳細は transport(5) マニュアルページを参照してください。
ADDRESS_CLASS_README ファイルのリレードメインアドレスクラスも参照して ください。
この機能は Postfix 2.0 以降で使えます。
オプションの transport(5) テーブルにエントリがマッチしなかった場合の、 非ローカルメールのデフォルトの送り先ホスト。relayhost が与えられない 場合は、メールは直接配送先に送られます。
イントラネットでは組織のドメイン名を指定します。内部 DNS が MX レコードを使っていないのであれば、その代わりにイントラネットの ゲートウェイホスト名を指定してください。
SMTP の場合、ドメイン名、ホスト名、hostname:port、[hostname]:port、 [hostaddress] または [hostaddress]:port を指定してください。 [hostname] の形式は MX 検索を無効にします。
UUCP を使って接続しているのであれば、UUCP_README ファイルを参照すると 役に立つ情報があります。
例:
relayhost = $mydomain relayhost = [gateway.my.domain] relayhost = uucphost relayhost = [an.ip.add.ress]
もう存在しないユーザやドメインの新しい連絡先の情報を持つ、オプションの 検索テーブル。テーブルの書式や検索は relocated(5) に記述されています。
この機能を使うのであれば、必要な DBM または DB ファイルを構築するために "\fBpostmap /etc/postfix/relocated\fR" を変更後に実行し、変更を反映 させるために "\fBpostfix reload\fR" を実行してください。
例:
relocated_maps = dbm:/etc/postfix/relocated relocated_maps = hash:/etc/postfix/relocated
メール配送の試行前に local(8) 受信者のホームディレクトリが存在 しなければならないかどうか。デフォルトではこのテストは無効になって います。メールサーバにホームディレクトリをインポートしている 環境では便利かもしれません (「推奨しません」)。
受信者アドレスの引用の中を見ることで、正確にではなく安全にアドレスを 解決します。
デフォルトでは、余分な @ や % や ! 演算子が見えたままになるように するため、、 Postfix アドレスリゾルバは RFC 822 のようにアドレスの ローカル部分に引用符を付けません。この振る舞いは安全ですが、 技術的には間違っています。
"resolve_dequoted_address = no" を指定すると、Postfix リゾルバは アドレスのローカル部分にある余分な @ などの演算子は知らなくなります。 これは Postfix が Sendmail システムのバックアップ MX サービスを 提供する際に user@domain@domain アドレスを使ったあいまいなメールリレー 攻撃の機会を開いてしまうことになります。
"@" null ドメインで終わっているアドレスを無効なものとして拒否するのでは なく、ローカルホスト名が指定されているものとして解決します。
この機能は Postfix バージョン 2.1 以降でつかえます。 それ以前のバージョンは null ドメインを常にローカルホスト名として 解決します。
Postfix SMTP サーバは "@" null ドメインで終わっているアドレスからの、 またはそのようなアドレス宛のメールや、"@" null ドメインで終わるような 形に書き換えられるアドレスからのメールを拒否するためにこの機能を 使います。
アドレス書き換えサービスの名前。このサービスはアドレスを標準的な形に 書き換え、(配送方法、next-hop ホスト、受信者) の組へと解決します。
この機能は Postfix 2.0 以降で使えます。
Postfix 設定例ファイルがあるディレクトリ名。
このパラメータは使うべきではありません。
送信者アドレスでインデックス化された、オプションの BCC (blind carbon-copy) アドレス検索テーブル。BCC アドレス (複数の結果はサポート されていません) は Postfix の外からメールが入ってきたときに 加えられます。
この機能は Postfix 2.1 以降で使えます。
テーブルの検索順序は次の通りです:
使用するデータベースの種類や名前を指定します。変更後は "\fBpostmap /etc/postfix/sender_bcc\fR" を実行してください。
注意: BCC アドレス宛のメールがバウンスすると、そのメールは送信者に 返されます。
例:
sender_bcc_maps = hash:/etc/postfix/sender_bcc
エンベロープおよびヘッダ送信者アドレスに対する、オプションのアドレス マッピング検索テーブル。テーブルの書式や検索は canonical(5) に 記述されています。
例: 「送信者」アドレスを "user@ugly.domain" から "user@pretty.domain" に書き換えたいが、受信者アドレス "user@ugly.domain" にはメールを 送れるままにしておきたい場合。
注意: $sender_canonical_maps は $canonical_maps の前に処理されます。
例:
sender_canonical_maps = hash:/etc/postfix/sender_canonical
Postfix sendmail(1) コマンドの場所を指定している Sendmail 互換機能。 このコマンドは Postfix キューにメールを投函するのに使われます。
異常に見えるサーバをフォークするまでに Postfix master(8) が待つ時間。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
set-gid Postfix コマンドおよびグループ書き込み可能な Postfix ディレクトリを所有するグループ。このパラメータ値を変更した場合、 "post-install set-permissions" を再び実行する必要があります。
"User unknown" 応答で受信者テーブルの名前を表示します。余分な詳細は トラブルシューティングを容易にしますが、関係ない情報も晒すことに なります。
この機能は Postfix 2.0 以降で使えます。
showq(8) サービスの名前。このサービスはメールキュー状態レポートを 生成します。
この機能は Postfix 2.0 以降で使えます。
SMTP セッションの最初に、常に EHLO を送ります。
"smtp_always_send_ehlo = no" では、Postfix はサーバのグリーティング バナーに "ESMTP" という単語が現れたときのみ EHLO を送ります (例: 220 spike.porcupine.org ESMTP Postfix)。
接続の際に SMTP クライアントがバインドする、オプションの数字の ネットワークアドレス。
全ての SMTP クライアントに対しては main.cf ファイルでこれを指定 できますし、もしくは特定のクライアントに対しては master.cf ファイルで 指定できます。例:
/etc/postfix/master.cf: smtp ... smtp -o smtp_bind_address=11.22.33.44
TCP 接続を完了するまでの SMTP クライアントの時間制限、またはゼロ (オペレーティングシステムのビルトイン時間制限を使います)。
期限内に接続できないと、SMTP クライアントはメール交換機リストの次の アドレスを試します。時間制限を無効にするには (すなわちオペレーティング システムによって実装されている時間制限を使うには) 0 を指定します。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
SMTP "." を送り、サーバの応答を受け取るまでの SMTP クライアントの 時間制限。
期限内に応答を受け取らないと、メールが複数回配送されるかもしれないという 警告がログに記録されます。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
SMTP DATA コマンドを送り、サーバの応答を受け取るまでの SMTP クライアントの時間制限。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
SMTP メッセージコンテンツを送る際の SMTP クライアントの時間制限。 $smtp_data_xfer_timeout 秒以上接続に進展がないと、SMTP クライアントは 転送を終了します。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
MX レコードが IP アドレスに解決できない場合、メール配送を遅延します。
デフォルト (no) は配送できないものとしてメールを返します古いバージョンの Postfix では、デフォルトでは誰かが MX レコードを修正するかメールが 古くなりすぎるまでメールの配送を試行し続けました。
注意: Postfix はローカル MTA 自身と同じ、もしくは優先度が低い MX レコードを常に無視します。
この機能は Postfix 2.1 以降で使えます。
smtp メッセージ配送 transport を使った同じ配送先への並列配送の最大数。 この制限はキューマネージャによって強制されます。メッセージ配送 transport 名は master.cf ファイルのエントリの最初のフィールドです。
smtp メッセージ配送 transport を使った、配送ごとの最大の受信者数。 この制限はキューマネージャによって強制されます。メッセージ配送 transport 名は master.cf ファイルのエントリの最初のフィールドです。
このパラメータの値を1に設定すると、smtp_destination_concurrency_limit の意味がドメインごとの並列度から受信者ごとの並列度に変わります。
SMTP EHLO または HELO コマンドで送るためのホスト名。
デフォルト値はマシンのホスト名です。ホスト名または [ip.add.re.ss] を 指定します。
全ての SMTP クライアントに対しては main.cf ファイルでこの情報を指定 できますし、もしくは特定のクライアントに対しては master.cf ファイルで 指定できます。例:
/etc/postfix/master.cf: mysmtp ... smtp -o smtp_helo_name=foo.bar.com
この機能は Postfix 2.0 以降で使えます。
HELO または EHLO コマンドを送り、最初のサーバの応答を受け取るまでの SMTP クライアントの時間制限。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
SMTP クライアントがホストの IP アドレスを検索するのに使うメカニズム。 このパラメータは DNS 検索が無効になっていると無視されます。
以下のうち一つを指定します:
この機能は Postfix 2.1 以降で使えます。
Postfix が SMTP で送るメッセージヘッダおよび本体行の最大長。長い行は "<CR><LF><SPACE>" を挿入することで分割します。これは MIME でフォーマットされたメールへの被害を最小にします。
長い行を持つメールを受け取らないサーバの実装があるため、デフォルトでは 行の長さは 990 文字に制限されます。
MAIL FROM コマンドを送り、サーバの応答を受け取るまでの SMTP クライアントの時間制限。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
メール交換機検索から得られる MX (メール交換機) IP アドレスの最大数、 またはゼロ (制限なし)。
この機能は Postfix 2.1 以降で使えます。
諦めるか fall-back リレーホストに配送するまでの、配送要求ごとの SMTP セッションの最大数、またはゼロ (制限なし)。この制限は SMTP の 最初のハンドシェイクが完了できなかった IP アドレスを無視します。
この機能は Postfix 2.1 以降で使えます。
SMTP セッションの最初に EHLO は送りません。smtp_always_send_ehlo パラメータも参照してください。
PIX ファイアウォール"<CR><LF>.<CR><LF>" バグを 回避するために、Postfix SMTP クライアントが ".<CR><LF>" を 送ってから一時停止する時間。
短すぎる時間を選択すると、遅いネットワーク接続で大きなメッセージを 送ったときにこの回避策は効果がなくなります。
PIX ファイアウォール "<CR><LF>.<CR><LF>" バグ回避が有効になるまでに、メッセージがキューに入っていなければ いけない時間。
デフォルトでは、キューに入って500秒以内のメールにはこの回避策を 無効にします。言い換えると、たいていの場合、最初の配送試行ではこの 回避策は無効にされます。
PIX ファイアウォール "<CR><LF>.<CR><LF>" バグ回避を最初の配送試行でも有効にするには 0 を指定します。
QUIT コマンドを送り、サーバの応答を受け取るまでの、SMTP クライアントの 時間制限。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
RFC 821 で要求されるように、SMTP MAIL FROM および RCPT TO コマンドでの アドレスに引用符を付けます。これは "." でローカル部分が終わる アドレスの前後に引用符を置くことも含みます。
デフォルトは RFC 821 を満たします。壊れた SMTP サーバにメールを 送らなければいけないのであれば、master.cf で特別な SMTP クライアントを 設定してください:
/etc/postfix/master.cf: broken-smtp . . . smtp -o smtp_quote_rfc821_envelope=no
そして transport(5) テーブルで問題の配送先宛のメールを "broken-smtp" メッセージ配送に送ります。
この機能は Postfix 2.1 以降で使えます。
優先度が同じ MX ホストアドレスの順番をランダムにします。これは Postfix SMTP クライアントのパフォーマンス機能です。
SMTP RCPT TO コマンドを送り、サーバの応答を受け取るまでの SMTP クライアントの時間制限。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
RSET コマンドを送り、サーバの応答を受け取るまでの、SMTP クライアントの 時間制限。
この機能は Postfix 2.1 以降で使えます。
Postfix SMTP クライアントの SASL 認証を有効にします。デフォルトでは、 Postfix SMTP クライアントは認証を使いません。
例:
smtp_sasl_auth_enable = yes
ホストまたはドメインごとに1つの username:password エントリを持つ、 オプションの SMTP クライアント検索テーブル。リモートホストまたは ドメインに username:password エントリがなければ、Postfix SMTP クライアントはリモートホストに対して認証しようとしません。
Postfix SMTP クライアントは chroot 監獄に入る前に検索テーブルを 開くので、パスワードファイルを /etc/postfix に置いたままにすることが できます。
Postfix SMTP クライアントで使うことが許される認証メカニズム。 使用可能な認証メカニズムのリストはシステムに依存します。
以下のゼロ個以上を指定します:
例:
smtp_sasl_security_options = noplaintext
Postfix SMTP サーバの EHLO 応答で XFORWARD サポートが通知された場合に、 非標準的な XFORWARD コマンドを送ります。
これにより、コンテンツフィルタにメールを投入するのに使われる "smtp" 配送エージェントが元のメールの名前やアドレス、プロトコル、HELO 名を コンテンツフィルタや下流でキューに入れる SMTP サーバに渡すことが できます。これは localhost[127.0.0.1] 等よりも便利なログを生成する ことができます。
この機能は Postfix 2.1 以降で使えます。
グリーティングで 4XX (立ち去って、後で再び試してください) 状態 コードを返す SMTP サーバをスキップします。
デフォルトでは、Postfix は次のメール交換機に移ります。Postfix がすぐに 配送を遅延させるべきであれば、"smtp_skip_4xx_greeting = no" を指定して ください。
この機能は Postfix バージョン 2.0 以前で使えます。それ以降のバージョンの Postfix は 4XX 状態コードで挨拶する SMTP サーバを常に飛ばします。
グリーティングで 5XX (立ち去って、二度と試さないでください) 状態 コードを返す SMTP サーバをスキップします。
デフォルトでは、Postfix は次のメール交換機に移ります。Postfix がすぐに 配送をバウンスさせるべきであれば、"smtp_skip_5xx_greeting = no" を 指定してください。デフォルトの設定は間違っていますが、多くの人が こうなると期待しているものです。
SMTP QUIT コマンドへの応答を待ちません。
XFORWARD コマンドを送り、サーバの応答を受け取るまでの SMTP クライアントの時間制限。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
この機能は Postfix 2.1 以降で使えます。
XVERP コマンドを指定できる SMTP クライアント。このコマンドはメールが 同時に1つの受信者に受信者ごとのリターンアドレスを持って配送されるよう 要求します。
デフォルトでは、どのクライアントも XVERP を指定することはできません。
このパラメータは Postfix 2.1 で改名されました。デフォルト値は Postfix 2.0 と後方互換です。
network/netmask パターンを空白やカンマで区切ったリストを指定します。 mask にはホストアドレスのネットワーク部分のビット数を指定します。 ホスト名や .domain 名 (最初のドットは domain 以下のあらゆる名前に マッチさせます)、"/file/name"、"type:table" パターンを指定することも できます。 "/file/name" パターンはその内容で置き換えられます; "type:table" 検索テーブルはテーブルエントリが検索文字列にマッチすると マッチします (検索結果は無視されます)。次の行を空白で始めることで 長い行を継続します。
XCLIENT 機能が使える SMTP クライアント。このコマンドはアクセス制御で 使われる SMTP クライアント情報を上書きします。典型的には、 SMTP ベースのコンテンツフィルタや fetchmail のようなプログラム、SMTP サーバアクセスルールのテストに使われます。詳細は XCLIENT_README ドキュメントを参照してください。
この機能は Postfix 2.1 以降で使えます。
デフォルトでは、どのクライアントも XCLIENT を指定できません。
network/netmask パターンを空白やカンマで区切ったリストを指定します。 mask にはホストアドレスのネットワーク部分のビット数を指定します。 ホスト名や .domain 名 (最初のドットは domain 以下のあらゆる名前に マッチさせます)、"/file/name"、"type:table" パターンを指定することも できます。 "/file/name" パターンはその内容で置き換えられます; "type:table" 検索テーブルはテーブルエントリが検索文字列にマッチすると マッチします (検索結果は無視されます)。次の行を空白で始めることで 長い行を継続します。
XFORWARD 機能を使うことが許される SMTP クライアント。このコマンドは SMTP ベースのコンテンツフィルタの後のロギングを改善するのに使われる 情報を渡します。詳細は XFORWARD_README ドキュメントを参照してください。
この機能は Postfix 2.1 以降で使えます。
デフォルトでは、どのクライアントも XFORWARD を指定できません。
network/netmask パターンを空白やカンマで区切ったリストを指定します。 mask にはホストアドレスのネットワーク部分のビット数を指定します。 ホスト名や .domain 名 (最初のドットは domain 以下のあらゆる名前に マッチさせます)、"/file/name"、"type:table" パターンを指定することも できます。 "/file/name" パターンはその内容で置き換えられます; "type:table" 検索テーブルはテーブルエントリが検索文字列にマッチすると マッチします (検索結果は無視されます)。次の行を空白で始めることで 長い行を継続します。
SMTP グリーティングバナーで 220 状態コードの後に続くテキスト。 メールバージョンが宣伝されるのを見るのが好きな人もいます。 デフォルトでは、Postfix はバージョンを示しません。
テキストの最初の $myhostname をしていしなければ「いけません」。 これは SMTP プロトコルによって要求されています。
例:
smtpd_banner = $myhostname ESMTP $mail_name ($mail_version)
SMTP クライアントが SMTP サービスに接続することが許される同時接続数。 デフォルトでは、この制限はデフォルトのプロセス制限値の半分に 設定されます。
この機能を無効にするには、0 という制限を指定します。
警告: この機能の目的は不正使用を制限することです。正当なメール トラフィックを規制するために使ってはいけません。
この機能は安定版 Postfix 2.1 には含まれません。
接続カウントや接続速度制限から除外されるクライアント。
デフォルトでは、信頼されたネットワークのクライアントが除外されます。 ネットワークブロックやホスト名、.domain 名 (最初のドットは domain 以下のあらゆる名前にマッチさせます) のリストを指定します。
この機能は安定版 Postfix 2.1 には含まれません。
時間単位ごとにクライアントがこのサービスに接続を試行することが許される 最大の接続試行数。時間単位は anvil_rate_time_unit 設定パラメータで 指定され、デフォルトは1分です。
デフォルトでは、クライアントは単位時間に Postfix が受けることが できる限りの数の接続を張ることができます。
この機能を無効にするには、0 という制限を指定します。
警告: この機能の目的は不正使用を制限することです。正当なメール トラフィックを規制するために使ってはいけません。
この機能は安定版 Postfix 2.1 には含まれません。
例:
smtpd_client_connection_rate_limit = 1000
SMTPサーバがクライアントからSMTP接続の要求を受けた際に適用する、オプションのアクセス制限。
デフォルトでは全ての接続要求を許可します。
制限のリストをカンマまたは空白で区切って指定します。次の行を空白で 始めることで長い行を継続します。制限は指定された順に適用されます; 最初にマッチした制限が勝ちます。
以下の制限はクライアントホスト名またはクライアントネットワークアドレス 情報に特有のものです。
これに加えて、以下の 一般的な制限 を使えます。 これらの制限は SMTP コマンドのどの場面にも適用できます。
この場面で有効な他の制限:
例:
smtpd_client_restrictions = permit_mynetworks, reject_unknown_client
Postfix SMTP サーバが SMTP DATA コマンドの場面で適用する、オプションの アクセス制限。
この機能は Postfix 2.0 以降で使えます。
制限のリストをカンマまたは空白で区切って指定します。次の行を空白で 始めることで長い行を継続します。制限は指定された順に適用されます; 最初にマッチした制限が勝ちます。
以下の制限がこの場面で有効です:
例:
smtpd_data_restrictions = reject_unauth_pipelining smtpd_data_restrictions = reject_multi_recipient_bounce
$smtpd_client_restrictions および $smtpd_helo_restrictions、 $smtpd_sender_restrictions の評価を RCPT TO コマンドまで待ちます。 または、$smtpd_client_restrictions および $smtpd_helo_restrictions の 評価を ETRN コマンドまで待ちます。
Postfix SMTP サーバが RCPT TO の前にコマンドを拒否すると間違った 動作をしてしまうクライアントがあるようなので、この機能はデフォルトで 有効になっています。
デフォルトの設定には一つ大きな利点があります: Postfix が クライアント名/アドレスや送信者アドレスを拒否する際に受信者情報を ログに記録できるようになり、誰のメールが拒否されたかがわかるように なります。
Postfix 2.1 以降: メールの配送なしで クライアントが $smtpd_soft_error_limit 以上 $smtpd_hard_error_limit 以下のエラーを 出した後に入れる、SMTP サーバ応答の遅延。
Postfix 2.0 以前: メールの配送なしで クライアントが $smtpd_hard_error_limit 以下のエラーを出した際に拒否 (4xx または 5xx) 応答を送る前に入れる、SMTP サーバの遅延。
Postfix SMTP サーバがクライアントの ETRN 要求の場面で適用する、 オプションの制限。
Postfix の ETRN 実装は Postfix "高速 flush" サービスに的確な配送先のみを 受け入れます。詳細は ETRN_README を参照してください。
制限のリストをカンマまたは空白で区切って指定します。次の行を空白で 始めることで長い行を継続します。制限は指定された順に適用されます; 最初にマッチした制限が勝ちます。
以下の制限は ETRN コマンドで受け取るドメイン名情報に特有です。
この場面で有効な他の制限:
例:
smtpd_etrn_restrictions = permit_mynetworks, reject
RBL 応答テンプレートの $name 展開で許される文字。許可されたセットにない 文字は "_" で置き換えられます。空白のような特別な文字を指定するには、 C 形式のエスケープを使います。
このパラメータは $parameter 展開を受けません。
この機能は Postfix 2.0 以降で使えます。
リモート SMTP クライアントがメールの配送なしに発生させることが 許されるエラーの数。制限を超えると Postfix SMTP サーバは接続を切ります。
リモート SMTP クライアントが SMTP セッションの最初で HELO または EHLO コマンドで自己紹介することを要求します。
例:
smtpd_helo_required = yes
Postfix SMTP サーバが SMTP HELO コマンドの場面で適用する、オプションの 制限。
デフォルトでは全てを許可します。
制限のリストをカンマまたは空白で区切って指定します。次の行を空白で 始めることで長い行を継続します。制限は指定された順に適用されます; 最初にマッチした制限が勝ちます。
以下の制限は HELO または EHLO コマンドで受け取るホスト名情報に特有です。
この場面で有効な他の制限:
例:
smtpd_helo_restrictions = permit_mynetworks, reject_invalid_hostname smtpd_helo_restrictions = permit_mynetworks, reject_unknown_hostname
EHLO や RSET、DATA の終わりの受信時に消し去られるまでの、 Postfix SMTP サーバコマンドラインヒストリの最大行数。
Postfix SMTP サーバがジャンクコマンド (NOOP や VRFY、ETRN、RSET) で エラーカウンタを増加させる前に、リモートの SMTP クライアントが送る ことができるジャンクコマンドの数。ジャンクコマンド数はメールが配送 されるとリセットされます。smtpd_error_sleep_time および smtpd_soft_error_limit 設定パラメータも参照してください。
文法チェックや状態の変更を行わずに、Postfix サーバが "250 OK" と 応答するコマンドのリスト。このリストは Postfix SMTP サーバに組み込まれた いずれのコマンドも上書きします。
null 送信者アドレスの代わりに SMTP access(5) テーブルで使われる 検索キー。
アイドル状態の SMTPD ポリシーサービス接続が閉じられるまでの時間。
この機能は Postfix 2.1 以降で使えます。
アクティブな SMTPD ポリシーサービス接続が閉じられるまでの時間。
この機能は Postfix 2.1 以降で使えます。
委譲された SMTPD ポリシーサーバに接続し、書き込み、受信するまでの 時間制限。
この機能は Postfix 2.1 以降で使えます。
Postfix SMTP サーバがプロキシフィルタに対して自分を通知する方法。 デフォルトでは、Postfix ホスト名が使われます。
この機能は Postfix 2.1 以降で使えます。
メールフィルタリングプロキシサーバのホスト名と TCP ポート。 プロキシは Postfix SMTP サーバからの全てのメールを受け取り、他の Postfix SMTP サーバプロセスに結果を渡すと想定されています。
host:port を指定してください。host は IP アドレスやシンボル名として 指定することができます; MX 検索はおこなわれません。host や host: が 指定されないと、ローカルマシンであると想定されます。
この機能は Postfix 2.1 以降で使えます。
プロキシフィルタに接続し、情報を送受信する時間制限。接続に失敗すると、 クライアントは一般的なエラーメッセージを受け取り、より詳細情報が maillog ファイルにログとして記録されます。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
この機能は Postfix 2.1 以降で使えます。
Postfix SMTP サーバがメッセージ配送要求ごとに受け付ける、最大の 受信者数。
Postfix SMTP サーバが超過したそれぞれの受信者に対してセッションごとの エラーカウンタを増加させる前に、リモートの SMTP クライアントが $smtpd_recipient_limit で指定された制限を超えて送ることができる 受信者の数。
Postfix SMTP サーバが RCPT TO コマンドの場面で適用するアクセス制限。
デフォルトでは、Postfix SMTP サーバは以下のものを受け取ります:
重要: このパラメータの設定を変更したら、少なくとも以下のどれか 一つの制限を指定しなければいけません。そうしないと、Postfix は メールの受信を拒否してしまいます:
reject, defer, defer_if_permit, reject_unauth_destination
制限のリストをカンマまたは空白で区切って指定します。次の行を空白で 始めることで長い行を継続します。制限は指定された順に適用されます; 最初にマッチした制限が勝ちます。
以下の制限は RCPT TO コマンドで受け取る受信者アドレスに特有です。
この場面で有効な他の制限:
例:
smtpd_recipient_restrictions = permit_mynetworks, reject_unauth_destination
明示的に reject_unlisted_recipient アクセス制限が指定されていなくても、 Postfix SMTP サーバが知らない受信者アドレス宛のメールを拒否する ように要求します。これは Postfix キューが配送できない MAILER-DAEMON メッセージで埋め尽くされることを防ぎます。
この機能は Postfix 2.1 以降で使えます。
明示的に reject_unlisted_sender アクセス制限が指定されていなくても、 Postfix SMTP サーバが知らない送信者アドレスからのメールを拒否する ように要求します。これはワームやウィルスからの騙られたメールの 急激な増加を遅くすることができます。
この機能は Postfix 2.1 以降で使えます。
ユーザが定義した、アクセス制限のまとまりの別名。この別名は smtpd_recipient_restrictions などや Postfix access(5) テーブルの 右側部分で指定することができます。
主な応用方法の一つに、受信者ごとの UCE 制御の実装があります。他の例は RESTRICTION_CLASS_README ドキュメントを参照してください。
SASL サーバの初期化に使われるアプリケーション名。これは SASL 設定 ファイルの名前を制御します。デフォルト値は smtpd であり、 smtpd.conf という名前の SASL 設定ファイルに対応します。
この機能は Postfix 2.1 以降で使えます。
Postfix SMTP サーバの SASL 認証を有効にします。デフォルトでは、Postfix SMTP サーバは認証を使いません。
リモートの SMTP クライアントが認証されると、リレーアクセスを許可するのに 次のように permit_sasl_authenticated アクセス制限が使えます:
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, ...
認証されていないクライアントからの全ての SMTP 接続を拒否するには、 "smtpd_delay_reject = yes" (これはデフォルトです) を指定し、以下のものを 使います:
smtpd_client_restrictions = permit_sasl_authenticated, reject
SASL の設定と操作の詳細は SASL_README ファイルを参照してください。
Postfix が AUTH サポートを提供しない SMTP クライアント。
AUTH が提供されるたびに、必要かどうかにかかわらずログインとパスワードを 要求してしまうバグを持ったクライアント (少なくとも Netscape 4) が あります。これを回避するために、例えば Postfix がローカルの クライアントに AUTH を提供しないようにするためには $mynetworks を 指定します。
network/netmask パターンを空白やカンマで区切ったリストを指定します。 mask にはホストアドレスのネットワーク部分のビット数を指定します。 "/file/name" や "type:table" パターンを指定することもできます。 "/file/name" パターンはその内容で置き換えられます; "type:table" 検索テーブルはテーブルエントリが検索文字列にマッチすると マッチします (検索結果は無視されます)。次の行を空白で始めることで 長い行を継続します。
例:
smtpd_sasl_exceptions_networks = $mynetworks
この機能は Postfix 2.1 以降で使えます。
SASL 認証 realm の名前。
デフォルトでは、ローカル認証 realm 名は null 文字列です。
例:
smtpd_sasl_local_domain = $mydomain smtpd_sasl_local_domain = $myhostname
Postfix SMTP サーバがクライアントに提供する認証メカニズムを 制限します。使用できる認証メカニズムのリストはシステムに依存します。
以下のゼロ個以上を指定します:
デフォルトでは、Postfix SMTP サーバは平文パスワードを受け付けますが、 匿名ログインは受け付けません。
警告: クライアントはサーバが案内した順番 (例えば PLAIN ANONYMOUS CRAM-MD5) で認証方法を試すようであり、平文パスワードを無効にすると、 これはクライアントが CRAM-MD5 を使えたとしても匿名でログインしようと してしまうことを意味します。そのため、平文ログインを無効にする場合、 匿名ログインも無効にしてください。Postfix は匿名ログインを認証とは 扱いません。
例:
smtpd_sasl_security_options = noanonymous, noplaintext
送信者 (MAIL FROM) アドレスを持つ SASL ログイン名の、オプションの 検索テーブル。
ゼロ個以上の "type:table" 検索テーブルを指定します。DB や DBM のような インデックス化されたファイルからの検索や、NIS や LDAP、SQL のような ネットワーク上のテーブルからの検索では、\fIuser@domain\fR という 送信者アドレスで次のように検索操作がおこなわれます:
どの場合でも、テーブル検索の結果は "見つからない" か、カンマや空白で 区切られた SASL ログイン名のリストのどちらかでなければいけません。
Postfix SMTP サーバが MAIL FROM コマンドの場面で適用する、オプションの 制限。
デフォルトでは全てを許可します。
制限のリストをカンマまたは空白で区切って指定します。次の行を空白で 始めることで長い行を継続します。制限は指定された順に適用されます; 最初にマッチした制限が勝ちます。
以下の制限は MAIL FROM コマンドで受け取る送信者アドレスに特有です。
この場面で有効な他の制限:
例:
smtpd_sender_restrictions = reject_unknown_sender_domain smtpd_sender_restrictions = reject_unknown_sender_domain, check_sender_access hash:/etc/postfix/access
Postfix SMTP サーバが全ての応答を遅くする前に、リモート SMTP クライアントがメールの配送なしに発生させることが許されるエラーの数。
Postfix バージョン 2.1 以降では、Postfix SMTP サーバは全ての 応答を $smtpd_error_sleep_time 秒だけ遅延します。
Postfix バージョン 2.0 以前では、Postfix SMTP サーバは全ての 応答を (エラー数) 秒だけ遅延します。
Postfix SMTP サーバが応答を送って、リモート SMTP クライアントの要求を 受け取るまでの時間制限。
注意: SMTP 時間制限を非常に大きな値にする場合、一般的な ipc_timeout パラメータも更新する必要があるかもしれません。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
送信者に返されてしまうメールをキューにとどめておくための安全ネット。 このパラメータはローカルで生成されるバウンスを無効にし、5xx 応答コードを 4xx に変えることで Postfix SMTP サーバがメールを恒久的に拒否して しまわないようにします。しかし、soft_bounce ではアドレス書き換えの 間違いやメールルーティングの間違いを直すことはできません。
例:
soft_bounce = yes
古いメールボックスの排他的ロックファイルが取り除かれるまでの時間。 これはファイルまたはメールボックスへの配送に使われます。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
メッセージヘッダに 8 ビットテキストを持つメールを拒否します。これは 不完全に書かれたアプリケーションからのメールをブロックします。
正当なEメールを拒否する可能性があるため、この機能を一般的な目的の メールサーバで有効にすべきではありません。
この機能は Postfix 2.0 以降で使えます。
strict_7bit_headers と strict_8bitmime_body の両者を有効にします。
正当なEメールを拒否する可能性があるため、この機能を一般的な目的の メールサーバで有効にすべきではありません。
この機能は Postfix 2.0 以降で使えます。
8 ビット MIME コンテンツエンコード情報のない 8 ビットメッセージ 本体テキストを拒否します。これは不完全に書かれたアプリケーションからの メールをブロックします。
残念ながら、これは要求に有効な 8 ビット MIME メールを含んだ majordomo 承認要求も拒否してしまいます。また、(例えば qmail や古いバージョンの Postfix からのバウンスのように) 8 ビットコンテンツを MIME カプセル化 しないメーラからのバウンスを拒否します。
正当なEメールを拒否する可能性があるため、この機能を一般的な目的の メールサーバで有効にすべきではありません。
この機能は Postfix 2.0 以降で使えます。
message/* または multipart/* MIME コンテンツタイプに対して 無効な Content-Transfer-Encoding: 情報を持つメールを拒否します。 これは不完全に書かれたアプリケーションからのメールをブロックします。
一回違反した後のメールを拒否してしまうため、この機能を一般的な目的の メールサーバで有効にすべきではありません。
この機能は Postfix 2.0 以降で使えます。
SMTP MAIL FROM および RCPT TO コマンドで受け取るアドレスが <> で 括られていて、そのアドレスが RFC822 形式のコメントやフレーズが 含まれていないことを要求します。これは不完全に書かれたアプリケーション からのメールをブロックします。
デフォルトでは、Postfix SMTP サーバは MAIL FROM および RCPT TO アドレスの RFC 822 文法を受け入れます。
古い SUN mailtool 互換機能。代わりに "mailbox_delivery_lock = dotlock" を使ってください。
"site!user" から "user@site" への書き換えを有効にします。これは マシンが UUCP ネットワークに接続されている場合に必要です。これは デフォルトで有効になっています。
例:
swap_bangpath = no
Postfix ロギングの syslog facility 名。syslog.conf(5) で定義された facility を指定します。デフォルト facility は "mail" です。
警告: デフォルトではない syslog facility 設定は Postfix プロセスの 初期化が終わった後で有効になります。初期化している間のエラーは デフォルトの facility でログに記録されます。コマンドライン引数を パースしている際のエラーや Postfix main.cf 設定ファイルにアクセス している間のエラーがその例です。
例えば "smtpd" が "postfix/smtpd" となるようにするために syslog レコードのプロセス名の前に付けられるメールシステムの名前。
警告: デフォルトではない syslog facility 設定は Postfix プロセスの 初期化が終わった後で有効になります。初期化している間のエラーは デフォルトの facility でログに記録されます。コマンドライン引数を パースしている際のエラーや Postfix main.cf 設定ファイルにアクセス している間のエラーがその例です。
trace(8) サービスの名前。このサービスはメール配送の記録を管理し、 "sendmail -v" で冗長な配送が要求された際にメール配送レポートを 生成します。
この機能は Postfix 2.1 以降で使えます。
受信者アドレスから (メッセージ配送 transport、next-hop 配送先) への マッピングを持つ、オプションの検索テーブル。詳細は transport(5) を 参照してください。
ゼロ個以上の "type:table" 検索テーブルを指定してください。この機能を ローカルファイルで使うのであれば、変更後に "postmap /etc/postfix/transport" を実行してください。
例:
transport_maps = dbm:/etc/postfix/transport transport_maps = hash:/etc/postfix/transport
Postfix キューマネージャが異常なメッセージ配送 transport に接触 しようとする時間間隔。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
(例えば pickup(8) や qmgr(8) デーモンのような) Postfix デーモンに トリガーを送る制限時間。この時間制限はメールシステムの負荷が大きい 場合にプログラムが動かなくならないようにします。
時間単位: s (秒)、m (分)、h (時)、d (日)、w (週)。 デフォルトの時間単位は s (秒) です。
メッセージに To: または Cc: メッセージヘッダがない場合に Postfix cleanup(8) サーバが挿入するメッセージヘッダ。
送信者または受信者アドレスが reject_unknown_sender_domain または reject_unknown_recipient_domain 制限で拒否された場合の、数字の Postfix SMTP サーバ応答コード。
RFC 821 を完全に理解していないのであれば、これを変更しないでください。
有効なアドレス <=> 名前のマッピングのないクライアントが reject_unknown_client 制限で拒否された場合の、数字の Postfix SMTP サーバ応答コード。
RFC 821 を完全に理解していないのであれば、これを変更しないでください。
HELO または EHLO コマンドで指定されたホスト名が reject_unknown_hostname 制限で拒否された場合の、数字の Postfix SMTP サーバ応答コード。
RFC 821 を完全に理解していないのであれば、これを変更しないでください。
受信者アドレスがローカルで、$local_recipient_maps がその受信者に マッチしない検索テーブルのリストを指定していた場合に、Postfix SMTP サーバが応答する数字のコード。ドメインが $mydestination や $proxy_interfaces、$inet_interfaces にマッチする場合に、受信者 アドレスをローカルと見なします。
デフォルトの設定は 550 (メールを拒否します) ですが、最初は 450 を使って local_recipient_maps 設定が問題ないかどうか確認する時間を取ると より安全です。
例:
unknown_local_recipient_reject_code = 450
この機能は Postfix 2.0 以降で使えます。
受信者アドレスが $relay_domains にマッチするが、relay_recipient_maps が その受信者にマッチしない検索テーブルのリストを指定していた場合に、 Postfix SMTP サーバが応答する数字のコード。
この機能は Postfix 2.0 以降で使えます。
受信者アドレスが $virtual_alias_domains にマッチするが、 $virtual_alias_maps がその受信者にマッチしない検索テーブルのリストを 指定していた場合の SMTP サーバの応答コード。
この機能は Postfix 2.0 以降で使えます。
受信者アドレスが $virtual_mailbox_domains にマッチするが、 $virtual_mailbox_maps がその受信者にマッチしない検索テーブルのリストを 指定していた場合の SMTP サーバの応答コード。
この機能は Postfix 2.0 以降で使えます。
受信者アドレスが reject_unverified_recipient 制限によって拒否された 場合の、数字の Postfix SMTP サーバ応答コード。
Postfix の他の場所と異なり、それでもアドレスを受け付けるために 250 を指定することができます。
RFC 821 を完全に理解していないのであれば、これを変更しないでください。
この機能は Postfix 2.1 以降で使えます。
送信者アドレスが reject_unverified_sender 制限によって拒否された 場合の、数字の Postfix SMTP サーバ応答コード。
Postfix の他の場所と異なり、それでもアドレスを受け付けるために 250 を指定することができます。
RFC 821 を完全に理解していないのであれば、これを変更しないでください。
この機能は Postfix 2.1 以降で使えます。
Postfix が Postfix sendmail(1) コマンドラインや SMTP コマンドで VERP 区切り文字として受け付ける文字。
この機能は Postfix 1.1 以降で使えます。
オプションのバーチャルエイリアスドメイン、つまり全てのアドレスが 他のローカルまたはリモートドメインのアドレスにエイリアスされる ドメインの名前のリスト。SMTP サーバは $virtual_alias_maps で受信者 アドレスを確認し、存在しない受信者を拒否します。ADDRESS_CLASS_README ファイルのバーチャルエイリアスドメインクラスも参照してください。
この機能は Postfix 2.0 以降で使えます。デフォルト値は Postfix 1.1 と 後方互換です。
デフォルト値は $virtual_alias_maps になっており、バーチャルエイリアス ドメインに関する情報を全て1カ所にとどめることができるように なっています。たくさんのユーザがいる場合、よく更新される情報 (バーチャルアドレス -> ローカルまたはリモートアドレスのマッピング) を あまり更新されない情報 (バーチャルドメイン名のリスト) から分ける方が よいでしょう。
ホストまたはドメイン名、"/file/name" や "type:table" パターンを カンマや空白で区切って指定してください。"/file/name" パターンは その内容で置き換えられます; "type:table" 検索テーブルはドメインまたは その親ドメインが検索キーとして現れるとマッチします。次の行を空白で 始めることで長い行を継続します。
これ以上の情報は VIRTUAL_README や ADDRESS_CLASS_README ドキュメントも 参照してください。
例:
virtual_alias_domains = virtual1.tld virtual2.tld
それぞれの元の受信者から virtual エイリアス展開で生成されるアドレスの 最大数。
この機能は Postfix 2.1 以降で使えます。
特定のメールアドレスやドメインを他のローカルまたはリモートアドレスに エイリアスする、オプションの検索テーブル。テーブルの書式や検索は virtual(5) に記述されています。
この機能は Postfix 2.0 以降で使えます。デフォルト値は Postfix 1.1 と 後方互換です。
インデックス化されたファイルでこの機能を使う場合、ファイルを更新したら "postmap /etc/postfix/virtual" を実行してください。
例:
virtual_alias_maps = dbm:/etc/postfix/virtual virtual_alias_maps = hash:/etc/postfix/virtual
virtual エイリアス展開の最大のネストの深さ。現在は再帰制限は展開 グラフの左側の分岐のみに適用されるため、最悪の場合ツリーの深さは 展開および再帰制限の合計に達します。これは将来変更される予定です。
この機能は Postfix 2.1 以降で使えます。
virtual メッセージ配送 transport を使った同じ配送先への、最大の 並列配送数。この制限はキューマネージャによって強制されます。メッセージ 配送 transport 名は master.cf ファイルのエントリの最初のフィールドです。
virtual メッセージ配送 transport を使った配送ごとの、最大の受信者数。 この制限はキューマネージャによって強制されます。メッセージ配送 transport 名は master.cf ファイルのエントリの最初のフィールドです。
このパラメータの値を1に設定すると、対応する配送先ごとの並列制限は ドメインごとの並列度から受信者ごとの並列度へと意味を変えます。
virtual(8) メールボックス配送に使う受信者ごとのグループ ID を持つ 検索テーブル。
検索テーブルには、指定されたドメインで特定の "user@domain.tld" エントリを持たないどのユーザにもマッチする "@domain.tld" を左側部分に 指定します。
受信者アドレスにオプションの拡張アドレス (user+foo@domain.tld) が ついていると、virtual(8) 配送エージェントはまず完全なアドレスを検索し、 検索に失敗すると、拡張を外したアドレス (user@domain.tld) を検索します。
注意 1: セキュリティ上の理由で、セキュリティホールを開けてしまうかも しれないため、virtual(8) 配送エージェントは正規表現検索テーブルでの $1 などの正規表現置換を使えません。
注意 2: セキュリティ上の理由で、セキュリティホールを開けてしまうかも しれないため、virtual(8) 配送エージェントは proxymap(8) サービスを 使ったテーブル検索を使えません。
virtual(8) 配送エージェントが $virtual_mailbox_maps テーブル検索 からの結果の全てのパス名前に付けるプレフィックス。これは制御不能な マップがファイルシステムをメールボックスで散らかさないように するための安全策です。virtual_mailbox_base を "/" にすることも できますが、この設定は推奨しません。
例:
virtual_mailbox_base = /var/mail
$virtual_transport メール配送 transport を使って配送されるドメインの リスト。デフォルトでは、$virtual_transport は Postfix virtual(8) 配送エージェントです。SMTP サーバは $virtual_mailbox_maps で 受信者アドレスを確認し、存在しない受信者宛のメールを拒否します。 ADDRESS_CLASS_README ファイルのバーチャルメールボックスドメインクラスも 参照してください。
このパラメータは mydestination 設定パラメータと同じ文法を 期待します。
この機能は Postfix 2.0 以降で使えます。デフォルト値は Postfix 1.1 と 後方互換です。
個々のメールボックスまたは maildir ファイルの、バイト単位の最大 サイズ、またはゼロ (制限なし)。
配送を試行する前に UNIX 形式の virtual(8) メールボックスを ロックする方法。使用可能なファイルロック方法のリストを見るには、 "postconf -l" コマンドを使ってください。
アプリケーションレベルでのロックがなくても安全であるため、\fBmaildir\fR 形式の配送ではこの設定は無視されます。
注意 1: \fBdotlock\fR 方式では、受信者メールボックスファイルの 親ディレクトリに受信者の UID または GID の書き込みアクセス権が必要です。
注意 2: このパラメータのデフォルトの設定はシステムに依存します。
$virtual_mailbox_domains にマッチするドメインの全ての有効な アドレスを持つ、オプションの検索テーブル。
検索テーブルには、指定されたドメインで特定の "user@domain.tld" エントリを持たないどのユーザにもマッチする "@domain.tld" を左側部分に 指定します。
virtual(8) 配送エージェントは受信者ごとのメールボックスまたは maildir パス名を検索するためにこのテーブルを使います。検索結果がスラッシュ ("/") で終わっていると maildir 形式の配送が実行され、それ以外の パスは UNIX 形式のメールボックスファイルが想定されます。 $virtual_mailbox_base が無条件にこのパスの前に付けられることに 注意してください。
受信者アドレスにオプションの拡張アドレス (user+foo@domain.tld) が ついていると、virtual(8) 配送エージェントはまず完全なアドレスを検索し、 検索に失敗すると、拡張を外したアドレス (user@domain.tld) を検索します。
注意 1: セキュリティ上の理由で、セキュリティホールを開けてしまうかも しれないため、virtual(8) 配送エージェントは正規表現検索テーブルでの $1 などの正規表現置換を使えません。
注意 2: セキュリティ上の理由で、セキュリティホールを開けてしまうかも しれないため、virtual(8) 配送エージェントは proxymap(8) サービスを 使ったテーブル検索を使えません。
a) 全てのアドレスが他のローカルもしくはリモートドメインのアドレスに エイリアスされるドメイン名と、b) 他のローカルもしくはリモートドメインの アドレスにエイリアスされるアドレスを持つ、オプションの検索テーブル。 Postfix バージョン 2.1 以前で使えます。Postfix 2.1 以降では、 virtual_alias_domains と virtual_alias_maps という2つの制御に 分かれて置き換えられました。
%PARAM virtual_minimum_uid 100virtual(8) 配送エージェントが \fB$virtual_uid_maps\fR テーブル 検索からの結果として受け付ける最小のユーザ ID の値。この値よりも 小さな返り値は拒否され、メッセージは遅延されます。
$virtual_mailbox_domains パラメータ値にマッチするドメイン宛の、 デフォルトのメール配送 transport。この情報は transport(5) テーブルで 上書きされます。
transport:nexthop という形式の文字列を指定します。ここで transport は master.cf で定義されたメール配送 transport の 名前です。:nexthop 部分はオプションです。詳細は transport(5) マニュアルページを参照してください。
この機能は Postfix 2.0 以降で使えます。
virtual(8) 配送エージェントが受信者のメールボックスへの書き込みに 使用する受信者ごとのユーザ ID を持つ検索テーブル。
検索テーブルには、指定されたドメインで特定の "user@domain.tld" エントリを持たないどのユーザにもマッチする "@domain.tld" を左側部分に 指定します。
受信者アドレスにオプションの拡張アドレス (user+foo@domain.tld) が ついていると、virtual(8) 配送エージェントはまず完全なアドレスを検索し、 検索に失敗すると、拡張を外したアドレス (user@domain.tld) を検索します。
注意 1: セキュリティ上の理由で、セキュリティホールを開けてしまうかも しれないため、virtual(8) 配送エージェントは正規表現検索テーブルでの $1 などの正規表現置換を使えません。
注意 2: セキュリティ上の理由で、セキュリティホールを開けてしまうかも しれないため、virtual(8) 配送エージェントは proxymap(8) サービスを 使ったテーブル検索を使えません。