sendmail バージョン 8.12 には、新しい構成ファイル /etc/mail/submit.cf が含まれています。この新しいファイル submit.cf を使用して、sendmail をデーモンモードではなく、メール差し出しプログラムモードで実行できます。デーモンモードとは異なり、メール差し出しプログラムモードでは root 権限は必要ありません。そのため、この新しいパラダイムを使用すると、セキュリティが向上します。
submit.cf の機能については、次のリストを参照してください。
sendmail は、MSP (メール差し出しプログラム) モードでは submit.cf を使って実行します。submit.cf は、電子メールを送信したり、ユーザー以外の mailx のようなプログラムによって呼び出したりすることができます。-Ac オプションおよび -Am オプションについては、コマンド行の新しいオプションまたは推奨されないオプション の説明を参照してください。
submit.cf は、次の操作モードで使用します。
-bm デフォルトの操作モード
-bs 標準入力を使用して SMTP を実行する
-bt アドレスの解決に使用されるテストモード
submit.cf を使用している場合には、sendmail は SMTP デーモンとして動作しません。
submit.cf を使用している場合には、sendmail はクライアント専用のメールキューである /var/spool/clientmqueue を使用します。このキューにより、sendmail デーモンに配信されなかったメッセージが保持されます。クライアント専用キューにあるメッセージは、クライアントの「デーモン」によって配信されます。実際には、このデーモンが、クライアントキューを実行します。
デフォルトでは、sendmail は submit.cf を使用して、定期的に MSP キュー (クライアント専用キュー) である /var/spool/clientmqueue を実行します。
/usr/lib/sendmail -Ac -q15m |
次の事項に注意してください。
Solaris 9 オペレーティング環境をインストールまたはそれにアップグレードすると、submit.cf は自動的にインストールされます。
Solaris 9 オペレーティング環境をインストールする前に、submit.cf について計画および準備をする必要はありません。
構成ファイルを指定しないかぎり、sendmail は、必要に応じて、submit.cf を自動的に使用します。基本的に、sendmail は各タスクについて、submit.cf と sendmail.cf のどちらを使用するのが適切かを判断できます。
submit.cf を変更することはできません。
構成ファイル sendmail.cf は、デーモンモードで使用します。このファイルを使用すると、sendmail は、メール転送エージェント (MTA) として動作します。sendmail は、root によって起動されます。
/usr/lib/sendmail -L sm-mta -bd -q1h |
sendmail.cf 特有の他の機能については、次のリストを参照してください。
デフォルトでは、sendmail.cf は、ポート 25 および 587 で SMTP 接続を受け入れます。
デフォルトでは、sendmail.cf がメインキュー /var/spool/mqueue を実行します。
submit.cf が追加されたため、次の機能が変更されました。
sendmail バージョン 8.12 では、root だけがメインキューを実行できます。この変更の詳細については、mailq(1) のマニュアルページを参照してください。新しい作業手順については、キューディレクトリの管理 (作業マップ) を参照してください。
メール通信プログラムモードは、root 権限なしに実行されるため、sendmail が .forward などの特定のファイルにアクセスできないことがあります。この場合、sendmail に -bv オプションを追加すると、誤った項目が出力されることがあります。回避策はありません。
8.12 より前のバージョンの sendmail では、sendmail デーモンを実行しない場合、つまりデーモンモードで実行しない場合は、受信メールの配信を防止することしかできませんでした。バージョン 8.12 では、デフォルトの構成で、sendmail デーモンを実行しない場合でも、送信メールの配信を防止することができます。クライアントキューランナー (メール通信プログラム) を設定して、ローカル SMTP ポートのデーモンにメールを送信できるようにする必要があります。クライアントキューランナーが SMTP のセッションをローカルホストで開こうとした場合で、デーモンが SMTP ポートで待機していないときには、メールはキューにとどまります。デフォルトの構成では、デーモンが実行されます。そのため、デフォルト構成を使用する場合には、この問題は発生しません。ただし、デーモンを無効にした場合の解決方法については、代替構成を使用したメール配信の管理 (手順) を参照してください。
次の表では、sendmail の新しいコマンド行オプションについて説明します。コマンド行の他のオプションについては、sendmail(1M) のマニュアルページを参照してください。
表 27-1 sendmail のコマンド行の新しいオプション
オプション |
説明 |
---|---|
オペレーションモードが新しいメールの差し出し依頼を示していない場合でも、構成ファイル submit.cf を使用する。submit.cf の詳細については、新しい構成ファイル submit.cf を参照 |
|
オペレーションモードが新しいメールの差し出し依頼を示している場合でも、構成ファイル sendmail.cf を使用する。詳細は、新しい構成ファイル submit.cf を参照 |
|
各キューのエントリ数を出力する |
|
コマンド行から送信したメッセージが、新たな差し出しを依頼するものではなく、リレーするものであることを示す。アドレスが絶対パスではない場合は、メッセージは拒否される。正規化は実行されない。ftp://ftp.sendmail.org で sendmail とともに配布しているリリースノートで説明しているように、将来のリリースでは、不適切な形式のメッセージを拒否される可能性がある |
|
指定された syslog メッセージに使用する識別子を タグ (tag) に設定する |
|
受信者にこの部分文字列 (substring) を含むジョブだけを処理する。オプションに ! を追加すると、送信者にこの部分文字列 (substring) を含まないジョブだけを処理する |
|
キュー ID にこの部分文字列 (substring) を含むジョブだけを処理する。オプションに ! を追加すると、キュー ID にこの部分文字列 (substring) を含まないジョブだけを処理する |
|
送信者にこの部分文字列 (substring) を含むジョブだけを処理する。オプションに ! を追加すると、送信者にこの部分文字列 (substring) を含まないジョブだけを処理する |
|
キューにあるメッセージをシステムコール fork を使用しないで一度処理し、フォアグラウンドで処理を実行する。fork(2) のマニュアルページを参照 |
|
キューグループ「name (名前)」にあるメッセージだけを処理する |
|
各キュー用にフォークされた子を使用して、キューに保存されているメッセージを指定した間隔で処理する。次にキューが実行されるまでの間、この子は動作しないこの新しいオプションは -qtime に似ている。-qtime は、定期的に子をフォークしてキューを処理する |
|
ftp://ftp.sendmail.org で sendmail とともに配布しているリリースノートで説明しているように、このオプションは、バージョン 8.12 では使用できない。メールユーザーエージェントでは、引数 -G を使用する必要がある |
この節では、構成ファイルの新しいオプションと改訂されたオプションについて、また次の関連トピックについて説明しています。
これらのオプションを宣言する場合は、次の構文のどれかを使用します。
O OptionName=argument # 構成ファイル -OOptionName=argument # コマンド行 define(`m4Name',argument) # m4 を使った構成記述 |
新しい sendmail.cf ファイルを構築する必要がある場合は、第 25 章「メールサービス (手順)」の sendmail.cf 構成ファイルの構築 (手順) を参照してください。
次の表では、sendmail の新しいオプションおよび改訂されたオプションについて説明しています。
表 27-2 sendmail の新しいオプションおよび改訂されたオプション
オプション |
説明 |
---|---|
m4 名: confBAD_RCPT_THROTTLE 引数 : 数値 この新しいオプションを使用して、受信者のしきい値が拒否された後、SMTP エンベロープ内の受信者を承認する率を制限する |
|
詳細については、新しい ClientPortOptions オプションを参照 |
|
m4 名: confCONNECTION_RATE_THROTTLE 引数 : number ConnectionRateThrottle オプションを使用して、各デーモンへの合計接続数ではなく、1 秒あたりの接続数を制限する |
|
m4 名: confCONTROL_SOCKET_NAME 引数 : ファイル名推奨ソケット名は /var/spool/mqueue/.smcontrol。セキュリティを向上させるために、この UNIX ドメインソケットを、root だけがアクセスできるディレクトリに置く このオプションを設定すると、デーモン管理用の制御ソケットが作成される。このオプションを使用して、指定した名前のソケットを使って実行した sendmail デーモンの状態を、外部のプログラムから制御したり照会したりすることができる。このソケットは、INN ニュースサーバーに対する ctlinnd インタフェースに似ている。このオプションを設定しないと、制御ソケットは使用できない |
|
詳細については、DaemonPortOptions オプションの変更点を参照 |
|
m4 名: confDF_BUFFER_SIZE 引数 : 数値 この新しいオプションを指定すると、ディスクベースのファイルを使用する前にメモリーに蓄積できるデータ (df) ファイルの最大サイズを、バイトで制御できる。デフォルトは 4096 バイト。Solaris オペレーティング環境のデフォルトを変更する必要はない |
|
m4 名: confDEAD_LETTER_DROP 引数 : ファイル名 この新しいオプションを使用して、システム全体のファイル dead.letter の場所を定義する。前のバージョンでは、このファイルは /usr/tmp/dead.letter に固定されていた。このオプションを設定する必要はない |
|
m4 名: confDELAY_LA 引数 : number この新しいオプションに 0 より大きな値を設定すると、次のように動作する 平均負荷率が指定値を超えると、接続を 1 秒ずつ遅らせる ほとんどの SMTP コマンドを 1 秒ずつ遅れて実行する デフォルト値が 0 であるため、このオプションを設定しないと sendmail の動作は変更されない |
|
m4 名: confDELIVER_BY_MIN 引数 : 時間 この新しいオプションを使用して、クライアントは、FC 2852 の「Deliver By SMTP Service Extension」で指定されているように、電子メールメッセージを配信する際の最短時間を指定できる time を 0 に設定すると、時間は表示されない time を 0 より小さくすると、拡張は利用できない time を 0 より大きくすると、その拡張した時間が EHLO のキーワードである DELIVERBY の最短時間として表示される |
|
m4 名: confDIRECT_SUBMISSION_MODIFIERS 引数 : 修飾子 この新しいオプションにより、直接の実行依頼 (コマンド行) の ${daemon_flags} を定義する。このオプションを設定しない場合、${daemon_flags} の値はオプション -G を使用すると、CC f に、使用しないと c u になる |
|
新たに、次の引数を使用できる 引数 NonRootSafeAddr が追加された。sendmail に .forward プログラムを実行したり、所有者としてそのファイルに配信する権限がない場合には、アドレスは「安全ではない」とマークされる。また、RunAsUser を設定すると、プログラムを使用したり、.forward プログラムのファイルに配信したりすることができない。これらの問題を解決するには、NonRootSafeAddr を使用する |
|
m4 名: confDOUBLE_BOUNCE_ADDRESS 引数 : アドレス。デフォルトは、postmaster sendmail がエラーメッセージを送信する際にエラーが発生した場合には、sendmail は、このオプションの引数で指定したアドレスに、「double-bounced」エラーメッセージを送信する |
|
m4 名: confFALLBACK_MX 引数 : 完全指定ドメイン名 このオプションを使用して、MX レコードを参照することができる。MX レコードを参照しない前のバージョンのオプションを使用するには、名前を角括弧で括って指定する |
|
m4 名: confFAST_SPLIT 引数 : 数値デフォルト値は 1 この新しいオプションを指定すると、次の動作を実行する このオプションを 0 より大きな値に設定する場合、アドレスをソートする場合、最初の MX 参照を行わない。そのため、エンベロープをより高速に分割できる メールをコマンド行から送信する場合は、この値により、エンベロープを配信するのに使用するプロセスの数を制限できる さらに多くのエンベロープが作成されると、それらはいったんキューに置かれ、キューが実行されると解釈処理される |
|
m4 名: confLDAP_DEFAULT_SPEC 引数 : 適切に定義されたクラス指定。たとえば、-hhost、-pport、-dbind DN など この新しいオプションを使用して、LDAP マップのデフォルトのマップ仕様を指定できる。K コマンドを使って個別のマップ仕様を作成しないかぎり、ここで行われたデフォルトの設定が、すべての LDAP マップに使用される。このオプションを設定してから、LDAP マップを定義する |
|
m4 名: confMAILBOX_DATABASE 引数 : デフォルト値は pw。これは、getpwnam() を使用する。他の値を使用することはできない この新しいオプションにより、ローカルな受信者を確認するのに使用されるメールボックスデータベースのタイプを指定できる |
|
m4 名: confMAX_HEADERS_LENGTH 引数 : 数値 このオプションにより、全ヘッダーの合計した最大の長さを指定できる。また、このオプションを使用して、サービス拒否害攻撃を防止できる。デフォルト値は 32768。16384 より小さい値を使用すると、警告が発行される。Solaris オペレーティング環境のデフォルト値を変更する必要はない |
|
m4 名: confMAX_MIME_HEADER_LENGTH 引数 : number このオプションにより、特定の MIME ヘッダ ーフィールド値の最大の長さを、文字数 x に設定できる。また、ヘッダー内のパラメータについては、y の最大の長さを指定できる。値を結合すると、「x/y」のようになる。y を指定しない場合には、x の半分の値が使用される。デフォルト値は 0 であるため、値を指定しないと、確認が実行されない。このオプションは、メールユーザーエージェントをバッファーオーバーフロー攻撃から保護する目的で提供されている。推奨値の範囲は、256/128 から 1024/256。128/40 より小さい値を使用すると、警告が発行される。 |
|
m4 名: confMAX_QUEUE_CHILDREN 引数 : 数値 この新しいコマンドにより、同時にアクティブになるキューランナー処理の数を引数で指定した値に制限できる。このオプションを使用すると、キューの処理時に使用されるシステム資源を制限できる。複数のキューグループにおけるキューランナーの合計数が定義した引数を超えると、残りのキューグループは、後で実行される |
|
m4 名: confMAX_RCPTS_PER_MESSAGE 引数 : 数値 このオプションを設定すると、SMTP エンベロープ内の受信者が指定した数を超えないようにする。最小の引数は 100。このオプションは、コマンド行からも、構成ファイルからも宣言できる。ただし、通常のユーザーは、コマンド行からこのオプションを設定し、sendmail -bs を使って送信したメッセージの上書きを有効にすることができる。この場合でも、sendmail は、その root 権限を放棄しない |
|
m4 名: confMAX_RUNNERS_PER_QUEUE 引数 : 数値デフォルト値は 1。リソースについてよく考慮し、この値を高く設定しないように注意する この新しいオプションにより、1 キューグループあたりのキューランナーの最大数を指定できる。複数のキューランナーは、キューグループのメッセージを並行処理する。この機能は、前のメッセージの処理が原因で次のメッセージの処理が遅れる可能性がある場合に便利である |
|
m4 名: confNICE_QUEUE_RUN 引数 : number この新しいオプションにより、キューランナーの優先順位を設定できる。nice(1) のマニュアルページを参照 |
|
m4 名: confPID_file 引数 : PidFile オプションおよび ProcessTitlePrefix オプションのその他の引数を参照 この新しいオプションにより、pid ファイルの場所を定義できる。ファイルを開く前に、そのファイル名がマクロで展開される。デフォルトの位置は /var/run/sendmail.pid |
|
詳細については、PrivacyOptions オプションの変更点を参照 |
|
m4 名: confPROCESS_TITLE_PREFIX 引数 : PidFile オプションおよび ProcessTitlePrefix オプションのその他の引数を参照 この新しいオプションにより、/usr/ucb/ps auxww にリストされるプロセスのタイトルについて、接頭辞の列を指定できる。この文字列はマクロで処理される。Solaris オペレーティング環境のデフォルト値を変更する必要はない |
|
m4 名: confQUEUE_FILE_MODE 引数 : number この新しいオプションを使用すると、キューファイルのデフォルトアクセス権を 8 進数で指定できる。このオプションを設定しないと、sendmail は 0600 を使用する。ただし、オプションの実ユーザー ID と実行ユーザー ID が異なる場合には、sendmail は 0644 を使用する |
|
m4 名: confQUEUE_LA 引数 : number デフォルト値は、8 からシステム起動時にオンラインであるプロセッサ数の 8 倍に変更された。単一プロセッサマシンでは、このデフォルト値の変更による影響はない。この値を変更するとデフォルト値が無効になり、プロセッサ数を考慮しなくなる。そのため、値を変更することによる影響について、よく理解する必要がある |
|
m4 名: confQUEUE_SORT_ORDER このオプションにより、キューのソートに使用するアルゴリズムを設定する。デフォルト値は priority であり、キューをメッセージの優先順位でソートする。次の変更に注意してください。 host の引数は、ホスト名を逆にしてからソートを実行する。つまり、ドメインをグループ化して、キューを同時に実行する。このように改良されたため、接続キャッシュがある場合には、それをより有効に使用できる 新しい引数 filename は、キューをファイル名でソートする。この機能により、キューを実行する準備をする際に、各キューにあるファイルを開いたり読み込んだりすることを避けることができる 新しい引数 modification は、キューを変更日時でソートし、qf ファイルのエントリを古い順に実行する 新しい引数 random は、キューを無作為にソートする。こうすると、複数のキューランナーを手動で開始する際に、回線争奪を避けることができる 詳細については、sendmail(1M) のマニュアルページの「QueueSortOrder」を参照 |
|
m4 名: confREFUSE_LA 引数 : number デフォルト値は、12 からシステム起動時にオンラインであるプロセッサ数の 12 倍に変更された。単一プロセッサマシンでは、このデフォルト値の変更による影響はない。この値を変更するとデフォルト値が無効になり、プロセッサ数を考慮しなくなる。そのため、値を変更することによる影響について、よく理解する必要がある |
|
このオプションについては、2 つの点が変更された。 ホスト名を正規化しようとする時、不具合が発生したネームサーバーが IPv6 T_AAAA 参照について一時障害メッセージ SERVFAIL を返すことがある。新しい引数 WorkAroundBrokenAAAA を使用して、このような動作を避けることができる また、引数 RES_USE_INET6 は、新しいフラグ use_inet6 を使って制御できる。詳細は、resolver(3RESOLV) のマニュアルページを参照 |
|
m4 名: confRRT_IMPLIES_DSN 引数 : true または false この新しいオプションを設定すると、「Return-Receipt-To:」ヘッダーにより、DSN (delivery status notification) が要求される。この要求は、ヘッダーで指定されているアドレスではなく、エンベロープの送信側に送信される |
|
m4 名: confMIME_FORMAT_ERRORS 引数 : true または false デフォルトは true |
|
m4 名: confSHARED_MEMORY_KEY 引数 : 数値 この新しいオプションを使用すると、共有メモリーがある場合に、それを使ってキューのファイルシステム用の容量を保存できる。このオプションにより、空き容量を確認するシステムコールの数を最小限にすることができる |
|
m4 名: confSAFE_QUEUE 引数 : true、false、または interactiveデフォルト値および推奨値は true。false は使用しないこと このオプションを true に設定すると、キューのファイルをすぐに配信する場合でも、それらは常にインスタンス化される。interactive と DeliveryMode=i を同時に使用して、このモード用に、コード実行パスで重複している同期コールをスキップすることができる |
|
詳細については、Timeout オプションの変更点を参照 |
|
m4 名: confTRUSTED_USER 引数 : ユーザー名またはユーザー ID の数値 この新しいオプションを使用して、root の代わりに重要なファイルを所有するユーザー名を指定することができる。このオプションを設定すると、そのユーザーは、生成された別名データベースと、設定した場合には制御ソケットを自動的に所有する。このオプションには、HASFCHOWN を設定する必要がある。HASFCHOWN については、sendmail のコンパイルに使用できるフラグと使用できないフラグを参照 TrustedUser、root、およびクラス t ($=t) のユーザーだけが、別名マップを構築できる |
|
m4 名: confUSE_MSP 引数 : true または false デフォルトは、false この新しいオプションにより、グループが sendmail バイナリのグループ ID セットグループと同じ場合には、キューファイルをそのグループについて書き込み可能にすることが許可される。submit.cf では、このオプションを true に設定する必要がある |
|
m4 名: confXF_BUFFER_SIZE 引数 : number この新しいオプションを指定すると、ディスクベースのファイルを使用する前にメモリーに蓄積できるトランスクリプト (xf) ファイルの最大サイズを、バイトで制御できる。デフォルトは 4096 バイト。Solaris オペレーティング環境のデフォルトを変更する必要はない |
構成ファイルで推奨されないオプションについては、次の表を参照してください。この表には AutoRebuildAliases オプションが記載されていますが、このオプションは、sendmail バージョン 8.12 には含まれていません。
表 27-3 sendmail の構成ファイルにおける推奨されないオプションまたはサポートされていないオプション
オプション |
説明 |
---|---|
このオプションを設定するとサービス妨害攻撃が実行されることがあるため、このオプションは sendmail バージョン 8.12 には含まれていない。ftp://ftp.sendmail.org で sendmail とともに配布しているリリースノートを参照。別名ファイルを構築中に、sendmail の処理を停止して、そのファイルを矛盾した状態のままにすることができる さらに、AutoRebuildAliases を使用できないため、/etc/mail/aliases に加えた変更を適用するには、newaliases を手動で実行する必要がある。また、このバージョンでは、sendmail は setuid root ではないため、root だけが newaliases を実行できる。 |
|
このオプションのデフォルトは True になっており、その使用を推奨されていない ftp://ftp.sendmail.org で sendmail とともに配布しているリリースノートを参照 |
|
このオプションは推奨されていない。必要に応じて、GroupWritableForwardFileSafe および GroupWritableIncludeFileSafe の引数を DontBlameSendmail オプションに使用する必要がある |
|
このオプションは推奨されていない。また、このオプションは RFC 1123 に違反するため、使用しないこと |
新しく追加された ClientPortOptions オプションは発信接続に使用します。このオプションは、DaemonPortOptions オプションに似ています。このオプションにより、クライアントの SMTP オプションが設定されます。クライアントの SMTP オプションは、一連の key=value ペアです。このオプションを宣言するには、次の構文のどれかを使用します。フォーマットのために、これらの例には 2 組のペアが含まれています。ただし、1 組以上のペアを適用できます。
O ClientPortOptions=pair,pair # 構成ファイル -OClientPortOptions=pair,pair # コマンド行 define(`confCLIENT_OPTIONS',`pair,pair') # m4 を使った構成記述 |
新しい sendmail.cf ファイルを構築する必要がある場合は、第 25 章「メールサービス (手順)」の sendmail.cf 構成ファイルの構築 (手順) を参照してください。
次の表では、このオプションの新しいキーについて説明しています。
表 27-4 ClientPortOptions の新しいキー
キー |
説明 |
---|---|
Addr |
アドレスマスクを指定する。この値は、ドット表記した数値のアドレスにすることも、ネットワーク名にすることもできる。このペアが省略されると、デフォルトは INADDR_ANY となり、どのネットワークからの接続も受け入れる |
Family |
アドレスファミリーを指定する。AF_INET のキーのデフォルトは inet。他の値は、AF_INET6 には inet6、AF_ISO には iso、AF_NS には ns、AF_CCITT には x.25 である |
Listen |
待機キューのサイズを指定する。キーのデフォルトは 10。Solaris オペレーティング環境のデフォルトを変更する必要はない |
Port |
待機ポートの名前および番号を指定する。キーのデフォルトは smtp |
RcvBufSize |
TCP/IP 送信バッファーのサイズを指定する。キーにはデフォルト値がないため、サイズが自動的に設定されることはない。このオプションを 0 より大きな値に設定すると、その値が使用される。Solaris オペレーティング環境では、このバッファーのサイズを制限する必要はない |
Modifier |
次のような sendmail のフラグを指定する h フラグは、HELO または EHLO コマンドに、送信インタフェースアドレスに対応する名前を使用する。これは、その名前が接続パラメータで選択されたものであっても、デフォルトのものであっても同様である A フラグは、AUTH を無効にする。このフラグは、DaemonPortOptions の Modifier キーに使用できる。DaemonPortOptions オプションの変更点を参照 S フラグは、電子メールの配信中または受信中に、STARTTLS を使用できないようにしたり、それを提供したりしないようにする |
このオプションを宣言するには、次の構文のどれかを使用します。この例では、pair は key=value を示します。フォーマットのために、これらの例には 2 組のペアが含まれています。ただし、1 組以上のペアを適用できます。
O DaemonPortOptions=pair,pair # 構成ファイル -ODaemonPortOptions=pair,pair # コマンド行 define(`confDAEMON_OPTIONS',`pair,pair') # m4 を使った構成記述 |
セキュリティのリスクを少なくするために、このオプションをコマンド行から設定すると、sendmail はスーパーユーザーアクセス権を放棄します。
新しい sendmail.cf ファイルを構築する必要がある場合は、第 25 章「メールサービス (手順)」の sendmail.cf 構成ファイルの構築 (手順) を参照してください。
次の表では、DaemonPortOptions オプションの新しいキーおよび改訂されたキーについて説明しています。
表 27-5 DaemonPortOptions の新しいキーおよび改訂されたキー
キー |
説明 |
---|---|
Name |
この新しいキーは、ユーザーが定義可能な sendmail の名前を指定する。このキーは、エラーメッセージおよびログに使用する。デフォルトは、MTA |
Modifier |
この新しいキーは、sendmail の値を指定する。この値は、区切り記号なしで、順番にリストすることができる。値のリストについては、表 27–6を参照 |
Family |
DaemonPortOptions オプションで、Family を指定しないかぎり、inet だけがデフォルトとなる。また、IPv6 ユーザーが、IPv6 インタフェースに対しても待機するには、Family=inet6 設定を DaemonPortOptions オプションに追加して、追加ソケットを sendmail.cf に設定する |
次の表では、新しい Modifier キーの値について説明しています。
表 27-6 新しい Modifier キーの値
値 |
説明 |
---|---|
A |
Modifier 値を a にして、AUTH を無効にする ClientPortOptions の Modifier キーに使用できる。新しい ClientPortOptions オプションを参照 |
C |
ホスト名の正規化を実行しない |
E |
ETRN コマンドを不許可にする |
O |
障害が発生したら、ソケットを無視する |
S |
電子メールの配信中または受信中に、STARTTLS を使用できないようにしたり、それを提供したりしないようにする ClientPortOptions の Modifier キーに使用できる。 |
a |
認証を要求する |
b |
メールを受信するインタフェースに結合する |
c |
ホスト名の正規化を実行する。この値は、構成ファイルの宣言でのみ使用する |
f |
完全指定ホスト名を要求する。この値は、構成ファイルの宣言でのみ使用する |
h |
送信 HELO コマンドに、インタフェース名を使用する |
u |
修飾されていないアドレスを使用する。この値は、構成ファイルの宣言でのみ使用する |
次の表では、PidFile オプションおよび ProcessTitlePrefix オプションにおけるマクロ処理の引数について説明します。これらのオプションについては、表 27–2を参照してください。
表 27-7 PidFile オプションおよび ProcessTitlePrefix オプションの引数
マクロ |
説明 |
---|---|
${daemon_addr} |
0.0.0.0 などのデーモンアドレスを提供する |
${daemon_family} |
inet や inet6 などのデーモンファミリーを提供する |
${daemon_info} |
SMTP+queueing@00:30:00 などのデーモン情報を提供する |
${daemon_name} |
MSA などのデーモン名を提供する |
${daemon_port} |
25 などのデーモンポートを提供する |
${queue_interval} |
キューを実行する間隔を提供する (00:30:00 など) |
次の表では、PrivacyOptions (popt) の新しい引数および改訂された引数を説明しています。このオプションは、sendmail がその root 権限を放棄することなく、コマンド行から宣言できます。この sendmail オプションを宣言するには、次の構文のどれかを使用します。
O PrivacyOptions=argument # 構成ファイル -OPrivacyOptions=argument # コマンド行 define(`confPRIVACY_FLAGS',`argument') # m4 を使った構成記述 |
新しい sendmail.cf ファイルを構築する必要がある場合は、第 25 章「メールサービス (手順)」の sendmail.cf 構成ファイルの構築 (手順) を参照してください。
次の表では、PrivacyOptions オプションの新しい引数および改訂された引数について説明しています。
表 27-8 PrivacyOptions の新しい引数および改訂された引数
引数 |
説明 |
---|---|
goaway |
この引数には、フラグ noetrn、restrictmailq、restrictqrun、restrictexpand 、nobodyreturn、および noreceipts は使用できない |
nobodyreturn |
この引数は、元のメッセージの本文を DNS (Delivery Status Notifications) に含めないように、sendmail に指示する |
noreceipts |
この引数を設定すると、DSN (Delivery Status Notifications) が通知されない |
restrictexpand |
この引数は、root でも TrustedUser でもないユーザーが -bv オプションを指定した場合に、権限を解除するように sendmail に指示する。ユーザーは、.forward ファイルまたは :include: ファイルなどの非公開の別名を読み込むことができない。また、この引数は、コマンド行オプションの -v を無効にする |
次の表では、Timeout オプションの変更点について説明しています。具体的に言うと、この sendmail オプションには、ident における新しいキーワードおよび新しい値があります。Solaris オペレーティング環境では、この表に表示されているキーワードのデフォルト値を変更する必要はありません。ただし、変更する場合には、keyword=value の構文を使用してください。この value は、時間の間隔です。次の例を参照してください。
O Timeout.keyword=value # 構成ファイル -OTimeout.keyword=value # コマンド行 define(`m4_name', value) # m4 を使った構成記述 |
新しい sendmail.cf ファイルを構築する必要がある場合は、第 25 章「メールサービス (手順)」の sendmail.cf 構成ファイルの構築 (手順) を参照してください。
セキュリティのリスクを少なくするために、このオプションをコマンド行から設定すると、sendmail はスーパーユーザーアクセス権を放棄します。
キーワード |
デフォルト値 |
説明 |
---|---|---|
aconnect |
0 |
m4 名: confTO_ACONNECT 1 回の配信について、すべての接続が成功するまでの合計時間を制限する。最大値は指定されていない |
control |
2m |
m4 名: confTO_CONTROL 制御ソケットの要求を完了するまでにかかる合計時間を制限する |
ident |
5s |
m4 名: confTO_IDENT デフォルトでは、30 秒ではなく 5 秒。IDENT パケットを欠落させるサイトへのメール送信が原因で発生する通常の遅延を防止する。最大値は指定されていない |
lhlo |
2m |
m4 名: confTO_LHLO LMTP LHLO コマンドからの応答を待つ時間を制限する。最大値は指定されていない |
queuereturn |
5d |
m4 名: confTO_QUEUERETURN 値 now を含める。こうすると、キューにあるエントリを配信しないで、すぐに戻すことができる |
resolver.retrans |
状況により異なる |
m4 名: confTO_RESOLVER_RETRANS リゾルバによる再伝送の間隔を秒で指定する。この間隔は、resolver.retrans.first および resolver.retrans.normal に適用される |
resolver.retrans.first |
状況により異なる |
m4 名: confTO_RESOLVER_RETRANS_FIRST リゾルバが、メッセージをはじめて配信する際の再送の間隔を秒で設定する |
resolver.retrans.normal |
状況により異なる |
m4 名: confTO_RESOLVER_RETRANS_NORMAL リゾルバが、最初のメッセージ配信を除く、すべての参照を実行する際の再伝送の間隔を指定する |
resolver.retry |
状況により異なる |
m4 名: confTO_RESOLVER_RETRY リゾルバクエリーを再送する回数を設定する。この回数は、Timeout.resolver.retry.first および Timeout.resolver.retry.normal に適用される |
resolver.retry.first |
状況により異なる |
m4 名: confTO_RESOLVER_RETRY_FIRST メッセージをはじめて配信する際にリゾルバクエリーを再送する回数を設定する |
resolver.retry.normal |
状況により異なる |
m4 名: confTO_RESOLVER_RETRY_NORMAL 最初のメッセージ配信を除く、すべてのリゾルバ参照を実行する際に、リゾルバクエリーを再送する回数を設定する |
次の表では、sendmail プログラムで使用するための新しいマクロについて説明しています。マクロの値は、内部で割り当てられています。詳細は、sendmail(1M) のマニュアルページを参照してください。
表 27-10 sendmail に定義されたマクロ
マクロ |
説明 |
---|---|
${addr_type} |
現在のアドレスを、エンベロープの送信側または受信者アドレスと認定する |
${client_resolve} |
${client_name} の解釈処理コールの結果、つまり OK、FAIL、FORGED、または TEMP を保持する |
${deliveryMode} |
DeliveryMode オプションの値ではなく、sendmail が使用している現在のデリバリモードを指定する |
${dsn_notify}、${dsn_envid}、${dsn_ret} |
対応する DSN パラメータ値を保持する |
${if_addr} |
インタフェースがループバックネット上にない場合に、受信接続用インタフェースのアドレスを提供する。このマクロは、特に仮想ホスティングに便利である |
${if_addr_out}、${if_name_out}、${if_family_out} |
${if_addr} の再利用を避ける。次の値を、それぞれ保持する 送信接続用インタフェースのアドレス 送信接続用インタフェースのホスト名 送信接続用インタフェースのファミリ |
${if_name} |
受信接続用のインタフェースのホスト名を提供する。これは、特に仮想ホスティングに便利である |
${load_avg} |
実行キューにあるジョブの現在の平均数を確認して報告する |
${msg_size} |
ESMTP ダイアログにあるメッセージサイズの値 ( SIZE=parameter) を保持してから、メッセージを収集する。その後、sendmail によって計算されたメッセージサイズを保持したマクロを check_compat で使用する。check_compat については、表 27–14 を参照 |
${nrcpts} |
妥当性検査を行った受信者の数を保持する |
${ntries} |
配信を試みた回数を保持する |
${rcpt_mailer}、 ${rcpt_host}、${rcpt_addr}、${mail_mailer}、${mail_host}、および ${mail_addr} |
引数 RCPT および MAIL を構文解析した結果を保持する。つまり、メール配信エージェント ($# mailer)、ホスト ($@host)、およびユーザー ($:addr) から解釈処理された RHS (Right-Hand Side) トリプレットを保持する |
マクロ |
説明 |
---|---|
LOCAL_MAILER_EOL |
ローカルメールプログラムの行末を示すデフォルト文字列を置きかえる |
LOCAL_MAILER_FLAGS |
デフォルトでは、Return-Path: ヘッダを追加する |
MAIL_SETTINGS_DIR |
メール設定ディレクトリのパスを格納する (末尾のスラッシュを含む) |
MODIFY_MAILER_FLAGS |
*_MAILER_FLAGS を拡張する。このマクロは、フラグを設定、追加、または削除する |
RELAY_MAILER_FLAGS |
リレーメールプログラムの追加フラグを定義する |
次の新しいマクロを使用して、受け入れ可能なコマンドを最大数設定し、sendmail による配信の遅れを防止することができます。これらの MAX マクロは、コンパイル時に設定できます。次の表にある最大値は、現在のデフォルト値でもあります。
表 27-12 新しい MAX マクロ
マクロ |
最大値 |
各マクロが確認するコマンド |
---|---|---|
25 |
未知なコマンド |
|
20 |
NOOP、VERB、ONEX 、XUSR |
|
3 |
HELO、EHLO |
|
6 |
VRFY、EXPN |
|
8 |
ETRN |
マクロによる確認を無効にするには、マクロの値を 0 に設定します。
この節では、sendmail における新しい m4 構成マクロおよび改訂された m4 構成マクロを、表を使って説明します。これらのマクロを宣言するには、次の構文を使用します。
symbolic_name(`value') |
新しい sendmail.cf ファイルを構築する必要がある場合は、第 25 章「メールサービス (手順)」の sendmail.cf 構成ファイルの構築 (手順) を参照してください。
表 27-13 sendmail における新しい m4 構成マクロおよび改訂された m4 構成マクロ
m4 マクロ |
説明 |
---|---|
FEATURE() |
詳細は、FEATURE() の宣言についての変更点を参照してください。 |
このマクロは、クラス w ($=w) にエントリを追加する |
|
マスカレードできないホストやサブドメインを定義する新しいマクロ |
|
このマクロは user@[ host] のように、括弧で囲まれたアドレスに使用できる |
|
これらのマクロを使用する場合は、$=R に $={VirtHost} を含める。$=R は一連のホスト名で、これらを使ってリレーすることができる |
FEATURE() の宣言についての変更点については、次の表を参照してください。
FEATURE の新しい名前および改訂された名前を使用するには、次の構文を使用します。
FEATURE(`name', `argument') |
新しい sendmail.cf ファイルを構築する必要がある場合は、第 25 章「メールサービス (手順)」の sendmail.cf 構成ファイルの構築 (手順) を参照してください。
表 27-14 新規および改訂された FEATURE() の宣言
FEATURE() の名前 |
説明 |
---|---|
引数 : 次の段落の例を参照 この新しい FEATURE() を使用して、送信側のアドレスおよび受信者のアドレスを含むアクセスマップからキーを検索できる。その際には、<@> で区切る。例 - sender@sdomain<@>recipient@rdomain |
|
引数 : friend にすると、スパムメールの friend テストを実行できる。また、hater にすると、スパムメールの hater テストを実行できる。 すべての確認作業を遅らせる新しい FEATURE()。FEATURE(`delay_checks') を使用すると、クライアントが接続する場合、またはクライアントが MAIL コマンドを発行する場合に、ルールセット check_mail および check_relay は呼び出されない。代わりに、これらのルールセットはルールセット check_rcpt によって呼び出される。詳細については、/usr/lib/mail/README ファイルを参照 |
|
引数 : この FEATURE() は、最大次の 2 つの引数を受け入れる。
DNS 参照の戻り値を確認する回数を複数にできる新しい FEATURE()。この FEATURE() を使用して、参照が一時的に失敗した場合の動作を指定できる |
|
引数 : ドメイン名 dnsbl の強化バージョン。この FEATURE() を使用して、DNS 参照の戻り値を確認できる。詳細は、/usr/lib/mail/README を参照 |
|
引数 :なし genericstable を $=G のサブドメインに適用するのに使用する新しい FEATURE() |
|
引数 : 詳細については、http://www.sendmail.org の「リリースノート」を参照 LDAP アドレスルーティングを実装する新しい FEATURE() |
|
引数 : LMTP (Local Mail Transfer Protocol) を使用できるメールプログラムのパス名。デフォルトは mail.local であり、今回の Solaris リリースでは LMTP を使用できる ローカルメールプログラムの DSN (delivery status notification) 診断コードのタイプを SMTP の正しい値に設定する FEATURE() |
|
引数 :なし ローカルメールプログラムをマスカレードしないようにするために使用する新しい FEATURE() |
|
引数 : なし アクセスマップの .domain を参照するのに使用する新しい FEATURE() |
|
引数 : canonify_hosts またはなし FEATURE() には次の機能が含まれている CANONIFY_DOMAIN または CANONIFY_DOMAIN_FILE で指定した、ドメインのリストを演算子 $[ および $] に渡して正規化することができる canonify_hosts がそのパラメータとして指定されている場合には、ホスト名だけを持つアドレス (<user@host> など) を正規化できる 複数のコンポーネントを持つアドレスの末尾にドットを追加できる |
|
引数 : なし sendmail のデフォルト設定を m4 構成ファイルでオフにする新しい FEATURE()。このファイルは、複数の異なるポート上で待機するために生成されたもので、RFC 2476 に実装されている |
|
引数 : reject にすると、! トークンを使用できない。nospecial にすると、! トークンを使用できる ! トークンをアドレスのローカルの部分に使用するかどうかを決定する FEATURE() |
|
引数 : なし 通常の構成ですべてのルールセットを提供する FEATURE()。スパムメール対策チェックを実行する |
|
引数 :なし sendmail がアドレスをローカル配信エージェントに渡す際に、アドレスの +detail の部分を保存できる新しい FEATURE() |
|
引数 :なし LUSER_RELAY を使用している場合に、受信者のホスト名を保存できる新しい FEATURE() |
|
引数 : なし 電子メールのアドレス全体または受信者のドメインに基づいたキューグループを選択できる新しい FEATURE() |
|
引数 : ドメインは、任意の引数 メールの送信側がアクセスマップに RELAY として指定されており、それをヘッダ行 From: で呼び出せる場合に、リレーを許可する新しい FEATURE()。任意の引数ドメインを指定すると、メール送信側のドメインの部分が確認される |
|
引数 : なし $={VirtHost} を適用するのに使用する FEATURE()。$={VirtHost} は、VIRTUSER_DOMAIN または VIRTUSER_DOMAIN_FILE を使って生成できる virtusertable エントリを一致させるための新しいクラス また、FEATURE(`virtuser_entire_domain') を使用して、クラス $={VirtHost} をサブドメイン全体に適用することもできる |
表 27-15 宣言がサポートされていない FEATURE()
MAILER() を宣言すると、配信エージェントのサポートを指定できます。配信エージェントを宣言するには、次の構文を使用します。
MAILER(`symbolic_name') |
次の変更に注意してください。
この新しいバージョンの sendmail では、MAILER(`smtp') を宣言すると、メールプログラム dsmtp が追加されます。dsmtp により、メールプログラムのフラグ F=% を使用して、オンデマンドに配信することができます。dsmtp メールプログラムを定義する際には、新しい DSMTP_MAILER_ARGS を使用します。DSMTP_MAILER_ARGS のデフォルトは IPC $h です。
MAILER によって使用されるルールセットの番号は削除されました。MAILER(`uucp') を除いて、MAILER の表示順を自由に設定できます。uucp-dom および uucp-uudom を使用する場合には、MAILER(`uucp') の後に MAILER(`smtp') を配置する必要があります。
メールプログラムの詳細については、メールプログラムを参照してください。新しい sendmail.cf ファイルを構築する必要がある場合は、第 25 章「メールサービス (手順)」の sendmail.cf 構成ファイルの構築 (手順) を参照してください。
次の表では、配信エージェントの新しいフラグについて説明しています。デフォルトでは、これらのフラグは設定されていません。これらの 1 文字のフラグはブール型です。このフラグを設定したりその設定を解除したりするには、次の例のように、フラグを構文ファイルの F= 文に含めるか除外します。
Mlocal, P=/usr/lib/mail.local, F=lsDFMAw5:/|@qSXfmnz9, S=10/30, R=20/40, Mprog, P=/bin/sh, F=lsDFMoqeu9, S=10/30, R=20/40, D=$z:/, Msmtp, P=[IPC], F=mDFMuX, S=11/31, R=21, E=\r\n, L=990, Mesmtp, P=[IPC], F=mDFMuXa, S=11/31, R=21, E=\r\n, L=990, Msmtp8, P=[IPC], F=mDFMuX8, S=11/31, R=21, E=\r\n, L=990, Mrelay, P=[IPC], F=mDFMuXa8, S=11/31, R=61, E=\r\n, L=2040, |
フラグ |
説明 |
---|---|
% |
このフラグを使用するメールプログラムは、ETRN 要求やキューオプション -qI、-qR、または -qS のいずれかを使ってキューにあるメッセージを選択しないかぎり、最初の受信者宛にメールを配信したり、キューを実行したりしない |
1 |
このフラグは、\0 などのヌル文字を送信するメールプログラムの機能を無効にする |
2 |
このフラグは、ESMTP の使用を無効にし、代わりに SMTP を使用するように要求する |
6 |
このフラグを指定すると、メールプログラムでヘッダを 7 ビットにすることができる |
次の表では、配信エージェントを定義するコマンド M とともに使用できる新しい等号 (=) について説明しています。次の構文は、等号 (=) を新たに付加する方法、および構成ファイルの既存の等号に新しい引数を付加する方法を示しています。
Magent_name, equate, equate, ... |
次の例には、新しい等号 (=) W= が含まれています。この W= は、データが送信された後でメールプログラムが戻るまでの最長待ち時間を示します。
Msmtp, P=[IPC], F=mDFMuX, S=11/31, R=21, E=\r\n, L=990, W=2m |
m4 の構成値の定義を変更するには、次の例のような構文を使用します。
define(`SMTP_MAILER_MAXMSGS', `1000') |
この例では、smtp メールプログラムで 1 回の接続で配信されるメッセージ数を 1000 に制限しています。
新しい sendmail.cf ファイルを構築する必要がある場合は、第 25 章「メールサービス (手順)」の sendmail.cf 構成ファイルの構築 (手順) を参照してください。
通常、mailer ディレクトリで、この等号の定義を変更するのは、微調整が必要な場合だけです。
本リリースでは、複数のキューディレクトリをサポートしています。複数のキューを使用するには、次の例のように、アスタリスク (*) で終わっている QueueDirectory オプション値を構成ファイルに追加します。
O QueueDirectory=/var/spool/mqueue/q* |
このオプション値 /var/spool/mqueue/q* は、「q」で始まっているすべてのディレクトリ (またはディレクトリへのシンボリックリンク) をキューのディレクトリとして使用します。sendmail の実行中には、キューのディレクトリ構造を変更しないでください。キューを実行すると、デーモン以外のキューの実行時に冗長フラグ (-v) を使用しないかぎり、各キューについての実行プロセスが作成されます。この新しい項目が、無作為にキューに割り当てられます。
この新しいキューのファイルの名前付けシステムで使用する名前は、60 年間一意であることが保証されます。このシステムでは、キュー ID が複雑なファイルシステムのロックを使用しないで割り当てられるため、キューにある項目を簡単に他のキューに移動することができます。
sendmail バージョン 8.12 では、root だけがメインキューを実行できます。この変更の詳細については、mailq(1) のマニュアルページを参照してください。新しい作業手順については、キューディレクトリの管理 (作業マップ)を参照してください。
エンベロープの分割に対応するために、キューファイルの名前は 14 文字ではなく、15 文字にします。14 文字までの名前を持つファイルシステムは、サポートされません。
関連する作業については、キューディレクトリの管理 (作業マップ)を参照してください。
次に、LDAP (Lightweight Directory Access Protocol) を sendmail で使用する際の変更点について説明します。
LDAPROUTE_EQUIVALENT() および LDAPROUTE_EQUIVALENT_FILE() を使用して、同じホスト名を指定することができます。これらのホスト名は、LDAP ルーティング参照のマスカレードドメイン名と置き換えられます。詳細は、/usr/lib/mail/README を参照してください。
ftp://ftp.sendmail.org で sendmail とともに配布しているリリースノートで説明しているように、LDAPX マップの名前は LDAP に変更されました。LDAP には、次の構文を使用します。
Kldap ldap options |
本リリースでは、一度の LDAP 参照に複数の値を返すことができます。次の例のように、返す値を -v オプションを付加したコンマ区切りの文字列に配置します。
Kldap ldap -v"mail,more_mail" |
LDAP マップの宣言で LDAP 属性が指定されていない場合は、一致した属性がすべて返されます。
このバージョンの sendmail は、LDAP 別名ファイルに指定された引用符などで囲まれたキーや値の文字列内のコンマによって、1 つのエントリが複数のエントリに分割されるのを防止します。
このバージョンの sendmail には、LDAP マップ用の新しいオプションがあります。この -Vseparator オプションを使用して、区切り文字を指定できます。そのため、参照を行うと、該当する separator によって区切られた属性と値の両方が返されることがあります。
%s トークンを使用して LDAP フィルタ指定を構文解析する代わりに、新しいトークンである %0 を使用して、キーバッファーを符号化することができます。%0 トークンは、LDAP の特殊文字に対して、文字どおりの意味を適用します。
次の例では、* にこれらのトークンを使って参照する場合の相違点について説明します。
表 27-18 トークンの比較
LDAP のマップ指定 |
同等の指定 |
結果 |
---|---|---|
-k"uid=%s" |
-k"uid=*" |
レコードとユーザー属性を照合する |
-k"uid=%0" |
-k"uid=\2A" |
ユーザーと名前「*」を照合する |
次の表では、LDAP マップの新しいフラグについて説明しています。
表 27-19 LDAP マップの新しいフラグ
フラグ |
説明 |
---|---|
-1 |
一致したレコードが 1 つだけだった場合、そのレコードを返す。複数のレコードが一致して返される場合には、結果として、レコードが検出されなかったことと同じとなる |
-r never|always|search|find |
LDAP 別名の参照を解除するオプションを設定する |
-Z size |
一致したもののうち、返すレコード数を制限する |
前のバージョンに組み込まれていたメールプログラム [TCP] は使用できません。代わりに、新しく組み込まれたメールプログラム P=[IPC] を使用してください。新しく組み込まれたプロセス間通信メールプログラム ([IPC]) を使用して、それをサポートしているシステム上の UNIX ドメインソケット宛てにメールを配信できます。このメールプログラムは、指定したソケットで待機している LMTP 配信エージェントとともに使用できます。次に、メールプログラムの例を示します。
Mexecmail, P=[IPC], F=lsDFMmnqSXzA5@/:|, E=\r\n, S=10, R=20/40, T=DNS/RFC822/X-Unix, A=FILE /var/run/lmtpd |
[IPC] メールプログラムの最初の引数が、正当な値であるかどうかが確認されます。次の表では、最初のメールプログラム引数に設定可能な値について説明しています。
表 27-20 最初のメールプログラム引数に設定可能な値
値 |
説明 |
---|---|
A=FILE |
UNIX ドメインソケットによる配信に使用する |
A=TCP |
TCP/IP 接続に使用する |
A=IPC |
最初のメールプログラム引数としては使用できない |
次の表では、新しいルールセットとその動作について説明しています。
表 27-21 新しいルールセット
ルールセット |
説明 |
---|---|
ヘッダーから収集した情報を相関させ、欠けているヘッダーを確認する。このルールセットは、マクロストレージマップとともに使用し、すべてのヘッダーが収集された後、呼び出される |
|
check_rcpt が RCPT を使用するように、ETRN コマンドを使用する |
|
check_rcpt が RCPT を使用するように、EXPN コマンドを使用する |
|
check_rcpt が RCPT を使用するように、 VRFY コマンドを使用する |
次に、ルールセットの新しい機能について説明します。
番号が付けられたルールセットには、名前も付けられました。ただし、これらのルールセットに、番号でアクセスすることもできます。
H ヘッダー構成ファイルコマンドを使用して、デフォルトのルールセット指定し、ヘッダーを確認することができます。各ヘッダーに、独自のルールセットが割り当てられていない場合にだけ、このルールセットが呼び出されます。
ルールセット内のコメント、つまり括弧内のテキストは、構成ファイルのバージョンが 9 かそれ以上である場合には削除されません。たとえば、次のルールは、入力 token (1) を照合します。ただし、入力 token は照合しません。
R$+ (1) $@ 1 |
TCP ラッパーまたは check_relay ルールセットが原因でコマンドを拒否する場合でも、sendmail は SMTP RSET コマンドを受け入れます。
OperatorChars オプションを何度も設定すると、警告が送信されます。また、ルールセットを定義した後で OperatorChars を設定しないでください。
無効なルールセットを宣言すると、行だけでなく、そのルールセットの名前も無視されます。そのルールセットの行は S0 に追加されません。
helpfile は、/etc/mail/helpfile にあります。古い名前 (/etc/mail/sendmail.hf ) には、新しい名前へのシンボリックリンクがあります。
trusted-users ファイルは、/etc/mail/trusted-users にあります。アップグレード中に、新しい名前は検出されず、古い名前である /etc/mail/sendmail.ct が検出されると、古い名前から新しい名前へのハードリンクが作成されます。それ以外の場合には、変更されません。デフォルトの内容は、root です。
local-host-names ファイルは、/etc/mail/local-host-names にあります。アップグレード中に、新しい名前は検出されず、古い名前である /etc/mail/sendmail.cw が検出されると、古い名前から新しい名前へのハードリンクが作成されます。それ以外の場合には、変更されません。デフォルトの内容は、ゼロ長です。
/usr/lib/mail/cf/main-v7sun.mc の新しい名前は /usr/lib/mail/cf/main.mc です。
/usr/lib/mail/cf/subsidiary-v7sun.mc の新しい名前は /usr/lib/mail/cf/subsidiary.mc です。
sendmail バージョン 8.12 では、アドレスを正しく識別するために、構成に使用する IPv6 アドレスの前に IPv6: タグを付ける必要があります。IPv6 アドレスを識別しない場合は、タグを前に付けません。