10.2. DoS 攻撃を制限するための Postfix 設定オプション

攻撃者は、トラフィックでサーバーをあふれさせたり、クラッシュを引き起こす情報を送信したりして、サービス拒否 (DoS) 攻撃を引き起こす可能性があります。/etc/postfix/main.cf ファイルで制限を設定することにより、このような攻撃のリスクを軽減するようにシステムを設定できます。既存のディレクティブの値を変更するか、<directive> = <value> 形式のカスタム値で新しいディレクティブを追加できます。

DoS 攻撃を制限するには、次のディレクティブリストを使用します。

smtpd_client_connection_rate_limit
このディレクティブは、時間単位ごとにクライアントがこのサービスに対して行うことができる接続試行の最大数を制限します。デフォルト値は 0 です。これは、クライアントが時間単位で Postfix が受け入れることができる数と同じ数の接続を行うことができることを意味します。デフォルトでは、ディレクティブは信頼できるネットワークのクライアントを除外します。
anvil_rate_time_unit
このディレクティブは、レート制限を計算する時間単位です。デフォルト値は 60 秒です。
smtpd_client_event_limit_exceptions
このディレクティブは、接続およびレート制限コマンドからクライアントを除外します。デフォルトでは、ディレクティブは信頼できるネットワークのクライアントを除外します。
smtpd_client_message_rate_limit
このディレクティブは、単位時間当たりのクライアントからリクエストへのメッセージ配信の最大数を定義します (Postfix が実際にそれらのメッセージを受け入れるかどうかに関係なく)。
default_process_limit
このディレクティブは、特定のサービスを提供する Postfix 子プロセスのデフォルトの最大数を定義します。master.cf ファイル内の特定のサービスについては、このルールを無視できます。デフォルトでは、値は 100 です。
queue_minfree
このディレクティブは、キューファイルシステムでメールを受信するために必要な空き容量の最小量を定義します。このディレクティブは現在、Postfix SMTP サーバーがメールを受け入れるかどうかを決定するために使用されています。デフォルトでは、Postfix SMTP サーバーは、空き容量が message_size_limit の 1.5 倍未満の場合に、MAIL FROM コマンドを拒否します。空き容量の最小値をこれよりも高く指定するには、message_size_limit の 1.5 倍以上の queue_minfree 値を指定します。デフォルトの queue_minfree 値は 0 です。
header_size_limit
このディレクティブは、メッセージヘッダーを格納するためのメモリーの最大量をバイト単位で定義します。ヘッダーが大きい場合、余分なヘッダーは破棄されます。デフォルトでは、値は 102400 バイトです。
message_size_limit
このディレクティブは、エンベロープ情報を含むメッセージの最大サイズをバイト単位で定義します。デフォルトでは、値は 10240000 バイトです。