JSMS (Java System Messaging Server) 用の隔離ダイジェストを設定する

JSMS (Java System Messaging Server) を MTA として使用している場合、エンドユーザーが隔離ダイジェストを受信できるようするために事前に以下の手順を実行する必要があります。この手順によって、ダイジェストリクエストが処理される「パイプチャネル」が設定されます。この手順では、JSMS と PureMessage が同一のサーバーにインストールされ、JSMS が LDAP と連動して使用されていることを前提にしています。使用しているインストールによっては、手順の一部が異なる場合もあります。

すべてのコマンドは root または IMTA ユーザーとして実行される必要があります。

JSMS 用に隔離ダイジェストを設定するには

  1. pmx-auto-approve と名前の付けられたメールユーザーを JSMS がメールユーザーの検索に使用する LDAP ディレクトリに追加します。
  2. pmx-qdigest-approve プログラムへのシンボリックリンクを作成します。

    パスは使用している JSMS のバージョンによって異なります。下記に例を示します。

    バージョン 5.2:

    cd <JSMS_Install_Dir>/imta/programs
    ln -s /opt/pmx/bin/pmx-qdigest-approve

    バージョン 6:

    cd <JSMS_Install_Dir>/data/site-programs
    ln -s /opt/pmx/bin/pmx-qdigest-approve
  3. 以下のコマンドを実行して、MTA と共ににプログラムを登録します。
    imsimta program -a -m pmxapprove -p pmx-qdigest-approve -e pmx
  4. /tmp ディレクトリに entrymod と呼ばれるテキストファイルを作成します。
    pmx-auto-approve ユーザーの識別名 (Distinguished Name) には LDAP システム内のその他の識別名と同じ形式を使用する必要があります。テキストファイルに下記の行を追加します。
    dn: uid=pmx-auto-approve, ou=people, o=internet, dc=Domain_Name, dc=com\
    changetype: modify
    edit: maildeliveryoption
    maildeliveryoption: program
    -
    add: mailprogramdeliveryinfo
    mailprogramdeliveryinfo: pmxapprove
  5. 以下のコマンドを実行して、LDAP を変更します。
    ldapmodify -D 'cn=Directory Manager' -f /tmp/entrymods
  6. ldapsearch コマンドを実行してエントリの変更を確定します。
    ldapsearch -b 'dc=Domain_Name, dc=com' -D 'cn=Directory Manager' uid=pmx-auto-approve

    変更が正常に実行されている場合、以下の行を含む結果が表示されます。

    dn: uid=pmx-auto-approve, ou=people, o=internet, dc=Domain_Name, dc=com
    ...
    mailDeliveryOption: program
    mailProgramDeliveryInfo: pmxapprove
  7. 「Dirsync」 (JSMS 5.2 用のデフォルト) を「Direct LDAP」の代りに使用する場合、以下のコマンドを実行して変更内容をデータベースと同期させます。
    imsimta dirsync -F
  8. このステップは、IMTA ユーザー以外のユーザーによって JSMS がインストールされている場合にのみ必要です。<JSMS_Install_Dir>/config/pipe_option というファイルを作成します。ファイルが IMTA ユーザー (<JSMS_Install_Dir>/config/imta_tailor で指定) に読み取り可能であることを確認してください。以下のエントリにおいて、パイプチャネル経由でコマンドを実行する際の一時作業ディレクトリを指定します。
    SHELL_TMPDIR=/tmp
  9. JSMS がどのように受信者アドレスを書き換えるかをテストするには、以下を実行します。
    imsimta test -rewrite pmx-auto-approve@Domain_Name.com

    設定が正しい場合には、以下に類似した出力が表示されます。

    Expanded address: 
      pmx-auto-approve@Domain_Name.com
    Submitted address list:
      pipe
         pmx-auto-approve%pmxapprove@pipe-daemon\
         (orig pmx-auto-approve@Domain_Name.com,\
         inter pmx-auto-approve@Domain_Name.com,\
         host pipe-daemon) *NOTIFY-FAILURES*\
         *NOTIFY-DELAYS*
  10. サーバー名がドメイン名に含まれている場合には、JSMS はダイジェストリクエストを処理できない場合があります。必要に応じて、「aliases」ファイルを編集してエイリアスを作成します。

    バージョン 5.2:

    <JSMS_Install_Dir>/imta/config/aliases

    バージョン 6:

    <JSMS_Install_Dir>/config/aliases

    以下の行を「aliases」ファイルに追加します。

    pmx-auto-approve@Server_Name.Domain_Name.com: pmx-auto-approve@Domain_Name.com
  11. 下記のコマンドを実行して、エイリアスを有効にします。
    ./imsimta refresh