Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

2.2.7. Postfix のセキュア化

Postfix は メール転送エージェント (MTA) で、他の MTA や Email クライアント、配信エージェント間で電子メッセージを配信するために Simple Mail Transfer Protocol (SMTP) を使用します。多くの MTA には MTA 間のトラフィックを暗号化する機能がありますが、ほとんど使用されていないので、公開ネットワーク上での Email 送信はもともと安全でない通信方法とみなされています。
Postfix サーバーの実装を計画している場合は、以下の問題に対処することが推奨されます。

2.2.7.1. サービス拒否攻撃を制限する

Email の性質上、攻撃者が本気になるとサーバーに大量のメールを送信し、サービス拒否を発生させることが簡単にできます。/etc/postfix/main.cf ファイル内の指示文に制限を設定すると、このような攻撃の有効性が制限されます。既存の指示文の値を変更するか、以下の形式で希望する値の必要な指示文を追加することもできます。
<directive> = <value>
サービス拒否攻撃の制限に使用できる指示文を以下に示します。
  • 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 コマンドを拒否します。空き領域の最低限度をより大きくするように指定するには、queue_minfree の値が少なくとも message_size_limit の 1.5 倍になるように指定します。デフォルトの queue_minfree 値は 0 です。
  • header_size_limit — メッセージヘッダー保存に使用するメモリの最大バイト数です。ヘッダーサイズがこの制限を超える場合は、超過分が廃棄されます。デフォルト値は 102400 です。
  • message_size_limit — メッセージの最大バイト数で、これにはエンベロープ情報も含まれます。デフォルト値は 10240000 です。