インストールおよび初期設定の手順について詳細に解説したドキュメント
「Sendmail Single Switch 3.1J Windows インストール・基本設定ガイド」を、下記URLにて
配布しておりますので、まずはこちらをご参照ください。
[データ登録日:2006/10/10 ]
Webコンソールでの操作中、以下のエラーが発生することがあります。
エラー::SSLの接続試行中にエラーが発生しました:証明書の確認に失敗しました。
正しい証明書をインストールしたか確認してくださいNo such file or directory
Sendmail Single Switch は、インストール時にSSL証明書を生成しています。
この証明書は有効期間が1年となっており、上記エラーは証明書の期限が切れたことによって発生します。本現象は、証明書の再発行作業を行っていただくことで復旧可能です。
詳細については、下記のURLにございます「証明書再発行手順書」をご参照ください。
[データ登録日:2006/10/10 ]
Sendmail は、システムの統計情報の作成のため、Sendmail Report Serverおよび Sendmail Log Parserというサービスが定期的(デフォルト1分に1回)にレポートの生成を行うための情報をログファイルに書き込みます。メールの流量等にもよりますが、この際に一時的にCPUが100%となる場合があります。
また、両サービスは1日1回、(Log ParserがAM 2:00 とReport ServerがAM3:00)に、取得した情報をまとめてデータベースに格納する作業を行いますが、この際は特にCPUを占有する恐れがあります。
これらの作業時に、レポート対象となるログ情報が大量に存在した場合、上昇したCPU使用率が
戻らない事例が稀に報告されています。
こちらの回避方法としましては、一定期間ごとにレポート関連のログを削除、もしくは、レポート関連の下記のサービス
・Sendmail Report Server
・Sendmail Log Parser
こちらを停止するという選択があります。
しかしながら、前者は、ログを削除した期間の統計情報を取得することができなくなります。
また、後者は今後レポートログが出力されなくなりますため、統計情報の閲覧自体が不可能となります。
統計情報のご利用予定がない場合、あるいは、ハードウェアスペックが弊社の推奨値より低い場合は、サービスを停止いただくことをお勧めします。
詳細については、Switch3.1J Windows 運用ガイドをご参照ください。
Sendmail関連のドキュメントは、以下のURLからご取得ください。
[データ登録日:2006/10/10 ]
本ログは、Sendmail SDAP Serviceの動作ログです。
本サービスは、Web上での設定変更を行う際に必要なサービスとなりますので、恒常的に停止することはできませんが、ログレベルを変更することにより、不要なログ出力を抑えることが可能です。
[sdap.log の出力レベルを変更する方法]
1. Windowsのサービス一覧より、以下のサービスを停止します。
Sendmail SDAP
2. 以下のファイルを開きます。
C:\Program Files\SendmailSwitch\smadmin-3.1\gui\bin\sdap-server.pl
3. 39行目にログレベルの項目があります。現在のレベルは、
ゼロ(すべての動作を記録する)
となっておりますので、これを1(WarningおよびErrorのみ記録する)に変更します。
4. Windowsのサービス一覧より、以下のサービスを起動します。
Sendmail SDAP
上記のサービスは、管理者によるWebインターフェイス経由の作業時に利用するものであり、一時的に停止してもメールの送受信および一般ユーザーのWebコンソール上の作業には影響ありません。また、肥大化したログはSendmail SDAP停止中に削除してください。
停止中にログを削除しても、サービス再起動時に再生成されるため、削除後に手動でログファイルを再作成する必要はありません。
[データ登録日:2006/10/10 ]
Sendmail Single Switch 3.1Jは、インストール時に以下のレジストリ値を変更します。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters の
MaxUserPort
上記の値が、OSデフォルト値である"5000"から"65534"に書換えられます。
このため、5000番以上のポートをbindするアプリケーションがSendmailと同居している場合、Socket Errorが発生します。上記レジストリ値をデフォルトの"5000"に修正することで、本エラーを回避することが可能です。
5000以上のポートをSendmail Single Switchが一度に占有することは非常に稀であり、また仮に5000を超えた場合もこれを以ってエラーとするのではなく、それ以上の接続を拒否する動作となります。
レジストリ値をデフォルトに戻すことでの、Sendmail Single Switchの動作に対する影響はないと考えております。
[データ登録日:2006/10/10 ]
sasldbファイルは、主にSMTP認証機能利用時にユーザの認証情報を格納するデータベースファイルです。しかしながら、Sendmail Single Switchのデフォルト設定では、SMTP認証を利用していない場合でもsasldbファイルの存在を確認し、ファイルが存在しない場合はログにこのようなエラーが記録されます。このメッセージを消すためには以下の作業を行います。
1. C:\Program Files\Sendmail Switch\etc\mail (デフォルトでCドライブにインストールしたと
仮定)の下に、拡張子なしの「sasldb」という名前のファイルを作成します。
2. エディタで作成したsasldb ファイルを開き、半角の「0」(ゼロ)を1文字だけ入力して
上書き保存します。
以上でsafesaslエラーが回避されます。
この設定を実施されない場合、SMTPのパフォーマンスに影響する可能性があります。
本設定についての詳細は、Sendmail Single Switch3.1J Windows インストール基本設定ガイドをご参照ください。
Sendmail関連のドキュメントは、以下のURLからご取得ください。
[データ登録日:2006/10/10 ]
このエラーは、Windowsのプロセスを立ち上げるために必要なデスクトップヒープの領域不足により、WindowsがSendmailのメール処理用子プロセスを生成できなかったことを表しています。
Sendmailのプロセスは、エンベロープ単位で 1つの子プロセスが起動しメールを処理します。
そのため、処理能力以上の大量のメールを送受信している環境においては、Windowsがデスクトップヒープ領域の空き容量が少なくなり、送受信のタイミングで上記のアプリケーションエラーが発生する場合があります。
特に、メール配送専用のスクリプトやアプリケーションから短時間に大量のメール配信を行っている場合に発生します。
本エラーが発生した場合、ポップアップメッセージを消すまでプロセスの開放が行われず、最終的にはSendmailの処理が停止します。
[エラー発生の抑制処置]
なお、根本的な解決にはなりませんが、アプリケーションエラーの発生をある程度抑制する処置として、Sendmailで処理するメール数を制御する方法があります。
既定ではSendmailのプロセス数は無制限に起動する設定となっているため、大量に送受信が行われる環境においては、以下に示すパラメータによってプロセスの起動数を制限する必要があります。
----------------------------------------------------------------------
1. 現在使用している.m4ファイルを読み込み、詳細設定画面を表示します。
2. [環境]-[サービス設定]をクリックします。
3. [接続レート・スロットル(CONNECTION_RATE_THROTTLE)]を設定します。この値は1秒あたりの接続数を設定します。
4. [子プロセスの最大数(MAX_DAEMON_CHILDREN)]を設定します。許容される子プロセスの最大数を制限します。
5. [検索]をクリックし、[検索オプション]からMAX_QUEUE_CHILDRENと入力し、検索します。
6. [最大キュー子プロセス数(MAX_QUEUE_CHILDREN)]を設定します。
各パラメータの設定比率は
子プロセスの最大数:接続レートスロットル:最大キュー子プロセス数=1:1:1
という比率で設定します。
7. 画面下の「適用」ボタンをクリックし、設定を .m4 に反映させます。
8. 画面上の「展開」ボタンをクリックし、設定の展開を実施します。
----------------------------------------------------------------------
なお、平常時は「子プロセスの最大数」「最大キュー子プロセス数」のパラメータで指定された値+2までしかプロセス数は上がりません。しかしながら、Sendmailは処理を分割するために、一時的にwork_groupという単位で親プロセスを立ち上げ、
さらに子プロセスを作り実際のキュー処理を行わせています。
そのため、持続的に大量のメール(数千通〜数万通)を処理し続ける場合には、「子プロセスの最大数」と「最大キュー子プロセス数」のパラメータでもプロセス数を完全に制限することはできません。
従って、根本的な解決策にはなりませんがある程度の抑制効果にはなります。
また、レジストリの変更が可能な場合は、下記の手順にて共有メモリのリソースを拡張することをお勧めしております。
----------------------------------------------------------------------
レジストリエディタにて
HKEY_LOCAL_MACHINE\System\CurrentControlSet\
Control\SessionManager\SubSystems\Windows
の
SharedSection=1024,3072
を、
SharedSection=1024,3072,4096
へと変更します。
SharedSection=1024,3072
については、
SharedSection=1024,3072,512,512
のようになっている場合もございますが、その際は
SharedSection=1024,3072,4096,512
のように3番目の数字が変更対象となります。
----------------------------------------------------------------------
レジストリ変更後は、OSを再起動してください。
レジストリの改変はシステム全体に影響を及ぼしますため、作業前にはバックアップを取得いただき、十分ご注意の上での作業をお願いします。
これにより、sendmail.exe エラーの原因である共有メモリ(デスクトップヒープ)の値の不足を解消し、より多くのプロセスを生成可能とします。
4096 であれば、100個以上のプロセスを生成することが可能となり、sendmail.exe エラーが発生することはほぼなくなると思われます。
起動可能プロセス数を50〜100程度とした上でレジストリの拡張を実施することで、プロセスが無制限に生成されること防止した上で、エラーの発生も抑止することが可能となります。
[データ修正日:2011/11/8 ]
[データ登録日:2006/10/10 ]
SMTPログレベルを高く設定していると、以下のようなログが大量に出力される場合があります。
WARNING: Failed to get CPU utilization,PdhValidatePath(\Process(_Total)\% Processor Time) returned
本ログはCPU Utilization(CPU占有度)情報の取得に失敗していることを示しておりますが、Windows版においては、情報の取得ができないことが多々ございます。
CPU Utilization情報の取得はレポーティングの目的で行っているだけであり、取得が
失敗したとしてもMTAの挙動には一切影響しません。
この現象はログレベルを9に設定することで回避されます。
[データ登録日:2006/10/10 ]
本エラーは、ファイルスキャン型のウイルス駆除ソフトが、ウイルスに感染したと判断したメールキューを
隔離、削除したことにより正常なキュー配信ができないことを示しています。
Sendmailは、キューを下記のように
ヘッダ部分:qf〜から始まるファイル
本文部分:df〜から始まるファイル
という2つのファイルに分けて処理を行います。
上記のファイルのうち、ウィルスが添付されている本文部分が隔離されてヘッダ部分のみがキューディレクトリに残り、ヘッダ部分のみでの再送が繰り返されます。
このようなケースでは再送処理や送信不可の場合の処理等も成功せず、ヘッダファイルのみが延々蓄積していきます。
キューフォルダ(デフォルトでは C:\Program Files\Sendmail Switch\var\mqueue)
以下に、エラー対象となったファイルと対になる、qf〜から始まるヘッダファイルが存在しますので、そのようにヘッダ部分のみ残ってしまっているファイルに関してはエクスプローラ上から削除する必要があります。
今後の対策としては、アンチウィルスソフトのスキャン対象からSendmail関連のフォルダを除外してください。Sendmail関連のフォルダとは、下記のものを指します。
C:\Program Files\Sendmail Switch
[データ登録日:2006/10/10 ]
GUI上には "Windows ユーザ: タブ文字をシミュレートするには、[ALT]-[Keypad 0 0 9]を
押してください"
という案内がありますが、表記の方法でタブ文字を入力することはできません。
別途テキストエディタ等でタブの入力された文字列を用意し、これをGUI部分に貼り付けることで
対処ください。
[データ登録日:2006/10/10 ]
Sendmail Single Switch がメールを受信した際に、受信者および送信者共に配信に失敗した場合には、メールは管理者メールアドレスに転送されます。
本エラーは、管理者メールアドレスが設定されていないために、エラーメールの最終的な送信先が存在せず発生しております。
システム障害の原因となる可能性がありますので、管理者メールアドレスの設定は必須となります。
本設定についての詳細は、Sendmail Single Switch3.1J Windows インストール基本設定ガイド
をご参照ください。
Sendmail関連のドキュメントは、以下のURLからご取得ください。
[データ登録日:2006/10/10 ]
本現象は、Windows Server 2003上でSendmailを動作させている場合、もしくは msvcrt.dllのアップデートを行った環境にて発生するエラーです。
本現象がメールの送受信には影響を及ぼすことはありませんが、残念ながら本エラーの出力を回避することはできません。
恐縮ですが本エラーは無視して運用していただきますようお願いいたします。
[データ登録日:2007/02/05 ]
当該エラーは、不正なMIMEヘッダを含むメールが送信されてきたため、Sendmailが正常なヘッダに修正し正常に処理を行ったことを示しています。
本ログが多発する場合、アタックを受けている可能性もありますが、散発のものにつきましては、単に不正なMIMEヘッダを含むメールが送られてきただけであると考えられます。
警告としてイベントログに記録されますが、動作上は問題ありません。
[データ登録日:2007/02/07 ]
本現象は以下URLにて公開されておりますパッチファイル「Sendmail Single Switch 3.1.7J Windows」を
適用することで回避可能です。
http://www.tsc.cskwin.com/download/switchw_patch.htm
※本パッチは、Sendmail Switch 3.1.6 Windows パッチの差分となります。
利用時は、既にSendmail Switch 3.1.6 Windows パッチが適用済みであることをご確認ください。
Sendmail Swtich 3.1.6 Windows の適用時・または適用後に以下URLにて紹介しておりますトラブルが
発生する恐れがございます。事前にご確認ください。
http://www.tsc.cskwin.com/faq/faqdetail.asp?id=312&page=1&product=3
[データ登録日:2007/11/08 ]
Sendmailはデフォルトで、相手先サーバがSTARTTLSに対応している
場合、STARTTLSによる通信を試みます。
ただ、STARTTLSの暗号化および相互認証を実際に可能とするには、
Switch用にSSL証明書を購入、あるいはOpenSSL等で作成した上で、
インストールする必要がございます。
Sendmail側に証明書がなくとも、受信時において送信元サーバが
STARTTLSに対応していれば送信元サーバの証明書を利用して
メールの暗号化のみは実現可能であるため、デフォルトでこのような設定となっております。
ただし、数か月前より類似のお問い合わせを複数頂戴しており、そのすべてが
gmailに関連するものであるため、送信側であるgmailで何かしらのSTARTTLSに関連する
動作の変更、たとえば、信頼されない証明書を利用したSTARTTLSに対する
制限の強化などといったものが行われた可能性があったことを想定しており、
それが原因により、メール受信に遅延が発生しているものかと存じます。
そのため、Gmail側の仕様については弊社ではわかり兼ねますが、sendmail側での対応としましては、
以下のSTARTTLS機能を無効にする設定を行っていただくことで、障害を抑制することも可能なため、
対策として以下をご案内いたします。
以下、STARTTLS機能無効設定について、確認および設定します。
====================================================
1. Web Administration Consoleよりログインします。
2.「既存設定の編集」より、ご利用のm4ファイルをロードします。
3. メイン画面左のメニューより、「スパム制御」「アクセス・データベース」
をYesとし、「マップの編集」ボタンをクリックします。
4. ファイルがない旨のメッセージが表示される場合もそのまま進みます。
5. KEY、MAPPINGのそれぞれの項目に、以下の値を入力します。
KEY MAPPING
Srv_Features: S
※KEYは、":"(コロン)を含め入力ください。
※MAPPINGの"S"は、大文字のSとなります。
6. 画面上の「保存」、続いて「戻る」ボタンをクリックします。
7. スパム制御画面に戻りますので、画面下の「適用」ボタンをクリックします。
8. 画面上の「展開」ボタンをクリックし、設定の展開を行います。
=====================================================
STARTTLSの発信側(Client)の場合は、以下の設定を実施することで、
STARTTLS通信を行わないように設定可能です。
---------------------------------------------
1. [メイン・メニュー] から [既存設定の編集] オプションを選択し、
ご利用の.m4ファイルをロードします。
2. オプション・メニューから、[詳細設定] を選択します。
[詳細設定] リスト・ボックスが表示されます。
3. [CLIENT_OPTIONS] を選択します。 [表示/編集] ボタンを選択して、
このオプションをアクティブにします。
4. [追加] ボタンを選択します。
5. 表示されるテキスト・フィールドに M=S を入力します。
6. [適用] を選択して、新しい設定の適用、変更の保存、
設定ファイルの展開を行います。
--------------------------------------------------
上記の双方を実施してください。
本設定により、STARTTLS機能を一切考慮しない(平文での)送信が
可能となりますので、お試しいただければと存じます。
[データ登録日:2011/08/31 ]