複数のReceiverおよび/またはSenderコンポーネントを同時にdrweb-maildに接続することが可能です。
この機能は以下の目的で使用されます。
• | 複数のMTAまたはSMTPプロキシとの同時インタラクションを可能にする為 |
• | 各Receiver/Senderコンポーネントに対して別々の設定を可能にする為(それにより、モニターされるインターフェースに対して異なる設定の使用が可能になります) |
• | 1つのMTAから別のMTAへのメッセージのリダイレクトを可能にする為(ルーティングの為) |
このような同時使用を可能にする方法は以下のとおりです。
1. | ReceiverグループおよびSenderグループの各コンポーネントにユニークなIDを割り当てます(ReceiverのいくつかのIDはSenderのいくつかのIDと同じ場合がありますが、同じIDを持つReceiverのペアは存在しません)。 |
2. | 設定情報をどのように受信するか、それぞれのコンポーネントに知らせます。 |
3. | Receiverによって送信された各メッセージにコンポーネントのユニークなIDをタグとして割り当てます。 |
4. | メッセージを処理した後、drweb-maildはReceiverのIDと同じIDを持つ利用可能なSenderを検索します。そのようなSenderが見つからない場合、常に利用可能であるデフォルトのSender(ユニークなIDが指定されていない)にメッセージを送信することが出来ます。 |
5. | 利用可能なSenderのリストは起動時に作成され、SIGHUPシグナルを受信するとリフレッシュされます。 |
6. | drweb-notifierによって作成されたメッセージのルーティングはDr.Web MailD設定ファイル[Notifier]セクションのMsgIdMapパラメータによって管理されます。このパラメータによって、Receiverからのメッセージに対するSenderレポートをどこに送信するかを定義することが出来ます。 |
Receiver/SenderのユニークなIDは--unique-idコマンドラインパラメータ経由で設定されます。コンポーネントがこのパラメータで起動されると、%var_dir/msgs/{in|out}ディレクトリ内にメッセージキューのためのサブディレクトリをいくつか作成し、ディレクトリ内にはSenderに対する特別なUNIXソケットが作成されます。
コンポーネントの2番目のコピー(例:drweb-receiver)が起動されると、追加的な調整を実行する必要があります。つまり、このコピーが設定情報をどのように受け取るかを指定する必要があります。
コンポーネントが設定情報を得るには2つの方法があります。
• | 現存する*.confファイルのコピーを変更する(こちらの方が簡単ですが、柔軟性は劣ります) |
現存する*.confファイルを変更する方法は以下のとおりです。
• | Dr.Web MailD *.amcファイルに、コンポーネントの新しいコピーに関する情報を加えます。 |
例:
drweb-receiver2 General, Logging, /MailDesk/Clients, /_Rules, /Maild/ProtectedNetworks, /Maild/ProtectedDomains, /Maild/IncludeSubdomains, SASL, Receiver2
drweb-receiver2はDr.Web Agentとのインタラクションに使用するコンポーネントの新しい名前で、Receiver2は設定ファイル内の対応するセクションの新しい名前です。
その他のパラメータはオリジナルコンポーネントの設定セクションからコピーする必要があります。*.amcファイルのシンタックスに関する詳細は、前出のDr.Web Agentの章をご覧ください。
• | コンポーネント設定のメインセクションを*.confファイルにコピーします。このセクションをリネームし(前のステージで設定した名前を指定してください)、2番目のコンポーネントの新しいセクション内にある他の設定全てを変更します。 |
• | 新しい設定情報を受け取る為にDr.Web Agentを起動または再起動してください。 |
• | 以下のコマンドラインパラメータを指定して新しいコンポーネントを起動します。 |
o | --unique-id id - idはコンポーネントのユニークなIDです。 |
o | --component name - nameはDr.Web Agentと連携するために新しいコンポーネントが使用する名前です(上の例ではdrweb-receiver2)。 |
o | --section - コンポーネントのメインセクションの新しい名前です(上の例ではReceiver2)。 |
例:
DEFAULT_BIN_PATH/drweb-receiver --unique-id id1 --component drweb-receiver2 --section Receiver2
DEFAULT_BIN_PATH/drweb-sender --unique-id id1 --component drweb-sender2 --section Sender2
*.confファイルの新しいコピーを作成するのはもっと難しくなりますが、設定ファイルのコンポーネントのメインセクションにあるパラメータだけでなく全てのパラメータを調整することが出来ます。
*.confファイルのコピーを作成する方法は以下のとおりです。
• | *.confファイルのコピーを作成し、適宜パラメータをセットアップします(セクションのリネームは必要ありません)。 |
• | 新しい*.amcファイルを作成し、新しいコンポーネントに関する情報のみを入れてください。前のステージで作成した新しい*.conf設定ファイルへのパスも指定する必要があります。 |
• | 新しい設定情報を受け取る為にDr.Web Agentを起動または再起動してください。 |
• | 以下のコマンドラインパラメータを指定して新しいコンポーネントを起動します。 |
o | --unique-id id - idはコンポーネントのユニークなIDです。 |
o | --component name - nameはDr.Web Agentと連携するために新しいコンポーネントが使用する名前です(上の例ではdrweb-receiver2)。 |
例:
DEFAULT_BIN_PATH/drweb-receiver --unique-id id2 --component drweb-receiver2
DEFAULT_BIN_PATH/drweb-sender --unique-id id2 --component drweb-sender2
どちらの方法でも、新しいコンポーネントを使用するためにDr.Web Monitorをセットアップすることが出来ます。そのためにはDr.Web MailDの*.mmcファイルに、対応するライン(新しいコンポーネントの起動に関する)を加えてください。*.mmcファイルのシンタックスに関する詳細は上記Dr.Web Monitorの章をご覧ください。
|