EN JA
RC.SENDMAIL(8)
RC.SENDMAIL(8) FreeBSD System Manager's Manual RC.SENDMAIL(8)

名称

rc.sendmailsendmail(8) スタートアップスクリプト

解説

rc.sendmail スクリプトは、 sendmail(8) を開始するために、ブート時に /etc/rc によって使用されます。それは、 sendmail(8) 特有であるように作られていて、すべての MTA のための一般的スクリプトではありません。 rc.conf(5) mta_start_script 変数が /etc/rc.sendmail に設定されているなら、 /etc/rc によってのみ呼び出されます。

rc.sendmail は、実行すべき処理を指定する、省略可能な引数を取り得ます。利用可能な処理は次の通りです:

start
MTA と MSP キューランナを開始します。
stop
MTA と MSP キューランナを停止します。
restart
MTA と MSP キューランナを再開始します。
start-mta
MTA だけを開始します。
stop-mta
MTA だけを停止します。
restart-mta
MTA だけを再開始します。
start-mspq
MSP キューランナだけを開始します。
stop-mspq
MSP キューランナだけを停止します。
restart-mspq
MSP キューランナだけを再開始します。

処理を指定しない場合、 start が仮定されます。

rc.sendmail スクリプトは、 Makefile のターゲット start, stop, restart を実現するために、 /etc/mail/Makefile でも使用されます。

RC.CONF 変数

次の変数が、 rc.sendmail の動作に影響します。これらは /etc/defaults/rc.conf で定義され、 /etc/rc.conf で変更可能です。
sendmail_enable
( 文字列) “ YES”に設定すると、システムブート時に sendmail(8) デーモンを起動します。“ NO”に設定すると、到着メール監視用に sendmail(8) デーモンを起動しません。これは、 sendmail(8) デーモンがループバックインタフェースの SMTP ポートを監視することを止めません。“ NONE”オプションは価値が低下しており、使用すべきではありません。将来のリリースでは削除されます。
sendmail_cert_create
( 文字列) sendmail_enable が“ YES”に設定されなら、 /etc/mail/certs/cacert.pem の CA 証明書によって /etc/mail/certs/host.key を表現して、署名された証明書 /etc/mail/certs/host.cert を作成します。これは、着信電子メールが通過で暗号化されることを許可する STARTTLS を交渉する接続するホストを有効にします。 sendmail(8) は、これらの生成されたファイルを使用するために設定される必要があります。 /etc/mail/freebsd.mc のデフォルトの設定は、それに必要なオプションがあります。
sendmail_cert_cn
( 文字列) sendmail_enable が“ YES”に設定され、 sendmail_cert_create が“ YES”に設定されるなら、これは、作成される証明書の一般的な名前 (Common Name; CN) です。 sendmail_cert_cn が設定されないなら、システムのホスト名が使用されます。ホスト名の設定がないなら、“ amnesiac”が使用されます。
sendmail_flags
( 文字列) sendmail_enable が“ YES”の場合、これらは sendmail(8) デーモンに渡すフラグとなります。
sendmail_submit_enable
( ブール値) “ YES”に設定され、 sendmail_enable が“ NO”に設定されるなら、 sendmail_flags の代りに sendmail_submit_flags を使用して sendmail(8) を実行します。ローカルホストのみに対して待機する SMTP サービスを介したローカルからのメール送信を許可することを意図しています。これは、 sendmail(8) をユーザ ID 設定したバイナリとしないために必要です。 jail(2) システムの中では動作しません。 jail がローカルホストインタフェースへのバインドを許さないからです。
sendmail_submit_flags
( 文字列) sendmail_enable が“ NO”に設定され、 sendmail_submit_enable が“ YES”に設定された場合、これらは sendmail(8) デーモンに渡されるフラグになります。
sendmail_outbound_enable
( ブール値) “ YES”に設定し sendmail_enablesendmail_submit_enable の両方を“ NO”に設定すると、 sendmail_flags の代りに sendmail_outbound_flags を使用して sendmail(8) を実行します。 SMTP サービスを待ち受けずに、ローカルのメールキュー管理が出来るようにすることを意図しています。
sendmail_outbound_flags
( 文字列) sendmail_enablesendmail_submit_enable の両方を“ NO”に設定し、 sendmail_outbound_enable を“ YES”に設定すると、これらは sendmail(8) デーモンに渡されるフラグになります。
sendmail_msp_queue_enable
( ブール値) “ YES”に設定すると、システムブート時に、クライアント (MSP) キューランナ sendmail(8) デーモンを、起動します。 sendmail 8.12 では、コマンドラインからの送信には別のキューが使用されます。クライアントキューランナは、送信キューに何も置き忘れられないことを保証します。
sendmail_msp_queue_flags
( 文字列) sendmail_msp_queue_enable を“ YES”に設定すると、これらは sendmail(8) デーモンに渡されるフラグになります。

これらの変数は、 sendmail(8) の起動方法を次のように決定します:

# MTA 
if (${sendmail_enable} == NONE) 
        # Do nothing 
else if (${sendmail_enable} == YES) 
        start sendmail with ${sendmail_flags} 
else if (${sendmail_submit_enable} == YES) 
        start sendmail with ${sendmail_submit_flags} 
else if (${sendmail_outbound_enable} == YES) 
        start sendmail with ${sendmail_outbound_flags} 
endif 
 
# MSP Queue Runner 
if (${sendmail_enable} != NONE && 
    [ -r /etc/mail/submit.cf] && 
    ${sendmail_msp_queue_enable} == YES) 
        start sendmail with ${sendmail_msp_queue_flags} 
endif

いかなる sendmail(8) デーモンも起動しないようにするには、 /etc/rc.conf で次の変数を設定します:

sendmail_enable="NO" 
sendmail_submit_enable="NO" 
sendmail_outbound_enable="NO" 
sendmail_msp_queue_enable="NO"

関連項目

rc.conf(5), rc(8), sendmail(8)

歴史

rc.sendmail ファイルは、 FreeBSD 4.6 で登場しました。
October 19, 2013 FreeBSD