Solaris のシステム管理 (資源管理とネットワークサービス)

sendmail プログラム

以下に、 sendmail プログラムの機能の一部を示します。

Solaris オペレーティング環境では、sendmail プログラムをメールルーターとして使用します。以下に、機能の一部を示します。

sendmail の詳細は、以下のトピックを参照してください。

sendmail とその再ルーティングメカニズム

sendmail プログラムでは、メールルーティングに必要な 3 つのメカニズムをサポートしています。適切なメカニズムは、変更の種類によって決まります。

さらに、選択する再ルーティングメカニズムによって必要な管理レベルが異なります。次のオプションを考慮してください。

  1. 別名再ルーティングメカニズム

    別名を使用すれば、使用するファイルの種類に基づいて、サーバー全体またはネームサービス全体をベースにしてアドレス名をマップできます。

    以下に、ネームサービスの別名の長所と短所を示します。

    • NIS や NIS+ などのネームサービス別名ファイルを使用すれば、メール再ルーティングの変更を単一のソースで管理できます。ただし、ネームサービスの別名指定では、再ルーティングの変更を伝達する際に遅延が起こります。

    • 通常、ネームサービスの管理は、特定のシステム管理者グループに制限されます。一般ユーザーは、このファイルを管理しません。

    以下に、サーバー別名ファイルを使用する際の長所と短所を示します。

    • サーバー別名ファイルを使用すれば、指定されたサーバーの root になることができる任意のユーザーが再ルーティングを管理できます。

    • サーバー別名指定は、再ルーティングの変更を伝達する際の遅延はほとんどありません。

    • 変更はローカルサーバーだけに影響します。ほとんどのメールが単一のサーバーに送信される場合は、影響が少なくなります。ただし、この変更を多くのメールサーバーに伝達する必要がある場合は、ネームサービスの別名指定を使用します。

    • 一般ユーザーは、この変更を管理しません。

    詳細は、この章の メール別名ファイルを参照してください。作業マップについては、第 25 章「メールサービス (手順)」メール別名ファイルの管理 (作業マップ)を参照してください。

  2. 次のメカニズムは、転送です。

    このメカニズムでは、ユーザーがメールの再ルーティングを管理できます。ローカルユーザーは、受信メールを以下の対象に再ルーティングできます。

    • 別のメールボックス

    • 別のメールプログラム

    • 別のメールホスト

    このメカニズムは、.forward ファイルによってサポートされます。.forward ファイルの詳細は、この章の .forward ファイルを参照してください。作業マップについては、第 25 章「メールサービス (手順)」.forward ファイルの管理 (作業マップ)を参照してください。

  3. 最後のメカニズムは、取り込みです。

    このメカニズムでは、root アクセス権を持たないユーザーも別名リストを保守できます。このメカニズムを提供するには、root ユーザーは、サーバー上の別名ファイル内に適切なエントリを作成する必要があります。このエントリが作成されると、ユーザーは必要に応じてメールをルーティングし直すことができるようになります。取り込みの詳細は、この章の /etc/mail/aliases ファイルを参照してください。作業マップについては、第 25 章「メールサービス (手順)」メール別名ファイルの管理 (作業マップ)を参照してください。

図 26–3 は、sendmail がユーザー別名をどのように使用するかを示します。/usr/bin/mailx のようなメールを読み取るプログラムは、プログラム自身の別名を持つことができ、それらはメッセージが sendmail に達する前に展開されます。sendmail の別名は、多くのネームサービスのソース (ローカルファイル、NIS、NIS+) からのものでもかまいません。検索順序は nsswitch.conf ファイルによって決定されます。nsswitch.conf(4) のマニュアルページを参照してください。

図 26-3 sendmail が別名を使用する方法

この図は、sendmail とその再ルーティングメカニズム (別名指定など) との依存関係を示しています。

sendmail プログラムの機能

sendmail プログラムには、次のような機能があります。

図 26–4 には、sendmail がメールシステムで他のプログラムと相互作用する方法を示します。

図 26-4 sendmail と他のメールプログラムとの対話

この図は、sendmail と SMTP、uucp、vacation、mail.local、mailx などとの相互作用を示しています。

図 26–4 に示すように、ユーザーはメール作成プログラムおよびメール送信プログラムと対話できます。メール送信が依頼されると、メール生成プログラムは sendmail を呼び出し、sendmail は適切なメールプログラムにメッセージを送信します。発信者の一部はネットワークサーバーであったり、またメールプログラムの一部はネットワーククライアントであるため、sendmail は、インターネットメールゲートウェイとしても使用できます。このプロセスの詳細は、メールプログラム間の相互作用を参照してください。

sendmail 構成ファイル

構成ファイルは、sendmail がその機能を実行する方法を制御します。構成ファイルにより、配信エージェント、アドレスの変換の規則、およびメールヘッダのフォーマットが選択されます。

sendmail プログラムは、/etc/mail/sendmail.cf ファイルの情報を使用して、その機能を実行します。各システムには、/etc/mail ディレクトリにインストールされたデフォルトの sendmail.cf ファイルがあります。メールサーバーまたはメールクライアントのためにデフォルト構成ファイルを編集または変更する必要はありません。カスタマイズされた構成ファイルを必要とするシステムは、メールホストとメールゲートウェイだけです。

Solaris オペレーティング環境には、以下に示すように、/etc/mail ディレクトリに 3 つのデフォルト構成ファイルがあります。

  1. メールホストまたはメールゲートウェイとして使用する 1 つのシステム (または複数のシステム) を指定するための main.cf という名前の構成ファイル

  2. デフォルトの sendmail.cf ファイルのコピーで subsidiary.cf という名前の構成ファイル

  3. デーモンモードの代わりにメール送信プログラムモードで sendmail を実行するために使用する submit.cf という名前の構成ファイルの詳細は、新しい構成ファイル submit.cfを参照してください。

システムで使用する構成ファイルは、メールサービスのシステムの役割によって異なります。

次に、サイトの要求に応じて変更が可能な構成パラメータをいくつか説明します。