Sun Java System Instant Messaging 7.2 管理指南

第 2 部分 管理 Instant Messaging

第 3 章 Instant Messaging 配置檔案與目錄結構簡介

本章提供有關您用來管理 Instant Messaging 的配置檔案的資訊。在變更您的部署配置之前,請先熟悉這些檔案的位置。

本章在以下小節中描述 Instant Messaging 伺服器目錄結構和特性檔案,它們用於儲存 Instant Messaging 操作資料和配置資訊:

Instant Messaging 伺服器目錄結構

Instant Messaging 伺服器目錄結構顯示 Instant Messaging 伺服器平台特定的目錄結構。

表 3–1 Instant Messaging 伺服器目錄

說明 

Solaris 位置 

Linux 位置 

程式檔案 

這些檔案包括原生可執行檔、binlib 目錄中的程式庫檔案、sbin 目錄中的 shell 程序檔、Java 類別與 lib 目錄中的範本檔案。

Instant Messaging 安裝目錄 (im-svr-base)

安裝目錄的預設值為: 

/opt/SUNWiim

Instant Messaging 安裝目錄 (im-svr-base)

安裝目錄的預設值為: 

/opt/sun/im

伺服器配置檔案 

這些檔案位於「配置目錄」中並包括 iim.conf 檔案和一個子目錄,其中包含所有伺服器相關的存取控制檔案。

Instant Messaging 配置目錄 (im-cfg-base)

配置目錄的預設值為: 

/etc/opt/SUNWiim/default/config

為方便起見,安裝程式會建立一個從 /etc/opt/SUNWiim/default/config/opt/SUNWiim/config 的符號連結。

此外,如果您已建立多個 Instant Messaging 的實例,/default 目錄的名稱會隨著實例改變。如需詳細資訊,請參閱從單次 Instant Messaging 安裝中建立多個實例

Instant Messaging 配置目錄 (im-cfg-base)

配置目錄的預設值為: 

/etc/opt/sun/im/default/config

為方便起見,安裝程式會建立一個從 /etc/opt/sun/im/default/config/opt/sun/im/config 的符號連結。

此外,如果您已建立多個 Instant Messaging 的實例,/default 目錄的名稱會隨著實例改變。如需詳細資訊,請參閱從單次 Instant Messaging 安裝中建立多個實例

執行階段目錄 

包含 Instant Messaging 伺服器資料。這些檔案包括由伺服器在執行階段產生檔案所在的可配置目錄。其中包括資料庫目錄中的一般使用者資料。在 log 目錄中也包括伺服器、多重訊號組合器、行事曆代理程式與 XMPP 服務記錄檔。

Instant Messaging 執行階段目錄 (im-runtime-base)

執行時間目錄的預設值為: 

/var/opt/SUNWiim/default

此外,如果您已建立多個 Instant Messaging 的實例,/default 目錄的名稱會隨著實例改變。如需詳細資訊,請參閱從單次 Instant Messaging 安裝中建立多個實例

Instant Messaging 執行階段目錄 (im-runtime-base)

執行時間目錄的預設值為: 

/var/opt/sun/im/default

此外,如果您已建立多個 Instant Messaging 的實例,/default 目錄的名稱會隨著實例改變。如需詳細資訊,請參閱從單次 Instant Messaging 安裝中建立多個實例

資料庫 

如果您使用檔案式的特性儲存區,資料庫目錄會包含一般使用者資訊,如使用者和新聞通道目錄。如果您使用 LDAP 來儲存使用者資料,則不會使用資料庫目錄。 

Instant Messaging 資料庫目錄 (im-db-base)

資料庫目錄的預設值為: 

/var/opt/SUNWiim/default/db

此外,如果您已建立多個 Instant Messaging 的實例,/default 目錄的名稱會隨著實例改變。如需詳細資訊,請參閱從單次 Instant Messaging 安裝中建立多個實例

Instant Messaging 資料庫目錄 (im-db-base)

資料庫目錄的預設值為: 

/var/opt/sun/im/default/db

此外,如果您已建立多個 Instant Messaging 的實例,/default 目錄的名稱會隨著實例改變。如需詳細資訊,請參閱從單次 Instant Messaging 安裝中建立多個實例

Instant Messenger 資源。 

這些檔案包含 HTML 文件與由 Instant Messenger 使用的 jar 檔案。最頂層目錄包含與語言環境無關的資源,而語言環境特定的目錄則包含本土化資源。

Instant Messaging 資源目錄 (im-svr-base/html)

資源目錄的預設值為: 

/opt/SUNWiim/html

Instant Messaging 資源目錄 (im-svr-base/html)

資源目錄的預設值為: 

/opt/sun/im/html

Instant Messaging Server 配置檔案

Instant Messaging 會將所有配置選項儲存於 iim.conf 檔案中。如需存放在此檔案中的參數及其值的詳細資訊,請參閱附錄 A iim.conf 中的 Instant Messaging 配置參數

Instant Messaging 資料

Instant Messaging 伺服器會將以下由 Instant Messenger 所使用的資料存放在資料庫目錄 (im-db-base) 中,並以 iim.conf 中的 iim.instancevardir 參數指示:

第 4 章 配置 Instant Messaging 的高可用性 (僅 Solaris)

配置 Instant Messaging 的高可用性 (HA) 可提供監控軟體和硬體故障並從中回復的功能。高可用性功能會配置為資料容錯移轉服務,但非可擴充的服務,且只有 Solaris 支援。本章說明如何使用 Sun Cluster 軟體配置 Instant Messaging HA。如需 Sun Cluster 提供的可擴充和容錯移轉資料服務的詳細資訊,請參閱HA 相關文件

本章說明如何配置 Instant Messaging HA 服務,如下:

Instant Messaging HA 簡介

您可以透過 Instant Messaging 來使用 Sun Cluster,建立高可用性部署。本節在以下小節中說明 HA 需求的相關資訊、本章範例中使用的辭彙,和配置 HA 所需的權限:

在您開始之前,您應先熟悉一般的 HA 概念,尤其是 Sun Cluster 軟體。如需詳細資訊,請參閱HA 相關文件

Instant Messaging HA 配置軟體需求

Instant Messaging HA 配置需要的軟體如表 4–1 所示。

表 4–1 Instant Messaging HA 配置的軟體需求

軟體和版本 

說明和修補程式 

Solaris 9 OS 

支援所有版本的 Solaris 9 OS。 

Solaris 9 OS 最少需要 Sun Cluster 3.0 U3。 

Solaris 9 OS 包括 Solaris Logical Volume Manager (LVM)。

Solaris 10 OS 

支援所有版本的 Solaris 10 OS。 

Sun Cluster 3.1 

Sun Cluster 軟體必須安裝和配置在叢集中所有節點上。 

若要安裝 Sun Cluster,按照 「Sun Java Communications Suite 5 Installation Guide 」 中的安裝程序來使用 Communications Suite 安裝程式。

在您安裝 Sun Cluster 軟體後,您必須配置叢集。如需詳細資訊,請參閱「Solaris OS 的 Sun Cluster 系統管理指南」。如需相關資訊,請參閱HA 相關文件

Sun Cluster 修補程式

如需 Solaris 9 和 10,您可從 SunSolve Online 下載修補程式。

Veritas Volume Manager (VxVM) 3.x 

最少需要 3.5 版,加上必要的修補程式。 

Veritas File System (VxFS) 3.x 

最少需要 3.5 版,加上必要的修補程式。 

HAStoragePlus 最少需要修補程式 110435-08。 

Instant Messaging HA 配置權限需求

若要安裝和配置 Instant Messaging HA 配置,以超級使用者 (root) 的身份登入或登入成為超級使用者,指定主控台或視窗來檢視傳送到 /dev/console 的訊息。

Instant Messaging HA 配置辭彙和檢核清單

表 4–2 說明本章配置範例中所使用的變數辭彙。此外,您必須先收集資料,再配置 Instant Messaging 的 HA。在配置期間會提示您提供這些資訊。搭配表 1–1 的檢核清單使用本檢核清單。

表 4–2 HA 配置檢核清單

範例中的名稱 

說明 

您的值 

/global/im

全域檔案系統掛載點,與叢集檔案系統或 HAStoragePlus 搭配使用。 

 

/local/im

當您使用 HAStoragePlus 時,做為共用磁碟掛載點的本機目錄。 

 

im-logical-host

邏輯主機名稱 

 

im-logical-host-ip

邏輯主機 IP 數字位址 

 

im-node–1

節點 1 FQDN

 

im-node–2

節點 2 FQDN

 

im-resource-group

Instant Messaging 資源群組 

 

im-resource-group-store

Instant Messaging 儲存資源 

 

im-resource

Instant Messaging 資源 

 

im-runtime-base

(包括 im-runtime-base/dbim-runtime-base/logs )

對於執行階段目錄的位置 (包括資料庫和記錄子目錄),選擇全域、共用分割區。例如: 

  • Instant Messaging 執行階段目錄 (im-runtime-base):

    /global/im/var/opt/SUNWiim/default

  • 資料庫子目錄 (im-db-base):

    / global/im/var/opt/SUNWiim/default/db

  • 記錄子目錄:

    /global/ im/var/opt/SUNWiim/default/logs

如需執行階段目錄和資料庫與記錄子目錄的詳細資訊,請參閱Instant Messaging 伺服器目錄結構

 

設定 Instant Messaging 的 HA

以下是以兩個節點安裝與配置 Instant Messaging HA 配置必要步驟的高階清單:

為配置檔案和二進位檔案選擇本機或共用磁碟

在您開始之前,您必須決定以下哪一個部署最符合您的需求。在這兩個環境中,共用元件會本機安裝在叢集中的每個節點。此外,在兩個環境中,執行階段檔案安裝在共用磁碟中。

準備叢集中的每個節點

在叢集中的每個節點上,您必須建立元件會在之下執行的 Instant Messaging 執行階段使用者和群組。叢集中所有節點的 UID 和 GID 數字必須相同。

雖然 configure 公用程式可為您建立這些名稱,但您可以先建立名稱,然後再執行配置程式,做為每個節點準備作業的一部分,如本章所述。此外,視您使用的是本機或共用磁碟,您可以不在特定的節點上執行 configure,但必須手動建立執行階段使用者和群組 ID。

執行階段使用者和群組 ID 名稱必須在以下檔案中:

如需說明,請參閱建立 UNIX 系統使用者與群組。如需關於使用者和群組的詳細資訊,參閱作業系統文件。

選取安裝目錄 (im-svr-base)

對於 Instant Messaging,Java Enterprise System 安裝程式會使用 Solaris 上的 /opt/SUNWiim 做為預設安裝目錄 (im-svr-base)。但是,如果您為配置檔案和二進位檔案使用共用磁碟,您必須指定全域 (共用) 安裝目錄。例如: /global/im/opt/SUNWiim.

如果您使用本機磁碟,您可以將 Instant Messaging 安裝至預設目錄。但是,您應該在節點中每個機器上的相同目錄中安裝 Instant Messaging。

安裝 Sun JavaTM System 產品和套裝軟體

您可使用 Communications Suite 安裝程式安裝產品和套裝軟體。如需安裝程式的詳細資訊,請參閱「Sun Java Communications Suite 5 Installation Guide 」

表 4–3 列出多節點叢集配置所需的產品或套裝軟體。

表 4–3 多節點 Instant Messaging HA 配置所需的產品或套裝軟體

產品或套裝軟體 

節點 1 

節點 n

Sun Cluster 軟體 

是 

是  

Instant Messaging 7.2 Server 

是 

是,如果您為配置檔案和二進位檔案使用本機磁碟。否,如果您為配置檔案和二進位檔案使用共用磁碟。 

Instant Messaging Sun Cluster 代理程式 

(SUNWiimsc)

是 

是,如果您為配置檔案和二進位檔案使用本機磁碟。否,如果您為配置檔案和二進位檔案使用共用磁碟。 

共用元件 

如果您正使用 HAStoragePlus,您也必須安裝 SUNWscu

是 

是 

配置 HA 環境

您必須執行的步驟會視您為配置檔案和二進位檔案使用的是本機磁碟或共用磁碟而有所不同。

如果您為配置檔案和二進位檔案使用本機磁碟,則按照以下兩個程序中的步驟進行:

如果您為配置檔案和二進位檔案使用共用磁碟,則按照以下兩個程序中的步驟進行:

Procedure在為配置檔案和二進位檔案使用本機磁碟的節點 1 上配置 HA

開始之前

填寫表 1–1表 4–2 的檢核清單,以備稍後使用。

  1. 使用 Java Enterprise System 安裝程式安裝產品和套裝軟體。

    如需選擇安裝目錄的特定說明,請參閱選取安裝目錄 (im-svr-base)

    如需 HA 所需產品和套裝軟體的清單,請參閱表 4–3。如需特定說明,請參閱「Sun Java Communications Suite 5 Installation Guide」

  2. 如果您使用執行階段檔案的 HAStoragePlus,則將共用磁碟掛載至本機目錄,否則跳至步驟 3

    例如:

    1. 如果掛載點 (/local/ im/im-runtime-base/) 不存在,請建立一個。

      當在步驟 4 的配置期間出現提示,請指定此目錄 (/local/ im/im-runtime-base/) 做為 Instant Messaging Server 執行階段檔案目錄。

    2. 使用 mount 指令在 /local/im/im-runtime-base 上掛載磁碟。

  3. 執行 configure 公用程式。

    如需說明,請參閱第 1 章, 安裝後配置 Instant Messaging

  4. 當出現 Instant Messaging Server 執行階段檔案目錄的提示時,請輸入以下其中一個目錄:

    • 如果您使用執行階段檔案的 HAStoragePlus,則輸入 /local/im/im-runtime-base/

    • 如果您使用執行階段檔案的叢集檔案系統,則輸入 /global/im/im-runtime-base/ 。其中,/global/im 是叢集檔案系統中的全域目錄。

  5. 當出現 Instant Messaging 主機名稱的提示時,輸入邏輯主機。

    選擇接受邏輯主機,即使 configure 公用程式無法連接至指定的主機。當您執行 configure 公用程式時,邏輯主機資源可能會離線。

  6. 在配置完成後或系統啟動時,不要選擇啟動 Instant Messaging。

    在 HA 配置中,Instant Messaging 服務也需要邏輯主機上線,讓 Instant Messaging 能夠正常運作。

  7. 如果您使用執行階段檔案的 HAStoragePlus,請卸載共用磁碟。

Procedure在為配置檔案和二進位檔案使用本機磁碟的節點 n 上配置 HA

開始之前

確定您已按照上一個程序 (在為配置檔案和二進位檔案使用本機磁碟的節點 1 上配置 HA) 所述,在節點 1 上完成 HA 配置。

填寫表 1–1表 4–2 中的檢核清單,以備稍後使用。

  1. 使用 Java Enterprise System 安裝程式安裝產品和套裝軟體。

    為叢集中節點 1 之後的每個節點選擇與您在節點 1 上安裝 Instant Messaging 時所使用的相同路徑。如需特定說明,請參閱選取安裝目錄 (im-svr-base)

    如需 HA 所需產品和套裝軟體的清單,請參閱表 4–3。如需特定說明,請參閱「Sun Java Communications Suite 5 Installation Guide」

  2. 執行 configure 公用程式。

    如需說明,請參閱第 1 章, 安裝後配置 Instant Messaging

  3. 當出現 Instant Messaging Server 執行階段檔案目錄的提示時,輸入與您為節點 1 提供的相同值。

  4. 當出現 Instant Messaging 主機名稱的提示時,輸入與您為節點 1 提供的相同邏輯主機。

    選擇接受邏輯主機,即使 configure 公用程式無法連接至指定的主機。當您執行 configure 公用程式時,邏輯主機資源可能會離線。

  5. 當出現使用者和群組的提示時,輸入您為節點 1 提供的相同值。

  6. 在配置完成後或系統啟動時,不要選擇啟動 Instant Messaging。

    在 HA 配置中,Instant Messaging 服務也需要邏輯主機上線,讓 Instant Messaging 能夠正常運作。

Procedure在為配置檔案和二進位檔案使用共用磁碟的節點 1 上配置 HA

開始之前

填寫表 1–1表 4–2 的檢核清單,以備稍後使用。

如果您為配置檔案和二進位檔案使用共用磁碟,而不是使用 HAStoragePlus,您必須使用叢集系統。

  1. 使用 Java Enterprise System 安裝程式在叢集檔案系統的目錄中安裝產品和套裝軟體。

    當您安裝 Instant Messaging 時,您指定的目錄必須不是預設目錄。如需特定說明,請參閱選取安裝目錄 (im-svr-base)

    如需 HA 所需產品和套裝軟體的清單,請參閱表 4–3。如需特定說明,請參閱「Sun Java Communications Suite 5 Installation Guide」

  2. 建立一個從 /etc/opt/SUNWiim 指向 /global/im/etc/opt/SUNWiim 的符號連結。

  3. 從您安裝 Instant Messaging 的全域目錄 (/global/ im/im-svr-base/configure) 中執行 configure 公用程式。

    如需說明,請參閱第 1 章, 安裝後配置 Instant Messaging

  4. 當出現 Instant Messaging Server 執行階段檔案目錄的提示時,輸入 /global/ im/im-runtime-base 的值。

  5. 當出現 Instant Messaging 主機名稱的提示時,輸入邏輯主機。

    選擇接受邏輯主機,即使 configure 公用程式無法連接至指定的主機。當您執行 configure 公用程式時,邏輯主機資源可能會離線。

  6. 在配置完成後或系統啟動時,不要選擇啟動 Instant Messaging。

    在 HA 配置中,Instant Messaging 服務也需要邏輯主機上線,讓 Instant Messaging 能夠正常運作。

Procedure在為配置檔案和二進位檔案使用共用磁碟的節點 n 上配置 HA

開始之前

確定您已按照上一個程序 (在為配置檔案和二進位檔案使用共用磁碟的節點 1 上配置 HA) 所述,在節點 1 上完成 HA 配置。

填寫表 1–1表 4–2 的檢核清單,以備稍後使用。

  1. 建立一個從 /etc/opt/SUNWiim 指向 /global/im/etc/opt/SUNWiim 的符號連結。

  2. 為資源類型註冊 (RTR) 檔案建立符號連結:


    ln -s /global/im/im-svr-base/cluster/SUNW.iim  \
    /usr/cluster/lib/rgm/rtreg/SUNW.iim
    

配置邏輯主機

在啟動 Instant Messaging 之前,您必須建立資源群組,新增邏輯主機,並讓資源群組上線。

Procedure使用邏輯主機配置資源群組

  1. 建立名為 im-resource-group 的 Instant Messaging 容錯移轉資源群組:


    # scrgadm -a -g im-resource-group -h im-node-2,im-node-1
    
  2. 將邏輯主機名稱 im-logical-host 新增至資源群組。

    Instant Messaging 會在此主機名稱上偵聽。


    # scrgadm -a -L -g im-resource-group -l im-logical-host
    
  3. 讓資源群組上線:


    # scswitch -Z -g im-resource-group
    

註冊和啟動儲存資源

在您將 Instant Messaging 資源服務上線前,您必須如本節所述註冊和啟用儲存資源。

Procedure註冊和啟用儲存資源

  1. 註冊儲存資源。

    如果您使用含全域檔案系統 (GFS) 的 HAStoragePlus,將掛載點設定為 FileSystemMountPoints 特性的值。例如:


    # scrgadm -a -j im-resource-group-store -g im-resource-group -t SUNW.HAStorage   \
    -x FileSystemMountPoints=/global/im -x AffinityOn=True
    

    否則,將掛載點指定為 ServicePaths 特性的值。例如:


    # scrgadm -a -j im-resource-group-store -g im-resource-group -t SUNW.HAStorage   \
    -x ServicePaths=/global/im -x AffinityOn=True
    
  2. 啟用儲存資源:


    # scswitch -e -j im-resource-group-store
    

註冊資源類型和建立資源

在啟動 HA Instant Messaging 伺服器或多重訊號組合器前,您必須以 Sun Cluster 來註冊 SUNWiimsc,並建立資源。

Procedure註冊資源類型和建立資源

  1. 註冊資源類型。


    # scrgadm -a -t SUNW.iim
    
  2. 建立資源。

    在單一行上輸入以下指令:


    # scrgadm -a -j im-resource -g im-resource-group -t SUNW.iim
    -x Confdir_list=/global/im/im-resource-group
    -y Resource_dependencies=im-resource-group-store
    
  3. 啟用資源:


    # scswitch -e -j im-resource
    
  4. 啟動 Instant Messaging 元件。

驗證 Instant Messaging HA 配置

在您啟動 Instant Messaging 後,您必須按照此節所述驗證 HA 配置。

Procedure驗證 Instant Messaging 的 HA 配置

  1. 檢查以確定所有必需的程序均已執行。

  2. 將服務切換至備份節點,以確定高可用性。

    例如,如果服務在 im-node-1 上執行,請發出以下指令將服務切換至 im-node-2


    # scswitch -z -g im-resource-group -h im-node-2
    
  3. 檢查以確定所有必要的程序均在 im-node-2 上啟動。

疑難排解 Instant Messaging HA 配置

為協助進行疑難排解,系統會將錯誤訊息寫入錯誤記錄。記錄是由 syslog 功能所控制。如需使用記錄功能的詳細資訊,請參閱HA 相關文件 syslog.conf 的主要頁面。

停止、開始和重新開始 Instant Messaging HA 服務

若要啟動和停止 Instant Messaging HA 服務,可使用 Sun Cluster scswitch 指令。

如需 Sun Cluster scswitch 指令的詳細資訊,請參閱「 Sun Cluster Reference Manual for Solaris OS」。

Procedure啟動 Instant Messaging HA 服務

    在指令行中鍵入以下指令:


    # scswitch -e -j im-resource
    

Procedure停止 Instant Messaging HA 服務

    在指令行中鍵入以下指令:


    # scswitch -n -j im-resource
    

Procedure重新啟動 Instant Messaging HA 服務

    在指令行中鍵入以下指令:


    # scswitch -R -j im-resource
    

在有 Sun Cluster 的部署中停止、啟動和重新啟動 Instant Messaging 元件

imadmin 指令在嘗試停止、啟動或重新啟動 Instant Messaging 元件之前,會檢查以確定該元件未在叢集節點中執行。如果 imadmin 判定該元件已在叢集節點中執行,便會傳回錯誤,而不執行該指令。在有 Sun Cluster 的部署中使用 Sun Cluster 管理公用程式停止、啟動和重新啟動 Instant Messaging 元件。

管理 Instant Messaging 的 HA RTR 檔案

資源類型註冊 (RTR) 檔案是一種 ASCII 文字檔案,用來描述在 Resource Group Manager (RGM) 控制之下執行的高可用性資源類型。scrgadm 指令使用 RTR 檔案做為輸入檔,將資源類型註冊到叢集配置中。當您在 HA 配置期間安裝 SUNWiimsc 套裝軟體時,便會建立 Instant Messaging RTR 檔案 SUNW.iim

本節在以下小節提供管理此檔案的相關資訊:

Instant Messaging RTR 檔案參數

下表列出 Instant Messaging RTR 檔案 (SUNW.iim) 中 Instant Messaging 特定的延伸特性。

表 4–4 SUNW.iim 延伸特性

延伸特性 

預設 

說明 

Server_Root

如果您使用本機磁碟存放配置檔案和二進位檔:im-svr-base

如果您使用共用目錄存放配置檔案和二進位檔:/global/im/im-svr-base

定義 Instant Messaging 伺服器安裝目錄的絕對路徑。根據預設,im-svr-base 是 Solaris 上的 /opt/SUNWiim

Confdir_list

無 

定義 Instant Messaging 配置的絕對路徑。此值是在安裝 SUNWiimsc 期間設定的。

 

Monitor_retry_count

4

定義如果程序監視設備 (PMF) 判定錯誤監視未執行時,程序監視功能會嘗試重新啟動錯誤監視的次數。

Monitor_retry_interval

2 (分鐘)

這是 PMF 嘗試重新啟動錯誤監視的間隔時間,單位為分鐘。 

Probe_timeout

30 (秒)

這是 Sun Cluster 測試等待 Instant Messaging 成功連線的時間。 

Failover_enabled

True

決定如果在所配置的重試間隔 (retry_interval) 期間,超過了配置的重試次數 (retry_count),是否容錯移轉至另一個節點。如需重試作業和其他參數的更多資訊,請參閱「Sun Cluster Reference Manual for Solaris OS」

自訂 Instant Messaging 的 RTR 檔案

您可以修改 Instant Messaging RTR 檔案 (SUNW.iim) 中的數個延伸特性的值,來配置 HA 環境。延伸特性是資源類型特定的特性。相同類型的每個資源均會繼承這些特性。表 4–4 說明 Instant Messaging 延伸特性。

如需資源類型註冊檔案內容的詳細資訊和自訂延伸特性值的說明,請參閱「Sun Cluster Reference Manual for Solaris OS」 中的 rt_regproperty_attributes

移除 Instant Messaging 的 HA

為了將 Instant Messaging 從 HA 環境中移除,您必須按照本節所述移除 Instant Messaging 叢集代理程式 SUNWiimsc

Procedure移除 Instant Messaging 的 HA

開始之前

當您如此程序所述移除 SUNWiimsc 套裝軟體後,您對 RTR 檔案 SUNW.iim 所做的任何自訂均將遺失。如果您要在日後還原自訂,在移除 SUNWiimsc 套裝軟體前必須先備份 SUNW.iim

  1. 卸下 Instant Messaging 資料服務:


    scswitch -F -g im-resource-group
    
  2. 停用 Instant Messaging 資源群組 (im-resource-group) 中的所有資源:


    # scswitch -n -j im-resource
    # scswitch -n -j im-logical-host
    # scswitch -n -j im-resource-group-store
    
  3. 移除 Instant Messaging 資源群組中的檔案:


    # scrgadm -r -j im-resource
    # scrgadm -r -j im-logical-host
    # scrgadm -r -j im-resource-group-store
    
  4. 移除 Instant Messaging 資源群組:


    # scrgadm -r -g im-resource-group
    
  5. 移除 Instant Messaging 資源類型:


    # scrgadm -r -t SUNW.iim
    
  6. 使用 Java Enterprise System 安裝程式或手動方式移除 SUNWiimsc 套裝軟體,如下所示:


    pkgrm SUNWiimsc
    

    當您移除該套裝模軟體時,對 RTR 檔案進行的任何自訂均會遺失。

  7. 如果您為配置檔案和二進位檔案使用共用目錄,則移除在 HA 配置期間建立的任何符號連結。

    在節點 1 上:


    rm /etc/opt/SUNWiim
    

    在所有其他節點上:


    rm /usr/cluster/lib/rgm/rtreg/SUNW.iim
    

HA 相關文件

第 5 章 啟用 Instant Messaging 的單次登入 (SSO)

單次登入功能可讓一般使用者僅認證一次 (也就是說,以使用者 ID 與密碼登入) 就可以存取多個應用程式。Sun JavaTM System Access Manager 是用於 Sun Java System 伺服器 SSO 功能的正式閘道。也就是說,使用者必須登入 Access Manager 以存取其他配置有 SSO 功能的伺服器。

例如,適當配置的情況下,使用者可於 Access Manager 登入畫面登入,之後有權以另一個視窗存取 Instant Messenger 而不需要再次登入。同樣地,如果已適當配置 Sun Java System Calendar Server,則使用者可於 Access Manager 登入畫面登入,之後以另一個視窗存取 Calendar 而不需要再次登入。

其他 Communications Suite 伺服器,例如 Messaging Server,會提供兩種部署 SSO 的方式。第一種方式是透過 Access Manager,第二種方式是透過信任圈技術。使用信任圈是實作 SSO 的舊有方式,Instant Messaging 不使用這種方式。儘管透過此方式可提供某些 Access Manager SSO 不可使用的功能,將來所有 SSO 部署都會使用 Access Manager。本章下列各節描述如何使用 Access Manager 來啟用 Instant Messaging 的 SSO 功能:

SSO 限制與注意事項

配置 Instant Messaging 以支援 Access Manager 式的 SSO 與策略

有兩個 iim.conf 參數支援 Instant Messaging SSO。

表 5–1 Instant Messaging 單次登入參數

參數 

說明 

iim_server.usesso

決定認證時 Instant Messaging 伺服器是否依賴於 SSO 提供者。Access Manager 階段作業 API 可讓 Instant Messaging 伺服器驗證用戶端傳送之階段作業的 ID。

可能的值包含: 

0 – 請勿使用 SSO 提供者。

1 – 先使用 SSO 提供者並且在 SSO 驗證失敗時預設為 LDAP。

-1 – 即使 SSO 認證失敗,也僅使用 SSO 提供者而不嘗試 LDAP 認證。

預設值:1 如果當您執行 configure 公用程式時,選擇使用 Access Manager 實現 SSO。否則,預設值是 0

iim_server.ssoprovider

指定實作 com.sun.im.provider.SSOProvider 介面的類別。如果 iim_server.usesso 不為 0,且尚未設定此選項,則伺服器會使用於 Instant Messaging 內定義的預設 Access Manager 式 SSO 提供者。通常,您不會修改此參數。

預設值:無 

Procedure啟用 Instant Messaging 的 SSO

  1. 請確定 Access Manager SDK 與 Instant Messaging 伺服器安裝在相同的主機上。

    如需詳細資訊,請參閱「Sun Java Communications Suite 5 Installation Guide」

  2. 請確定在 Access Manager 主控台 (amconsole) 中將 Instant Messaging 服務指定至組織。

    如果您的部署中正在使用其他 Communications Suite 伺服器產品,例如 Messaging Server,您可能需要為 Instant Messaging 手動配置 Access Manager 式服務。

    如需說明,請參閱將 Instant Messaging 與線上狀態服務增加至 Access Manager 中的子組織以支援單次登入和策略管理

  3. 執行 configure 公用程式。

    如需說明,請參閱安裝後配置 Instant Messaging

  4. 當提示您是否要使用 Access Manager 實現 SSO 功能,請選取 [是]。

  5. 設定 iim.policy.module 參數為 identity:

    1. 開啟 iim.conf 並找到 iim.policy.module 參數。

    2. 設定參數:


      iim.policy.module = "identity"
      
  6. 重新啟動 Instant Messaging 伺服器:

    imadmin start

疑難排解 Instant Messaging 的 SSO

如果有 SSO 方面的問題,第一件要做的事就是檢查 xmppd.log 伺服器記錄檔案與用戶端記錄檔案中是否有錯誤。提昇記錄層級可能會有幫助。新的記錄層級僅在重新啟動伺服器後才會生效。

請確定已在 Access Manager 主控台 (amconsole) 中將 Instant Messaging 服務指定至組織及其上層組織。如需說明,請參閱將 Instant Messaging 與線上狀態服務增加至 Access Manager 中的子組織以支援單次登入和策略管理

請確定並未將 iim.conf 中的 im_server.usesso 參數設定為 0。如需此參數的相關資訊,請參閱表 5–1。如果已將它設定為 0,請完成啟用 Instant Messaging 的 SSO中的步驟。

如果您無法直接登入 Instant Messaging,請查看 xmppd.log 中是否有類似於以下任一項的錯誤:


DEBUG xmppd [com.sun.im.service.util.Worker3] Service        \\
URL not found:session.com.iplanet.sso.SSOException: Service URL not found:

INFO xmppd [com.sun.im.service.util.Worker 3] [Identity]     \\
Failed to create SSO token for USERNAME

INFO xmppd [org.netbeans.lib.collab.util.Worker 1] [LDAP]     \\
pops does not have required objectclass for storing to ldap

如果有此處所列的任一項錯誤,請使用下列步驟來解決問題:

  1. 透過 amconsole 建立使用者,並為其新增認證、配置、Instant Messaging 與線上狀態服務。

  2. 嘗試以您所建立的使用者登入。

  3. 檢查以確定已透過 amconsole 正確地填入 amldapuser 的密碼。

  4. 檢查網域 (例如 o=siroe.com) 中是否有 [認證配置服務實例]。

  5. 檢查在 [認證配置服務實例] 中是否已將 [認證模組] 設定為 [LDAP] 或 [成員]。值應顯示 REQUIRED/SUFFICIENT 的狀態。

    Instant Messaging 僅支援以使用者名稱與密碼登入。如果您正在使用認證鏈,則需要停用它才能使用 Instant Messaging。

  6. 在 [LDAP] 或 [認證模組] 中,輸入 COREamldapuser 密碼。

  7. 在 [核心認證模組配置] 中的 [組織認證配置] 與 [管理員認證配置] 下拉式功能表下選取新建立的 ldapService [認證配置服務實例]。

  8. 再次登入。

第 6 章 使用伺服器池儲存調整 Instant Messaging 部署

伺服器池儲存讓您可在單一網域內支援上百萬的使用者。使用伺服器池儲存,您可在伺服器池儲存內的幾個伺服器之間共用網域。此外,您也可以使用負載平衡器,例如重新導向伺服器,來協助管理池儲存中的伺服器利用。本章下列各節提供關於伺服器池儲存的資訊:

如需負載平衡與重新導向伺服器的資訊,請參閱第 7 章, 使用重新導向伺服器最佳化 Instant Messaging 伺服器池。本章中的程序假設您已在伺服器池中的主機上安裝 Instant Messaging。此外,您需要在伺服器池的每個節點上安裝 Access Manager,並將 SDK 配置為與單一遠端 Access Manager 伺服器通訊。

Instant Messaging 伺服器池儲存簡介

藉由建立伺服器池,您可在 Instant Messaging 部署中所支援的使用者數便不再受單一伺服器系統的容量所限制。相反地,您可使用多個系統的資源來支援單一網域內的使用者。此外,伺服器池提供備援,因此如果池中的一個伺服器失敗,受影響的用戶端可透過池中的其他伺服器重新連線,並繼續它們的階段作業,僅會有最少的不便之處。在伺服器池中部署一個以上的伺服器可建立多節點部署

您可藉由將 Instant Messaging 伺服器配置為經由伺服器對伺服器的連接埠進行通訊,來建立伺服器池,並從相同的 LDAP 目錄取得使用者資料。一旦您已配置伺服器,就需要將用戶端來源配置為指向負載平衡器,或負載導向器,而非單一節點主機與連接埠。


注意 – 注意 –

雖然使用共用檔案系統而非 LDAP 目錄,也可以儲存使用者屬性,但這麼做會負面地影響效能與可管理性。基於此理由,伺服器池僅支援 LDAP 儲存。


為了確保伺服器池內的所有伺服器擁有一致性的資料,會為池中的所有伺服器複製下列資訊: 

不會複製下列資訊:

此外,如果您正透過存取部署中的控制檔案來加強策略,則存取控制檔案的內容必須與伺服器池中所有伺服器相同。如需詳細資訊,請參閱使用存取控制檔案管理策略

Instant Messaging 伺服器池的可用性

如果伺服器池內的節點當機,則所有目前連線的用戶端都會中斷連線,且階段作業與資源都會變成無法使用。如果您以負載平行器來設定部署,則使用者可立即重新連線,且以負載平衡器來導向至池中的其他節點。這樣,就不會需要重新建立會議或新聞通道,因為在池中的伺服器間會共用此資訊。此外,在將使用者導入至池中的其他節點後,可繼續一對一聊天階段作業。

配置伺服器池內 Instant Messaging 伺服器間的伺服器對伺服器通訊

本章描述如何啟用伺服器池內的兩個 Instant Messaging 伺服器或間的通訊。您必須以池中所有其他伺服器的相關資訊,來配置池中的所有伺服器。

表 6–1 列出 iim.conf 中的參數,以及將它們用於設定伺服器池中兩個範例 Instant Messaging 伺服器的值:iimA.siroe.comiimB.siroe.com

如需配置參數的詳細資訊,請參閱附錄 A iim.conf 中的 Instant Messaging 配置參數

表 6–1 伺服器池內兩個 Instant Messaging 伺服器的配置資訊範例

iim.conf 中的參數

伺服器 A 的值 

伺服器 B 的值 

備註 

iim_server.serverid

iimA.siroe.com

iimB.siroe.com

在伺服器池內,會使用此 ID 來支援回撥機制且並非用於認證。此值在伺服器池內應為唯一的。 

iim_server.password

secretforiimA

secret4iimB

 

iim_server.coservers

coserver1

coserver1

每個 Instant Messaging 伺服器依其符號名稱加以識別。 伺服器的符號名稱會新增至 iim.confiim_server.coservers 參數中。此參數可能會包含多個以逗號分隔的值。

iim_server.domainname

siroe.com

siroe.com

伺服器池內的點伺服器會共用相同的預設網域。 

iim_server.coserver1.host

iimB.siroe.com:5269

iimA.siroe.com:5269

伺服器池內其他點伺服器的主機名稱與連接埠號碼。 

iim_server.coserver1.serverid

iimB.siroe.com

iimA.siroe.com

伺服器池內點伺服器的伺服器 ID (iim_server.serverid)。

iim_server.coserver1.password

secret4iimB

secretforiimA

伺服器池內點伺服器的密碼 (iim_server.password)。

iim_server.coserver1.domain

siroe.com

siroe.com

伺服器池內的點伺服器會共用相同的預設網域。 

Procedure設定伺服器池內兩個 Instant Messaging 伺服器間的通訊

  1. 彙整表 6–1 中列出的資訊。

  2. 變更至伺服器 iimA.siroe.com 上的 im-cfg-base

    如需找到 im-cfg-base 的說明,請參閱Instant Messaging 伺服器目錄結構

  3. 開啟 iim.conf

    如需找到並修改 iim.conf 的說明,請參閱附錄 A iim.conf 中的 Instant Messaging 配置參數


    備註 –

    iim.conf 檔案應為您在安裝時所建立的 Instant Messaging 伺服器帳號所擁有。如果 Instant Messaging 伺服器帳號無法讀取 iim.conf 檔案,則 Instant Messaging 伺服器和多重訊號組合器將無法讀取該配置。此外,您可能無法編輯 iim.conf


  4. 修改參數值以符合您的部署。

    表 8–1 列出您必須修改的參數。如 iim.conf 中沒有參數,則新增參數。以下範例顯示 iimA.siroe.com 上的 iim.conf 區段,該區段與您必須修改的伺服器對伺服器通訊對應。


    iim_server.serverid=iimA.siroe.com
    iim_server.password=secretforiimA
    iim_server.domainname=siroe.com
    iim_server.coservers=coserver1
    iim_server.coserver1.host=iimB.siroe.com:5269
    iim_server.coserver1.serverid=iimB.siroe.com
    iim_server.coserver1.password=secret4iimB
    iim_server.coserver1.domain=siroe.com
                   
  5. 對於伺服器 iimB.siroe.com 上的 iim.conf 檔案,依照步驟 2 到步驟 4 進行。

    以下範例顯示 iimB.siroe.com 上的 iim.conf 區段,該區段與您必須修改的伺服器對伺服器通訊對應。


    iim_server.serverid=iimB.siroe.com
    iim_server.password=secret4iimB
    iim_server.domainname=siroe.com
    iim_server.coservers=coserver1
    iim_server.coserver1.host=iimA.siroe.com:5269
    iim_server.coserver1.serverid=iimA.siroe.com
    iim_server.coserver1.password=secretforiimA
    iim_server.coserver1.domain=siroe.com
  6. 儲存變更並關閉 iim.conf

  7. 重新整理這兩個伺服器的配置。


    imadmin refresh server
    

填加新節點至現有的 Instant Messaging 部署

如果您需要填加其他節點至現有的伺服器池,您需要將新伺服器配置為伺服器對伺服器通訊,然後將與新伺服器相關的配置資訊,增加至池中所有現有的伺服器。此外,您需要將與池中所有伺服器相關的配置資訊,增加至新節點。如需說明,請參閱設定伺服器池內兩個 Instant Messaging 伺服器間的通訊

保護多節點部署的安全性

當將節點連線至遠端伺服器時,節點會提供回撥金鑰。接著遠端伺服器會連線回節點,以驗證回撥金鑰。在多節點部署中,遠端伺服器可能會從原先傳送回撥金鑰的節點,連線回池中不同的節點。遠端伺服器連線的目的節點所提供的回撥金鑰,必須與原先連線節點所提供的回撥金鑰相同。iim_server.dialback key 配置參數會定義節點應使用的回撥金鑰。除非您明確指定一個回撥金鑰值,否則就會隨機產生。如需說明,請參閱手動定義伺服器池中 Instant Messaging 伺服器的回撥金鑰

遠端伺服器會使用 From 屬性來連線回初始伺服器。通常,會使用伺服器網域名稱,以做為 Jabber 下伺服器對伺服器通訊的 From 屬性值。然而,伺服器池中的所有伺服器都會共用相同的網域名稱。因此,無法使用網域名稱做為金鑰來尋找池中的單一伺服器。相反地,Instant Messaging 會使用伺服器或點識別元 (serverid) 而非網域名稱,來做為 From 屬性的值。

Procedure手動定義伺服器池中 Instant Messaging 伺服器的回撥金鑰

除非您明確指定一個回撥金鑰值,否則就會隨機產生。

  1. 開啟 iim.conf

    如需找到並修改 iim.conf 的說明,請參閱iim.conf 檔案語法

  2. 修改 iim_server.dialback.key 參數的值。

    例如:


    iim_server.dialback.key=mymultinodedialbackkey
    
  3. 儲存變更並關閉 iim.conf

  4. 重新整理這兩個伺服器的配置。


    imadmin refresh server
    

第 7 章 使用重新導向伺服器最佳化 Instant Messaging 伺服器池

使用以 Instant Messaging 運送的重新導向服務來平衡伺服器池內伺服器間的負載 (多節點部署)。效能會直接受到單一部署中伺服器間必要通訊量的衝擊,所以藉由增加兩個使用者共用線上狀態資訊與相同節點上完成之訊息的機率,您就可以改善效能。

本章下列小節包含關於使用 Instant Messaging 重新導向伺服器的資訊:

Instant Messaging 重新導向簡介

重新導向伺服器是特別為執行重新導向作業 (例如指定至 Instant Messaging 伺服器的連線端點) 而配置的 Instant Messaging 伺服器實例。將重新導向伺服器增加至您的部署,可藉由將可能於相同主機上互相通訊的使用者分組,來減少伺服器間的通訊量。這可減少您部署中往返於伺服器間的線上狀態通知量。使用者的群組由通訊錄清單內容來決定。通訊錄清單中的共用項目表示較高的通訊可能性。

Instant Messaging 使用者分割演算法

Instant Messaging 會決定您部署中使用者的最佳除法,並建立使用者的群組或分割區。演算法 Instant Messaging 的用法如下:

  1. 決定一或多組使用者,或使用者網路以及它們在您部署中的連線。接著重新導向伺服器會建立稱為使用者對網路對映的表格可將每個使用者對映至使用者網路。

  2. 大於最弱繫結上最大分割區大小的分割區使用者網路,例如每個弱連線元件的最大大小,不再大於已配置的分割區大小。弱繫結可由使用者網路間的少數連線來決定,然而,當分割使用者網路時,其他參數,例如地理限制、每個使用者網路連線數,以及其他由管理員設定的限制,也可能會算在內。

  3. 以大約等分的大小將組合分配成特定的分割區。首先重新導向伺服器會將網路對分割區表格建立成此程序的一部份,最後建立使用者對分割區表格。這些表格會聯合組成重新導向資料庫。重新導向資料庫會以分割區 ID 來對映每個使用者。您可使用 rdadmin 指令行公用程式來建立與管理此資料庫。


範例 7–1 Instant Messaging 重新導向事件順序

此範例描述的是用戶端成功重新導向的事件順序。

  1. 管理員會執行 rdadmin 來產生和/或更新重新導向伺服器。

  2. 使用者會連線至重新導向伺服器,並嘗試進行認證。

  3. 重新導向伺服器會決定使用者的身份,並在重新導向資料庫中搜尋相符的使用者 ID。

  4. 如果重新導向伺服器在重新導向資料庫中找不到使用者 ID,則重新導向伺服器會聯繫下一個重新導向伺服器 (由循環配置資源機制來決定) 以找到包含使用者 ID 的重新導向資料庫。如果在重新導向資料庫中找到了使用者 ID,則重新導向伺服器會取得指定給使用者的分割區 ID。

  5. 重新導向伺服器會根據指定的分割區 ID 來決定重新導向使用者的目的節點。

  6. 重新導向伺服器會將錯誤傳回包含其重新導向至的節點之用戶端,並關閉到用戶端的連線。

    重新導向伺服器會使用 see-other-host 串流錯誤來將此資訊傳回給用戶端。如需詳細資訊,請參閱RFC 3920

  7. 用戶端會解譯錯誤,並建立到傳回錯誤之節點的連線。

  8. 重新導向伺服器會繼續監視節點,並依需要更新其「分割區至主機」表格。


關於 Instant Messaging 重新導向資料庫

資料庫僅包括本機使用者。閘道、元件與遠端使用者不包含於重新導向資料庫中。

Instant Messaging 重新導向伺服器簡介

重新導向伺服器是 Instant Messaging 伺服器的實例,其唯一功能就是重新導向用戶端連線。重新導向伺服器不會為一般使用者執行任何其他的服務。啟動時,重新導向伺服器會載入伺服器配置與分割區檔案,並建立下列資料結構:

重新導向伺服器會使用兩種資料結構來重新導向用戶端連線。如需重新導向伺服器如何使用此資訊的說明,請參閱範例 7–1

Instant Messaging 重新導向伺服器與 StartTLS

用戶端與重新導向伺服器之間可能會發生很多的 StartTLS 協商,直到建立連線用戶端身份。用戶端不需要驗證認證,相反地,它只需要使用者 ID。

配置 Instant Messaging 伺服器實例做為重新導向伺服器

若要將伺服器實例指定為重新導向伺服器,您需要提供 iim.conf 中的 iim_server.redirect.provider 參數值。一旦您定義了實例做為重新導向伺服器,您需要指定 iim.conf 中其他與重新導向相關之參數的值,以提供進一步的配置資訊。表 7–1 描述重新導向配置參數。

表 7–1 iim.conf 中的重新導向伺服器配置參數

參數 

預設值 

說明 

iim_server.redirect.provider

無 

實作 com.sun.im.provider.Redirector 介面之重新導向提供者名稱或類別的清單 (以逗號分隔)。此參數的任何值都會將伺服器實例定義為重新導向伺服器。支援的值包含 dbroundrobinregex 與實作 com.sun.im.provider.Redirector 介面的類別名稱。

iim_server.redirect.to

無 

此重新導向伺服器可能重新導向用戶端連線的目的節點清單 (以逗號分隔)。節點名稱可以是各種字母數字式字串。此清單可能會是 iim_server.redirect.to.nodename.host 中所定義的主機超集合。

iim_server.redirect.to.nodename.host

無 

其中,nodenameiim_server.redirect.to 中所存在的節點的名稱。重新導向伺服器要使用 nodename 就必須要有此屬性。

iim_server.redirect.to.nodename.usessl

False 

如果為 true,則會將 nodename 配置為使用舊有 SSL。如需詳細資訊,請參閱在 Instant Messaging 中使用 TLS 與舊有 SSL 的摘要

iim_server.redirect.db.users

im-db-base/redirect.db

重新導向資料庫的名稱與位置。 

iim_server.redirect.db.partitions

im-cfg-base/redirect.partitions

重新導向分割區檔案的名稱與位置。 

iim_server.redirect.db.partitionsize

5000 

分割區中的最大使用者數。 

iim_server.redirect.roundrobin.partitions

im-cfg-base/redirect.partitions

重新導向分割區檔案的名稱與位置。 

iim_server.redirect.pollfrequency

 

重新導向伺服器對 redirect.hosts 檔案中定義之主機所做的連線間的間隔。重新導向伺服器會輪詢這些主機,以決定它們是否上線,以及是否可接受用戶端連線。

Procedure配置 Instant Messaging 伺服器為重新導向伺服器

開始之前

您無法將早於 2006Q1 版的 Instant Messenger 用於重新導向伺服器。如果您使用協力廠商用戶端,請確定用戶端支援 XMPP 重新導向。

  1. 彙整上述表 7–1 中的資訊。

  2. 開啟 iim.conf

    如需找到與修改此檔案的說明,請參閱附錄 A iim.conf 中的 Instant Messaging 配置參數

  3. 修改參數值以符合您的部署。

    表 7–1 列出您需要提供值的參數。如 iim.conf 中沒有參數,則新增參數。以下範例顯示 iim.siroe.com 上的 iim.conf 區段,該區段與您必須修改的重新導向伺服器參數對應。


    iim_server.redirect.provider=db,roundrobin
    iim_server.redirect.to=imserverA,imserverB
    iim_server.redirect.to.imserverA.host=iimA.siroe.com
    iim_server.redirect.to.imserverB.host=iimB.siroe.com
    iim_server.redirect.to.imserverA.usessl=false
    iim_server.redirect.to.imserverB.usessl=false
  4. 儲存您的變更並關閉 iim.conf

  5. 重新整理重新導向伺服器上的配置。


    imadmin 重新導向伺服器
    
  6. 將用戶端配置為連線至重新導向伺服器,而非多重訊號組合器。

管理 Instant Messaging 重新導向伺服器

下列小節描述關於管理 Instant Messaging 重新導向伺服器的資訊:

停止、啟動、重新啟動、重新整理與檢查 Instant Messaging 重新導向伺服器的狀態

重新導向伺服器是僅被配置用來重新導向的 Instant Messaging 伺服器實例。使用與一般伺服器實例相同的程序來停止、啟動、重新啟動、重新整理與檢查狀態。例如,若要啟動重新導向伺服器,您要鍵入:


imadmin start server

如需詳細資訊,請參閱停止、啟動、重新整理與檢查 Instant Messaging 元件

Instant Messaging 重新導向伺服器登入

重新導向伺服器是僅被配置用來重新導向的 Instant Messaging 伺服器實例。使用與一般伺服器實例相同的說明與記錄。如需詳細資訊,請參閱第 13 章, 管理 Instant Messaging 的記錄

設定 Instant Messaging 重新導向伺服器的分割區大小

您可設定 iim.conf 中的 iim_server.redirect.db.partitionsize 參數來指定最大分割區大小。此參數值等於每個分割區中允許的使用者數。預設值是 5000 (使用者)。

指定 Instant Messaging 重新導向伺服器的分割區清單

redirect.partitions 檔案定義首要節點 (特定分割區中的使用者將重新導向至該節點),如果需要,也可以定義一系列的備用節點。檔案中每個非空值、非註釋的行定義分割區的節點清單。清單中的每個節點必須與 iim.conf 中做為 iim_server.redirect.to 參數的值所定義的節點對應。如果定義的分割區多於 redirect.partitions 檔案中的行,則會用循環配置資源來處理未指定的分割區。

依預設,會將 redirect.partitions 檔案儲存於下列位置:


im-cfg-base/redirect.partitions

範例 7–2 Redirect.partitions 檔案配置

redirect.partitions 檔案範例會假設下列情況:

在此方案中,redirect.partitions 看起來可能是這樣:


imserverA, imserverB, imserverC
imserverB, imserverC

有兩個非空、非指令行表示至少有兩個使用者分割區。第一行定義的是分割區 1 的重新導向行為。重新導向伺服器會先將分割區 1 的使用者重新導向至 imserverA。如果失敗的話,重新導向伺服器會嘗試 imserverB,然後是 imserverC。如果沒有可操作的節點,重新導向伺服器會將錯誤傳回用戶端。


使用 rdadmin 公用程式建立與管理 Instant Messaging 重新導向表格

通常,您會依需要使用 rdadmin 公用程式。您並不需要經常重新產生表格,因為名冊通常不會大量變更。然而,您應至少每兩週執行一次公用程式。

Procedure建立新的或更新現有的 Instant Messaging 重新導向資料庫

  1. 停止重新導向伺服器:


    imadmin stop redirect
    
  2. 如果您正在更新現有的重新導向資料庫,需取得先前由 rdadmin 所建立的分割區號碼:

    1. 在文字編輯程式中開啟 rdadmin.log

      rdadmin.log 檔案儲存於:


      im-runtime-base/log
    2. 找到「NO OF PARTITIONS RUN」的值。

  3. 確定您至少擁有與分割區一樣多的使用者項目。

  4. 產生新的重新導向資料庫:

    例如:


    rdadmin generate

    如需其他 rdadmin 選項,請參閱 rdadmin man 頁面。

    rdadmin 公用程式會建立新資料庫並將它儲存為 im-db-base/redirect.new.db,除非您指定不同的名稱。

  5. 如果您是第一次產生重新的導向資料庫,則將資料庫更名為 redirect.db

  6. 如果您正在更新現有的重新導向資料庫,則以新的重新導向資料庫來取代舊的:

    例如:


    rm im-db-base/redirect.db
    cp im-db-base/redirect.new.db im-db-base/redirect.db
    
  7. 啟動重新導向伺服器:


    imadmin start redirect
    

Instant Messaging 重新導向伺服器主機監視

重新導向伺服器會監視其重新導向至的用戶端的主機操作狀態。如果重新導向伺服器判定其中一個主機失敗,則會將分割區重新配置為 redirect.partitions 檔案中所定義的後續主機。此外,重新導向伺服器會偵測主機何時返回線上,以將分割重新導向回該主機。重新導向伺服器會以兩種方式來監視主機:

Procedure設定 Instant Messaging 重新導向伺服器主機輪詢頻率

  1. 在重新導向伺服器上,開啟 iim.conf

    如需找到與修改此檔案的說明,請參閱附錄 A iim.conf 中的 Instant Messaging 配置參數

  2. 設定 iim_server.redirect.pollfrequency 參數。

    此值以分鐘為單位。例如:


    iim_server.redirect.pollfrequency=200
  3. 儲存並關閉 iim.conf

  4. 重新整理重新導向伺服器。


    imadmin refresh server
    

Instant Messaging 重新導向伺服器最佳操作與疑難排解

下列小節描述使用 Instant Messaging 重新導向伺服器的最佳操作,以及疑難排解資訊:

重新導向伺服器憑證

在使用憑證進行安全認證的部署中,可能會提示用戶端每次連線時都要接受兩種憑證:一種是用於重新導向伺服器,另一種是用於重新導向用戶端的目的主機。若要避免此情形,請使用可信任的憑證或在兩個伺服器上使用相同的憑證。

Instant Messaging 重新導向伺服器支援的用戶端

重新導向無法用於不支援 RFC 3920 的用戶端,尤其是 see-other-hosts 串流錯誤 (XMPP 重新導向)。您可將 Instant Messenger 2006Q1 或更新的版本與重新導向伺服器搭配使用。如果您使用協力廠商用戶端,則要確定用戶端支援 XMPP 重新導向。

使用重新導向伺服器與在 LDAP 中儲存使用者屬性

如果您正在使用 LDAP 來儲存使用者屬性,也就是 iim.userprops.store =ldap,您需要確定 iim_ldap.usergroupbinddniim_ldap.usergroupbindcred 的值對目錄有目錄管理員層級的存取權。

決定重新導向資料庫的分割區大小

分割區大小應夠大以盡可能避免將使用者網路分割開。然而,分割區不應大於最小系統可支援的大小。

使用重新導向伺服器做為分割區主機

也可以讓重新導向伺服器託管一或多個分割區。為此,您可列出 redirect.partitions 中的重新導向伺服器實例,或 iim_server.redirect.to 參數中的值。然而,您不應讓一個以上的重新導向伺服器做為分割區主機,因為非同步化的 redirect.partitions 檔案可能會引起重新導向循環。

第 8 章 聯合部署多個 Instant Messaging 伺服器

在只有 LDAP 的部署中,當您聯合多個 Instant Messaging 部署時,便可形成更大的 Instant Messaging 社群。來自不同伺服器的一般使用者可以彼此通訊、在其他網域上使用會議室,和依照存取特權在遠端伺服器上訂閱新聞通道。

在與 Sun JavaTM System Access Manager 的部署中,單一 Instant Messaging 伺服器可以託管多個網域。您可以指定一個單獨網域作為 Instant Messaging 伺服器實例的預設網域。在由相同伺服器所託管之不同網域中的一般使用者彼此可以交互作用。當您聯合多個 Instant Messaging 部署時,在預設網域的一般使用者可以看見在其他遠端 Instant Messaging 伺服器中預設網域內的一般使用者。

若要啟用在您的網路內多台 Instant Messaging 伺服器的通訊,必須配置您的伺服器以向在網路中的其他 Instant Messaging 伺服器識別身份。Instant Messaging 伺服器可利用其網域名稱、主機和連接埠號碼、伺服器 ID 以及密碼識別本身的身份。

在只有 LDAP 部署中,兩台伺服器應位於不同的網域中。

在伺服器配置中,您可以將包含字母和數字的符號名稱指定給每個 Instant Messaging 伺服器,例如 IMserver1


注意 – 注意 –

保護使用 TLS 伺服器對伺服器通訊的安全。當在兩台伺服器間交換資料時,這是防止第三方侵入的必要方法。此種預防措施在兩台伺服器使用公開網路連線時特別需要。按照以下所列的指示來配置 Instant Messaging 伺服器之間的 TLS。


配置兩個 Instant Messaging 伺服器之間的聯合通訊

本節說明如何啟用兩個 Instant Messaging 伺服器之間的聯合通訊。

表 8–1 列出 iim.conf 中用於聯合兩個伺服器之間的通訊參數,與兩個範例 Instant Messaging 伺服器 iim.company22.comiim.i-zed.com 的參數值。

如需配置參數的詳細資訊,請參閱附錄 A iim.conf 中的 Instant Messaging 配置參數


備註 –

每個 Instant Messaging 伺服器依其符號名稱加以識別。 伺服器的符號名稱會新增至 iim.confiim_server.coservers 參數中。此參數有多個值並以逗號加以分隔。


表 8–1 兩個聯合 Instant Messaging 伺服器的配置資訊範例

iim.conf 中參數

伺服器 iim.company22.com 的值

伺服器 iim.i-zed.com 的值

iim_server.serverid

Iamcompany22

iami-zed

iim_server.password

secretforcompany22

secret4i-zed

iim_server.coservers

coserver1

coserver1

iim_server.domainname

iim.company22.com

iim.i-zed.com

iim_server.coserver1.host

iim.i-zed.com:5269

iim.company22.com:5269

iim_server.coserver1.serverid

Iami-zed

Iamcompany22

iim_server.coserver1.password

secret4i-zed

secretforcompany22

iim_server.coserver1.domain

i-zed.com

company22.com

Procedure聯合兩個 Instant Messaging 伺服器之間的通訊

  1. 彙整在表 8–1 中列出的資訊。

  2. 變更為伺服器 iim.company22.com 上的 im-cfg-base

    如需找到 im-cfg-base 的說明,請參閱Instant Messaging 伺服器目錄結構

  3. 開啟 iim.conf

    如需尋找並修改 iim.conf 的指引,請參閱iim.conf 檔案語法


    備註 –

    iim.conf 檔案應為您在安裝時所建立的 Instant Messaging 伺服器帳號所擁有。如果 Instant Messaging 伺服器帳號無法讀取 iim.conf 檔案,則 Instant Messaging 伺服器和多重訊號組合器將無法讀取該配置。此外,您可能無法編輯 iim.conf


  4. 修改參數值以符合您的部署。

    表 8–1 列出您必須修改的參數。如 iim.conf 中沒有參數,則新增參數。以下範例顯示 iim.company22.com 上的 iim.conf 區段,該區段與您必須修改的伺服器對伺服器通訊對應。


    iim_server.serverid=Iamcompany22
    iim_server.password=secretforcompany22
    iim_server.domainname=iim.icompany22.com
    iim_server.coservers=coserver1
    iim_server.coserver1.host=iim.i-zed.com:5269
    iim_server.coserver1.serverid=Iami-zed
    iim_server.coserver1.password=secret4i-zed
    iim_server.coserver1.domain=i-zed.com
                   
  5. 對於伺服器 iim.i-zed.com 上的 iim.conf 檔案,依照步驟 2 到步驟 4 進行。

    以下範例顯示 iim.i-zed.com 上的 iim.conf 區段,該區段與您必須修改的伺服器對伺服器通訊對應。


    iim_server.serverid=Iami-zed
    iim_server.password=secret4i-zed
    iim_server.domainname=iim.i-zed.com
    iim_server.coservers=coserver1
    iim_server.coserver1.host=iim.company22.com:5269
    iim_server.coserver1.serverid=Iamcompany22
    iim_server.coserver1.password=secretforcompany22
    iim_server.coserver1.domain=company22.com
  6. 儲存變更並關閉 iim.conf

  7. 重新整理這兩個伺服器的配置。


    imadmin refresh server
    

第 9 章 管理 Instant Messaging 元件

本章解釋如何管理 Instant Messaging 元件 (伺服器、多重訊號組合器、Calender 代理程式、叢集代理程式與監視程式) 以及執行其他管理工作,例如變更配置參數和建立備份。

本章包含下列部分,分別描述 Instant Messaging 中的各項管理工作:

停止、啟動、重新整理與檢查 Instant Messaging 元件

imadmin 指令能讓您:

只有超級使用者,或在執行 Instant Messaging 與多重訊號組合器的系統上擁有管理權限的使用者,才能執行 imadmin 指令行公用程式。此一般使用者即為伺服器執行時所使用的和在安裝時指定的身份。

imadmin 指令行公用程式位在以下目錄中:

im-svr-base/sbin

啟動 Instant Messaging 伺服器可讓 Instant Messenger 與之連接。停止 Instant Messaging 伺服器會關閉所有連線並結束連線所有的 Instant Messenger 用戶端。

啟動 Instant Messaging 元件

您可以同時啟動所有元件,或分別啟動單個元件。

根據啟用的元件,使用 imadmin 指令的start 選項來啟動 Instant Messaging 伺服器、多重訊號組合器、Calendar 代理程式、叢集代理程式與監視程式。

Procedure若要啟動所有元件

    在指令行中,鍵入下列指令:


    imadmin start
    

    如果伺服器和多重訊號組合器同時被啟用,則這個指令會先啟動 Instant Messaging 伺服器,然後啟動多重訊號組合器。

    若監視程式為啟用 (預設),此指令會啟動監視程式,然後監視程式會讀取配置檔案並依需要啟動 Instant Messaging 伺服器與/或多重訊號組合器。

Procedure啟動單個元件

    在指令行中,鍵入 imadmin start 指令和用來指定元件的引數,如下所示:

    伺服器:


    imadmin start server
    

    多重訊號組合器:


    imadmin start multiplexor
    

    Calendar 代理程式:


    imadmin start agent-calendar
    

    監視程式:


    imadmin start watchdog
    

停止 Instant Messaging 元件

您可以同時停止所有元件,或分別停止單個元件。

根據啟用的元件,使用 imadmin 指令的 stop 選項來停止 Instant Messaging 伺服器、多重訊號組合器、Calender 代理程式、叢集代理程式與監視程式。

Procedure停止所有元件

    在指令行中,鍵入下列指令:


    imadmin stop
    

    若監視程式正在執行,imadmin 會先關閉監視程式,然後停止伺服器與/或多重訊號組合器。

    此指令會停止伺服器、多重訊號組合器、Calendar 代理程式、叢集代理程式與監視程式,終止所有一般使用者的連線,然後結束任何已配置的輸入和輸出伺服器連線。

Procedure停止單個元件

    在指令行中,鍵入 imadmin stop 指令和用來指定元件的引數,如下所示:

    伺服器:


    imadmin stop server
    

    多重訊號組合器:


    imadmin stop multiplexor
    

    Calendar 代理程式:


    imadmin stop agent-calendar
    

    監視程式:


    imadmin stop watchdog
    

重新整理元件配置

使用 imadmin 指令的 refresh 選項來停止與重新啟動個別的 Instant Messaging 伺服器並重新整理該元件的配置。

您可以同時更新所有元件,或分別更新單個元件。

不管何時您在 iim.conf 檔案中變更配置參數時,都需要更新配置。

Procedure更新所有元件

    在指令行中,鍵入下列指令:


    imadmin refresh
    

    此指令會停止伺服器、多重訊號組合器、Calendar 代理程式、叢集代理程式與監視程式,終止所有一般使用者的連線,然後結束任何已配置的輸入和輸出伺服器連線。

    若監視程式正在執行,imadmin 會先關閉監視程式,然後停止伺服器與/或多重訊號組合器。然後啟動讀取配置檔案的監視程式,並依需要啟動 Instant Messaging 伺服器與/或多重訊號組合器。

Procedure更新單個元件

    在指令行中,鍵入 imadmin refresh 指令和用來指定元件的引數,如下所示:

    伺服器:


    imadmin refresh server
    

    多重訊號組合器:


    imadmin refresh multiplexor
    

    Calendar 代理程式:


    imadmin refresh agent-calendar
    

    叢集代理程式:


    imadmin refresh monitor
    

    監視程式:


    imadmin refresh watchdog
    

檢查 Instant Messaging 元件的狀態

您可以使用 imadmin 指令的 status 選項同時檢查所有元件的狀態,或分別檢查單個元件的狀態。此指令會以下列格式傳回結果:


Component  [status]

例如:


Server          [UP]
Multiplexor     [UP]
Agent:calendar  [DOWN]
Watchdog        [UP]

Procedure檢查所有元件的狀態

    在指令行中,鍵入下列指令:


    imadmin status
    

    此指令會傳回所有已啟用元件的狀態。

Procedure檢查單個元件的狀態

    在指令行中,鍵入 imadmin status 指令和用來指定元件的引數,如下所示:

    伺服器:


    imadmin status server
    

    多重訊號組合器:


    imadmin status multiplexor
    

    Calendar 代理程式:


    imadmin status agent-calendar
    

    監視程式:


    imadmin status watchdog
    

變更 Instant Messaging 伺服器和多重訊號組合器配置參數

Instant Messaging 會將配置參數儲存於 iim.conf 檔案中。如需配置參數的完整清單,請參閱附錄 A iim.conf 中的 Instant Messaging 配置參數

若要變更配置參數,可手動編輯 iim.conf 檔案中的配置參數和值,然後重新整理 Instant Messaging 伺服器配置。如果您變更多重訊號組合器的參數,則僅需要依照下列內容來重新整理多重訊號組合器:


imadmin refresh multiplexor

如需配置參數及其值的完整清單,請參閱附錄 A iim.conf 中的 Instant Messaging 配置參數

Procedure變更配置參數

  1. 變更至 im-cfg-base 目錄。

    如需找到 im-cfg-base 的說明,請參閱Instant Messaging 伺服器目錄結構

  2. 使用文字編輯程式來編輯 iim.conf

  3. 儲存您的變更。

  4. 使用 imadmin 重新整理配置。

    例如:


    imadmin refresh
    

    備註 –

    如果您變更多重訊號組合器偵聽連接埠 (iim_mux.listenport) 或多重訊號組合器主機,則需要更新 im.htmlim.jnlp 檔案。否則,會停用 Instant Messenger 與伺服器的連線。如需詳細資訊,請參閱第 15 章, 管理 Instant Messenger


備份 Instant Messaging 資料

Instant Messaging 並沒有任何損壞回復工具。使用您網站的備份系統以定期備份配置和資料庫目錄。本節在下列各節中描述備份 Instant Messaging:

備份資訊

需要備份的 Instant Messaging 資訊包括下列類型:

配置資訊會儲存在配置目錄 (im-cfg-base) 中。預設路徑在Instant Messaging 伺服器目錄結構中有描述。

Instant Messaging 資料會儲存在資料庫目錄 (im-db-base) 中。im-db-base 的預設值在 Instant Messaging 伺服器目錄結構中也有描述。

如果已自訂 Instant Messenger 資源,則必須將它們備份。在安裝 Instant Messenger 時會提供其資源的位置。

執行備份

儘管配置資訊不常變更,但 Instant Messaging 一般使用者資料會快速變更,而且為了避免一般使用者資料的遺失,您應該定期備份 Instant Messaging 一般使用者資料。在執行安裝程式和解除安裝程式之前,您必須執行備份。

若要備份一般使用者資料和配置資訊,您不需要停止 Instant Messaging 伺服器,因為所有伺服器確定的磁碟都會自動執行。

復原備份資訊

當發生磁碟錯誤,且所有一般使用者資料和配置資訊都遺失時,必須復原一般使用者資料和配置資訊的備份。

Procedure從備份復原一般使用者資料

  1. 變更至 im-runtime-base 目錄。

    如需找到 im-runtime-base 的資訊,請參閱Instant Messaging 伺服器目錄結構

  2. 停止 Instant Messaging 伺服器。


    imadmin stop
    
  3. 將備份資料複製到 im-db-base 目錄。

    請務必維持備份資料的目錄結構。

  4. 驗證新復原資料的權限與所有者。

    檔案應屬於 Instant Messaging 系統使用者所有。如需此使用者的資訊,請參閱建立 UNIX 系統使用者與群組。權限應該設定如下:

    • 檔案:600 (表示僅所有者的讀取與寫入權限)

    • 目錄:700 (表示僅所有者的讀取、寫入與執行權限)

    如需關於變更權限與所有者的資訊,請參閱您的作業系統的文件。

  5. 啟動 Instant Messaging 伺服器。

    imadmin start

第 10 章 使用 Instant Messaging XMPP/HTTP 閘道

XMPP/HTTP 閘道讓 Instant Messaging 能夠存取非 XMPP 式的用戶端,如 HTML 式用戶端,以及防火牆背後的用戶端 (允許 HTTP 通訊,但不允許 XMPP 通訊)。閘道會代表 HTTP 用戶端來代理到 XMPP 伺服器的 Instant Messaging 通訊。

XMPP/HTTP 閘道是由 Instant Messenger 資源檔案部署為 Web 容器上的 webapp。

本章在以下小節中提供配置和維護 XMPP/HTTP 閘道的相關資訊:

Instant Messaging XMPP/HTTP 閘道配置檔案

XMPP/HTTP 閘道使用以下檔案進行配置:

配置 Instant Messaging XMPP/HTTP 閘道

當您在安裝後執行 configure 公用程式時,可以選擇是否部署 XMPP/HTTP 閘道。如果已啟用,則 configure 公用程式會為閘道建立預設的配置檔案 (httpbind.conf)。您可以透過修改此檔案中的值來變更配置。如需 httpbind.conf 檔案語法、檔案位置和此檔案中配置參數的說明,請參閱附錄 Bhttpbind.conf 中的 Instant Messaging XMPP/HTTP 閘道配置參數,或是參閱本節中的說明。

此外,當您選擇在初始配置期間部署閘道時,configure 公用程式會在 im-svr-base/work 目錄中建立 .war 檔案,然後在您為程式碼庫指定的目錄中的 Web 或應用程式伺服器上部署此檔案。

您也可以透過修改 web.xml (以用戶端資源部署在 Web 容器上) 中的值,來配置閘道以使用非預設配置檔案。

本節中的說明假設閘道配置檔案為 httpbind.conf。如果您使用非預設配置檔案,請用您的配置檔案替代說明中的 httpbind.conf

每次變更 httpbind.conf 後,您都需要重新啟動 XMPP/HTTP 閘道。

本節包含以下說明:

如需配置閘道記錄的說明,請參閱管理 XMPP/HTTP 閘道記錄

Procedure啟用或停用 Instant Messaging XMPP/HTTP 閘道

若要啟用閘道,請執行 configure 公用程式,並設定 iim.conf 中的參數。您稍後可使用 Web 容器或應用程式伺服器提供的工具停用閘道。

  1. 啟用閘道:

    1. 執行 configure 公用程式。

    2. 當出現提示時選擇部署閘道。

      如需詳細資訊,請參閱第 1 章, 安裝後配置 Instant Messaging

    3. iim.conf 中,將 iim_agent.httpbind.enable 參數設定為 true。

      例如:


      iim_agent.httpbind.enable=true
  2. 若要停用閘道,請使用 Web 或應用程式伺服器提供的工具停用 webapp。

Procedure配置 XMPP/HTTP 閘道處理的同步運作請求數

開始之前

確定您熟悉 JEP 124 標準草案。如需詳細資訊,可從 http://www.jabber.org/jeps/jep-0124.html 獲得。

  1. 開啟 httpbind.conf

    如需尋找此檔案的詳細資訊,請參閱 httpbind.conf 檔案位置

  2. httpbind.requests 參數設定為單一用戶端可傳送給閘道的同步運作請求最大數。

    預設值為 2。例如:


    httpbind.requests=2

    用戶端可向閘道發出的同步運作請求數。如果此參數的值小於用戶端請求的 JEP 124 hold 屬性值,此參數值將設定為 hold+1。不要將此參數設定為 1,因為這麼做會嚴重降低效能。如需 httpbind.hold 參數的詳細資訊,請參閱設定 XMPP/HTTP 閘道用戶端請求的 JEP 124 hold 屬性表 B–1

  3. 儲存並關閉 httpbind.conf

  4. 使用 Web 或應用程式伺服器提供的工具重新啟動閘道。

Procedure設定 XMPP/HTTP 閘道用戶端請求的 JEP 124 hold 屬性

開始之前

確定您熟悉 JEP 124 標準草案。如需詳細資訊,可從 http://www.jabber.org/jeps/jep-0124.html 獲得。

  1. 開啟 httpbind.conf

    如需尋找此檔案的詳細資訊,請參閱 httpbind.conf 檔案位置

  2. httpbind.hold 參數設定為您要閘道允許用戶端請求中 hold 屬性的最大值。

    預設值為 5。例如:


    httpbind.hold=5

    如果用戶端傳出的 hold 值大於閘道的 hold 值,則使用閘道的 hold 值。

  3. 儲存並關閉 httpbind.conf

  4. 使用 Web 或應用程式伺服器提供的工具重新啟動閘道。

Procedure指定 XMPP/HTTP 閘道所允許的用戶端不活動時間

  1. 開啟 httpbind.conf

    如需尋找此檔案的詳細資訊,請參閱 httpbind.conf 檔案位置

  2. httpbind.inactivity 參數設定為您要閘道終止閒置連線所經過的時間 (單位為秒)。

    預設值為 180 秒。例如:


    httpbind.inactivity=180

    如果用戶端在此時間內並未輪詢閘道,則閘道會終止連線。

  3. 儲存並關閉 httpbind.conf

  4. 使用 Web 或應用程式伺服器提供的工具重新啟動閘道。

Procedure設定 XMPP/HTTP 閘道的內容類型 HTTP 標頭

  1. 開啟 httpbind.conf

    如需尋找此檔案的詳細資訊,請參閱 httpbind.conf 檔案位置

  2. 如果用戶端在其初始請求中未指定內容類型,將 httpbind.content_type 參數設定為您要閘道使用的內容類型。

    預設值為 text/xml; charset=utf-8。例如:


    httpbind.content_type=text/xml; charset=utf-8
  3. 儲存並關閉 httpbind.conf

  4. 使用 Web 或應用程式伺服器提供的工具重新啟動閘道。

Procedure設定 XMPP/HTTP 閘道的往返時間延遲

往返時間延遲是一段以秒為單位的時間,也就是在閘道和用戶端之間往返逾時之外所允許的額外時間。這有助於說明網路延時。

  1. 開啟 httpbind.conf

    如需尋找此檔案的詳細資訊,請參閱 httpbind.conf 檔案位置

  2. 視需要設定 httpbind.round_trip_delay 參數。

    此值設定過高會降低效能。此值的單位為秒。預設值為 1 秒。例如:


    httpbind.round_trip_delay=1

    此值設定過高會降低效能。先考量您的一般網路延時,再變更此參數。

  3. 儲存並關閉 httpbind.conf

  4. 使用 Web 或應用程式伺服器提供的工具重新啟動閘道。

Procedure設定 XMPP/HTTP 閘道將回應傳送給用戶端的預設時間

  1. 開啟 httpbind.conf

    如需尋找此檔案的詳細資訊,請參閱 httpbind.conf 檔案位置

  2. 視需要設定 httpbind.wait_time 參數。

    保證用戶端會在您以此參數設定的時間內得到 XMPP/HTTP 閘道回應。在設定此參數時,請考量您的網路速度。請勿將此值設定過低,否則 XMPP/HTTP 閘道不可能及時傳送請求。

    此值的單位為秒。預設值為 120 秒。例如:


    httpbind.wait_time=120

    如果為此用戶端設定的值大於閘道的值,則會使用閘道等待時間。

  3. 儲存並關閉 httpbind.conf

  4. 使用 Web 或應用程式伺服器提供的工具重新啟動閘道。

Procedure配置 Instant Messaging 閘道池中的 XMPP/HTTP 閘道

  1. 開啟 httpbind.conf

    如需尋找此檔案的詳細資訊,請參閱 httpbind.conf 檔案位置

  2. 將閘道配置為具有 Instant Messaging 閘道池之部署的一部分:

    1. httpbind.pool.support 參數設定為 true


      httpbind.pool.support=true
    2. httpbind.pool.nodeId 參數設定為完整的閘道 URL。

      URL 會做為閘道的 nodeId。此 nodeId 在伺服器池中必須唯一。閘道使用此 nodeId 來判定它是否必須為收到的請求服務,或將請求轉送到池中的另一個閘道。

  3. 若要將閘道配置為不在閘道池中運作,請將 httpbind.pool.support 參數設定如下:


    httpbind.pool.support=false
  4. 儲存並關閉 httpbind.conf

  5. 使用 Web 或應用程式伺服器提供的工具重新啟動閘道。

Procedure配置所支援 XMPP/HTTP 閘道網域的金鑰 ID 清單

  1. 開啟 httpbind.conf

    如需尋找此檔案的詳細資訊,請參閱 httpbind.conf 檔案位置

  2. httpbind.config 參數設為您要閘道使用的 ID 清單。

    對於每個網域,您需要為此參數指定不同的 ID。例如:


    httpbind.config=gwdomain-id
    

    其中,gwdomain-id 是您要為網域使用的識別碼。

    例如:


    httpbind.config=siroe.com
  3. 對於每個您指定的 gwdomain-id,將以下參數新增至 httpbind.conf 檔案:


    gwdomain-id.domain=domain-name
    gwdomain-id.hosts=gateway-host
    gwdomain-id.componentjid=component-jid
    gwdomain-id.password=password
    

    其中:

    • gwdomain-id 是為上一個步驟中的 httpbind.config 內的閘道所指定的 ID。

    • domain-name 是識別的閘道在其中執行的網域。

    • gateway-host 是完全合格網域名稱 (FQDN) 以及支援此網域的閘道主機連接埠號碼清單,以逗號或空格分隔。

    • component-jid 是閘道的元件 JID。

    • password 是識別的閘道的密碼。

    例如,如果將 gwdomain-id 設為 siroe


    siroe.domain=siroe.com
    siroe.hosts=gateway.siroe.com:5222
    siroe.componentjid=http.gateway.siroe.com
    siroe.password=gatewaypassword

    如需這些關鍵參數的詳細資訊,請參閱httpbind.config 的閘道網域 ID 鍵值參數

  4. 儲存並關閉 httpbind.conf

  5. 使用 Web 或應用程式伺服器提供的工具重新啟動閘道。

Procedure配置 Instant Messaging XMPP/HTTP 閘道以使用非預設配置檔案

  1. 在部署 Instant Messenger 資源檔案的 Web 容器上,編輯 web.xml

    使用您的 Web 容器工具編輯此檔案。

  2. httpbind.config.file 參數的值變更為您要閘道使用的配置檔案位置。

使用 StartTLS 確保 XMPP/HTTP 閘道和 Instant Messaging 伺服器之間的通訊安全

XMPP/HTTP 閘道僅支援 StartTLS 進行安全通訊。如果多重訊號組合器配置為使用舊有 SSL,您需要將閘道配置為直接與伺服器連線,略過多重訊號組合器。閘道會一直嘗試使用 StartTLS (如果可用)。如需詳細資訊,請參閱第 12 章, 使用 TLS 與舊有 SSL 為 Instant Messaging 提供安全性

管理 XMPP/HTTP 閘道記錄

您可以配置 XMPP/HTTP 閘道的記錄層級,完全啟用或停用記錄,並變更閘道記錄檔案或閘道記錄配置檔案的位置,如以下各節所述:

如需 Instant Messaging 所支援 log4j 格式的詳細資訊,參見 Apache Logging Services 網站

Procedure啟用或停用 XMPP/HTTP 閘道記錄

啟用或停用閘道記錄的方法有兩種:

在大多數情況下,您應該修改 httpbind_log4j.conf 檔案本身中的配置,保留將 httpbind.log4j.config 參數設定為 httpbind_log4j.conf 檔案的位置。此程序描述如何修改 httpbind_log4j.conf 檔案內的配置。

  1. 開啟 httpbind_log4j.conf 檔案。

    此檔案儲存於您在 httpbind.conf 檔案中所指定的位置,作為 httpbind.log4j.config 參數的值。依預設,此檔案儲存於預設 Instant Messaging 實例下的下列目錄:


    im-cfg-base/httpbind_log4j.conf
  2. 若要停用閘道記錄,請將 log4j.logger.gateway 參數設定如下:


    log4j.logger.gateway=OFF
    
  3. 若要啟用記錄,請將 log4j.logger.gateway 參數設定為所需的記錄層級。

    例如:


    log4j.logger.gateway=ERROR
    

    如需您可使用的有效記錄層級清單,請參閱表 13–1

  4. 儲存並關閉 httpbind_log4j.conf

Procedure變更 XMPP/HTTP 閘道記錄配置檔案位置

  1. 開啟 httpbind.conf

    如需尋找此檔案的詳細資訊,請參閱 httpbind.conf 檔案位置

  2. httpbind.log4j.config 參數值設定為 XMPP/HTTP 閘道記錄配置檔案的位置。

  3. 儲存並關閉 httpbind.conf

  4. 使用 Web 或應用程式伺服器提供的工具重新啟動閘道。

ProcedureLinux: 安裝或升級後設定 XMPP/HTTP 閘道記錄檔案位置

在 Linux 上,當您安裝並配置 XMPP/HTTP 閘道後,您需要修改 httpbind_log4j.conf 中 XMPP/HTTP 閘道的預設記錄檔案位置。

  1. 開啟 httpbind_log4j.conf 檔案。

    此檔案儲存於您在 httpbind.conf 檔案中所指定的位置,作為 httpbind.log4j.config 參數的值。依預設,此檔案儲存於預設 Instant Messaging 實例下的下列目錄:


    im-cfg-base/httpbind_log4j.conf
  2. log4.appender.appender_ID.file 參數值設定為記錄檔案的儲存位置。

Procedure變更 XMPP/HTTP 閘道記錄檔案位置

開始之前

請確定您熟悉 Apache Logging Services 網站中所述的 log4j 語法和一般實作。

  1. 開啟 httpbind_log4j.conf

    此檔案儲存於您在 httpbind.conf 檔案中所指定的位置,作為 httpbind.log4j.config 參數的值。依預設,此檔案儲存於預設 Instant Messaging 實例下的下列目錄:


    im-cfg-base/httpbind_log4j.conf
  2. log4j.appender. appender-ID 參數值設定為您要儲存記錄檔案的位置。

  3. 儲存並關閉 httpbind_log4j.conf

  4. 重新啟動 Web 容器。

Procedure使用 XMPP/HTTP 閘道非預設記錄檔案位置

如果選擇使用非預設的記錄位置,您需要修改 httpbind_log4j.conf 中 XMPP/HTTP 閘道的預設記錄檔案位置。

  1. 開啟 httpbind_log4j.conf 檔案。

    此檔案儲存於您在 httpbind.conf 檔案中所指定的位置,作為 httpbind.log4j.config 參數的值。依預設,此檔案儲存於預設 Instant Messaging 實例下的下列目錄:


    im-cfg-base/httpbind_log4j.conf
  2. log4.appender.appender_ID.file 參數值設定為記錄檔案的儲存位置。

Procedure設定 XMPP/HTTP 閘道記錄層級

開始之前

請確定您熟悉 Apache Logging Services 網站中所述的 log4j 語法和一般實作。

  1. 開啟 httpbind_log4j.conf

    此檔案儲存於您在 httpbind.conf 檔案中所指定的位置,作為 httpbind.log4j.config 參數的值。依預設,此檔案儲存於預設 Instant Messaging 實例下的下列目錄:


    im-cfg-base/httpbind_log4j.conf
  2. log4j.logger.gateway 參數設定為所需的記錄層級。

    例如:


    log4j.logger.gateway=ERROR
    

    如需您可使用的有效記錄層級清單,請參閱表 13–1

XMPP/HTTP 閘道 log4j 記錄配置檔案語法

如需 log4j 語法和一般實作的詳細資訊,請參閱 Apache Logging Services 網站。閘道記錄配置檔案語法如下:


log4j.logger.gateway=logging-level, Appender-ID
# DEFAULT TO RollingFileAppender
log4j.appender.Appender-ID=org.apache.log4j.RollingFileAppender
log4j.appender.Appender-ID.file=log-dir/httpbind.log
log4j.appender.Appender-ID.append=true|false
log4j.appender.Appender-ID.maxBackupIndex=7
log4j.appender.Appender-ID.maxFileSize=max-log-file-size
log4j.appender.Appender-ID.layout=org.apache.log4j.PatternLayout
log4j.appender.Appender-ID.layout.ConversionPattern=log-entry-syntax

範例 10–1 XMPP/HTTP 閘道記錄配置檔案 (httpbind_log4j.conf )


log4j.logger.gateway=ERROR, A1
# DEFAULT TO RollingFileAppender
log4j.appender.A1=org.apache.log4j.RollingFileAppender
# log4j.appender.A1.file=$(logdir)/gateway.log
log4j.appender.A1.file=/tmp/gatewaylog
log4j.appender.A1.append=true
log4j.appender.A1.maxBackupIndex=7
log4j.appender.A1.maxFileSize=5mb
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=[%d{DATE}] %-5p %c [%t] %m%n

第 11 章 沒有管理 Instant Messaging 的 LDAP 存取配置

本章在以下小節中描述 Instant Messaging 如何在有和沒有 Access Manager 的部署中使用 LDAP。

簡介 Instant Messaging 使用 LDAP 的方式

Instant Messaging 的所有部署均需要目錄伺服器。在沒有 Sun JavaTM System Access Manager 的部署中,Instant Messaging 伺服器使用目錄伺服器執行一般使用者認證並搜尋一般使用者。

在有 Sun Java System Portal Server 的部署中,Instant Messaging 伺服器使用 Sun Java System Portal Server 使用的目錄。安裝在 Access Manager 部署環境中時,Instant Messaging 伺服器使用 Access Manager 使用的目錄來搜尋一般使用者,而不用於一般使用者認證。在 Access Manager 部署中,Access Manager 執行認證。

如果您使用 LDAP 目錄維護您的使用者名稱空間,預設配置會做出以下有關此目錄所使用模式的假設:

您可以編輯 iim.conf 檔案以變更這些預設設定。請參閱iim.conf 檔案語法


注意 – 注意 –

有些使用者屬性可能包含機密的資訊。確定您的目錄存取控制已設為防止無權限的使用者進行未授權存取。如需詳細資訊,請參閱您的目錄文件。


匿名搜尋目錄

Instant Messaging 需要能夠搜尋目錄以正確運作。如果您的目錄是配置可以讓匿名使用者搜尋,則 Instant Messaging 就可以搜尋目錄。 如果該目錄無法讓匿名使用者讀取或搜尋,您必須採取其他步驟,以至少具有讀取此目錄之存取權限的使用者 ID 的憑證來配置 iim.conf 檔案。這些憑證包含:

Procedure以特定的一般使用者身份啟用伺服器以執行目錄搜尋

  1. iim.conf 中識別下列參數值:

    • iim_ldap.usergroupbinddn - 指定辨別名稱 (dn) 以用於連結至要搜尋的目錄。

    • iim_ldap.usergroupbindcred - 指定密碼以使用辨別名稱 (dn)。

    例如:

    iim_ldap.usergroupbinddn="cn=iim server,o=i-zed.com"

    iim_ldap.usergroupbindcred=secret


    備註 –

    您不必使用具有寫入層級權限的管理員層級憑證,因為只需要網域樹狀結構的讀取權限。因此,如果有 LDAP 使用者擁有讀取層級權限,則改用其憑證。這是較安全的替代方法,因為它不會強迫您散佈管理員層級憑證。


    如需找到並修改 iim.conf 的說明,請參閱iim.conf 檔案語法

  2. 在有 Sun Java System Access Manager 的部署中,如果匿名使用者無法搜尋目錄,則:

    • 設定 iim_ldap.useidentityadmin 配置參數為 true

    • 您也可以刪除或註釋下列配置參數:

      • iim_ldap.usergroupbinddn

      • iim_ldap.usergroupbindcred

  3. 編輯 iim.conf

    如需找到並修改 iim.conf 的說明,請參閱iim.conf 檔案語法

    如果 iim_ldap.usergroupbinddniim_ldap.usergroupbindcred 參數沒有出現在 iim.conf 檔案中,您可以將它們新增到檔案中的任意位置。

配置 Instant Messaging 使用 LDAP 動態群組

在 Sun Java System Directory Server 和某些其他 LDAP 伺服器中,動態群組會根據一般使用者的 DN 來篩選一般使用者,並將他們包含在單一群組中。動態群組在 Directory Server 中由 groupOfUrls 定義的物件類別。

若要啟用一般使用者以在搜尋結果中檢視動態群組,並將之新增至其連絡清單,您必須在搜尋結果中包含 groupOfUrls 物件。

必須對 iim.conf 進行以下修改:

Procedure配置 Instant Messaging 使用動態群組

  1. 開啟 iim.conf

    如需找到並修改 iim.conf 的說明,請參閱iim.conf 檔案語法

  2. iim.conf 中加入以下三行:


    iim_ldap.usergroupbynamesearchfilter=(|(&(|
    (objectclass=groupofuniquenames)
    (objectclass=groupofurls)))
    (cn={0}))(&(objectclass=inetorgperson)
    (cn={0})))
    
    iim_ldap.groupbrowsefilter=(|
    (objectclass=groupofuniquenames)
    (objectclass=groupofurls))
    
    iim_ldap.groupclass=groupOfUniqueNames,groupOfURLs

    單一行內不要包含分行符號。屬性和 objectclass 名稱均可配置。根據預設,memberOfUrls 屬性用於動態群組的成員身份屬性。如果您想要使用屬性名稱而非 memberOfUrls,可設定 iim_ldap.groupmemberurlattr 選項為您想要使用的屬性名稱。

第 12 章 使用 TLS 與舊有 SSL 為 Instant Messaging 提供安全性

Instant Messaging 支援 TLS (傳輸層安全性) 與舊有 SSL (安全傳輸層) 以提供安全通訊。本章下列各節介紹如何使用這些通訊協定來設定 Instant Messaging 安全性:

在 Instant Messaging 中使用 TLS 與舊有 SSL 的摘要

Instant Messaging 為實現用戶端對伺服器與伺服器對伺服器的加密通訊,以及伺服器間的憑證式認證,會針對傳輸層安全性 (TLS) 1.0 通訊協定使用 startTLS 延伸。此外,Instant Messaging 可實作舊有的 SSL 協定 (3.0 版) 以支援 Instant Messenger 與多重訊號組合器間進行加密通訊 。後者會使用憑證來驗證用戶端所連線的伺服器身份,但不會使用憑證進行認證。

多重訊號組合器與伺服器間的傳輸通訊不安全。當您的用戶端對伺服器通訊使用 TLS 時,多重訊號組合器僅會將位元組從用戶端來回傳送至伺服器,但不執行任何加密或解密。

TLS 與 SSL 完全相容,且包含所有必要的 SSL 功能。TLS 與 SSL 的作用類似於 XMPP 與 HTTP 應用程式層下的通訊協定層。


注意 – 注意 –

如果您將多重訊號組合器設定為僅使用舊有 SSL,Instant Messenger 僅會使用 SSL 連線至多重訊號組合器,且會略過從伺服器傳回的關於 TLS 可用性的任何資訊。然而,如果您選擇讓多重訊號組合器使用 SSL,則應將所有 XMPP/HTTP 閘道實例配置為直接與伺服器通訊,而非透過多重訊號組合器通訊。閘道不支援舊有 SSL。允許透過舊有 SSL 連線至多重訊號組合器然後請求 TLS 連線的協力廠商用戶端這樣做。

此外,多重訊號組合器會透過不安全的傳輸連線至伺服器。如果您想確保點對點間通訊的安全性 (透過多重訊號組合器與伺服器通訊的用戶端),請使用 TLS 而非舊有 SSL。


您必須安裝有 Java 1.5 (最低) Instant Messaging 伺服器才能使用 TLS。

如需有關 XMPP 中 TLS 與 StartTLS 的資訊,請參閱 RFC 3920 中「TLS 用法」的Extensible Messaging and Presence Protocol: Core。如需憑證、SSL 與 TLS 的摘要,請參閱「Sun Java System Application Server Enterprise Edition 8.2 Administration Guide」中的「Introduction to Certificates and SSL」。本節中的程序假設您正使用 Sun JavaTM System Application Server 來產生憑證。如果您正在使用其他的 Web 容器,您會需要參考該 Web 容器的文件,以取得產生金鑰庫與憑證的特定指引。

為 Instant Messaging 伺服器設定 TLS

要為 Instant Messaging 伺服器對伺服器與用戶端對伺服器通訊啟用 TLS,必須遵循下列步驟:

  1. 使用 keytool 公用程式建立 Java 金鑰庫 (JKS) 與私密金鑰。

    如需關於 keytool 公用程式的摘要,請參閱「Sun Java System Application Server Enterprise Edition 8.2 Administration Guide」中的「Tools for Managing Security」。如需使用 Sun Java System Application Server 產生 JKS 的詳細資訊,請參閱「Sun Java System Application Server Enterprise Edition 8.2 Administration Guide」中的「Working with Certificates and SSL」

  2. 使用私密金鑰來產生 Instant Messaging 伺服器的伺服器憑證。

    如需說明,請參閱「Sun Java System Application Server Enterprise Edition 8.2 Administration Guide」中的「Generating a Certificate Using the keytool Utility」

  3. 取得認證機構 (CA) 簽署的 Instant Messaging 伺服器憑證。

    如需說明,請參閱「Sun Java System Application Server Enterprise Edition 8.2 Administration Guide」中的「Signing a Digital Certificate Using the keytool Utility」。在適用處,使用 Instant Messaging 來取代 Application Server。

  4. 重新啟動 Instant Messaging 伺服器。

    如需詳細資訊,請參閱啟動 Instant Messaging 元件

  5. 取得 CA 的根憑證。

    請連絡您的 CA 以取得關於獲取 CA 根憑證的指引。

  6. 將憑證匯入金鑰庫。

    您可如「Sun Java System Application Server Enterprise Edition 8.2 Administration Guide」中的「Using the keytool Utility」中所述,使用 keytool 公用程式,將 CA 根憑證與簽署的伺服器憑證匯入至金鑰庫。

  7. 藉由設定 iim.conf 中的適當參數,在伺服器中啟動 TLS。

    如需說明,請參閱在 Instant Messaging 伺服器上啟動 TLS

  8. 如果要實現伺服器對伺服器的 TLS 通訊,您需要對每個需要 TLS 通訊的伺服器,重複這些步驟。您不需要執行任何動作來將 Instant Messenger 配置為使用 TLS。您也不需要為多重訊號組合器配置 TLS,然而如果您想使用 TLS 的話,不得將多重訊號組合器設定為使用舊有 SSL 。

  9. 如果您正在部署中使用 XMPP/HTTP 閘道,請將閘道配置為直接與 Instant Messaging 伺服器而非透過多重訊號組合器來通訊。

如果您正在使用 Sun Java System Application Server,則在「Sun Java System Application Server Enterprise Edition 8.2 Administration Guide」中的「Working with Certificates and SSL」中記錄了步驟 1 至5。在在 Instant Messaging 伺服器上啟動 TLS中描述了步驟 6。

在 Instant Messaging 伺服器上啟動 TLS

您必須先按照為 Instant Messaging 伺服器設定 TLS中所述建立 JKS、取得與安裝簽署的伺服器憑證,並信任 CA 的憑證,才能在伺服器上啟動 TLS。當您想實現伺服器對伺服器和/或用戶端對伺服器的 TLS 通訊時,可在伺服器上啟動 TLS。

表 12–1 列出在 Instant Messaging 伺服器中啟動 TLS 的 iim.conf 參數。其中也包含這些參數的說明與預設值。

表 12–1 Instant Messaging 伺服器 TLS 配置參數

參數 

預設值 

說明 

iim_server.sslkeystore

無 

包含伺服器 Java 金鑰庫 (JKS) 的相對路徑與檔案名稱。例如:


/im-cfg-base/server-keystore.jks

iim_server.keystorepasswordfile

sslpassword.conf

包含擁有金鑰庫密碼之檔案的相對路徑與名稱。此檔案應該包含下列指令行: 

Internal (Software) Token:password

其中 password 是保護金鑰資料庫的密碼。

iim_server.requiressl

false

如果為 true,則在設定初始串流階段作業後,伺服器會終止不請求 TLS 連線的任何連線。

iim_server.trust_all_cert

false

如果此值是 true,則伺服器會信任所有的憑證,包含過期與自我簽署的憑證,並且也會將憑證資訊新增至記錄檔案。如果是 false,則伺服器不會記錄憑證資訊,並且僅會信任 CA 所簽署的有效憑證。

Procedure在 Instant Messaging 伺服器中啟動 TLS 通訊

使用下列方式執行此程序,配置 Instant Messaging 伺服器以進行 TLS 安全通訊:

開始之前

請確定您已按照為 Instant Messaging 伺服器設定 TLS所述建立 JKS、已取得並安裝伺服器憑證,以及將伺服器配置為信任 CA 憑證。

對於伺服器對伺服器 TLS 通訊,您必須在每個想要配置使用 TLS 的伺服器上完成此程序。

  1. iim.conf 中增加下列參數值。

    如果在 iim.conf 中尚沒有參數,請增加它們。


    iim_server.sslkeystore=server-keystore.jks
    iim_server.keystorepasswordfile=sslpassword.conf
    

    現在伺服器會以可透過 TLS 通訊的資訊,來回應來自任何用戶端或其他 Instant Messaging 伺服器的連線請求。正在請求的用戶端或伺服器,會接著選擇是否要透過 TLS 建立安全的連線。

  2. 如果您想要伺服器要求用戶端的所有連線都是 TLS 連線,請將下列參數增加至 iim.conf


    iim_server.requiressl=true

    如果您將此參數設定為 true,則伺服器會終止與任何不支援 TLS 的用戶端、遠端或對等伺服器之間的連線。使用此參數要求用戶端與伺服器之間進行 TLS 安全通訊。

    如需關於伺服器對伺服器通訊的詳細資訊,請參閱第 8 章, 聯合部署多個 Instant Messaging 伺服器

  3. 如果您想要求特定遠端或對等伺服器進行 TLS 通訊,請將下列參數增加至 iim.conf


    iim_server.coserver1.requiressl=true

    為每個您想要求 TLS 通訊的協同伺服器設定此參數。

    如果您將 iim_server.requiressl 設定為 true,則伺服器會要求任何與其通訊的伺服器使用 TLS 連線。在此例中,您不需要為特定協同伺服器設定此參數。

  4. (可選擇) 如果您想要伺服器信任所有其所收到的憑證,並將憑證資訊新增至記錄檔案,請將下列參數新增至 iim.conf


    iim_server.trust_all_cert=true

    注意 – 注意 –

    您可能需要在實際操作部署前,先使用此功能來測試部署。然而,通常您不應在已部署的系統上這麼做,因為這會造成嚴重的安全風險。如果此值是 true,則伺服器會信任所有的憑證,包含過期與自我簽署的憑證,並且也會將憑證資訊增加至記錄檔案。如果是 false,則伺服器不會記錄憑證資訊,且僅會信任 CA 所簽署的有效憑證。


  5. 使用 imadmin 重新整理伺服器配置。


    imadmin refresh server
    
  6. 驗證 TLS 是否運作正常。

    您可以幾種方式來這麼做,例如遵循呼叫 Instant Messenger 的安全版本中的步驟來執行。


範例 12–1 iim.conf 中的 TLS 配置

以下是 iim.conf 檔案範例區段,其中包含為伺服器對伺服器、用戶端對伺服器通訊所需要的 TLS 配置。此範例中的參數值與您所部署的會不一樣。


! Server to server communication port.
iim_server.port = "5269"
! Should the server listen on the server to server
! communication port
iim_server.useport = "True”
iim_server.coservers=coserver1
iim_server.coserver1.serverid=Iamcompany22
iim_server.coserver1.password=secretforcompany22
iim_server.coserver1.host=iim.i-zed.com:5269
iim_server.serverid=Iami-zed
iim_server.password=secret4i-zed
iim_server.trust_all_cert=true
iim_server.sslkeystore=/var/im/server_keystore.jks
iim_server.keystorepasswordfile=/var/im/sslpassword.conf

為多重訊號組合器與 Instant Messenger 設定舊有 SSL

如果您正在使用的 Instant Messaging 客戶端不支援 TLS ,用戶端對多重訊號組合器之間的通訊則仍可使用 SSL,但不能使用 TLS。如果您將多重訊號組合器配置為使用 SSL,則無法讓用戶端對伺服器之間的連線使用TLS。所有多重訊號組合器與伺服器間的通訊都會是以明碼文字形式進行的不安全傳輸。

如果您在多重訊號組合器上設定舊有 SSL,並使用 XMPP/HTTP 閘道,則您必須將閘道配置為直接與伺服器而非透過多重訊號組合器進行通訊。閘道不支援舊有 SSL。

要啟用多重訊號組合器與 Instant Messenger 間的 SSL 通訊,需要遵循下列步驟:

  1. 為 Instant Messaging 多重訊號組合器向 CA 請求 SSL 憑證

  2. 安裝憑證

  3. 在多重訊號組合器與 Instant Messenger 間啟用舊有 SSL

  4. 在 Instant Messaging 伺服器上啟動 TLS

  5. 呼叫 Instant Messenger 的安全版本

為 Instant Messaging 多重訊號組合器向 CA 請求 SSL 憑證

在多重訊號組合器中啟用 SSL,您需要請求憑證。

Procedure為 Instant Messaging 多重訊號組合器請求憑證

此節假設您正在使用 Sun Java System Web Server 或 Sun Java System Application Server 做為您的 Web 容器來請求憑證。

多重訊號組合器會使用 NSS 來管理憑證,因此您可使用 NSS 公用程式來建立、管理與使用憑證及憑證資料庫。

  1. 在網頁瀏覽器中,鍵入下列 URL 來啟動 Web 容器的管理伺服器:


    http://hostname.domain-name:administration-port
    

    會顯示一個視窗,詢問您的使用者名稱與密碼。

  2. 輸入在安裝 Web Server 或 Application Server 期間指定的管理使用者名稱與密碼。

    [管理伺服器] 頁面隨即出現。

  3. 建立單獨的 Web Server 或 Application Server 實例。

    如需安裝多個 Application Server 實例的詳細資訊,請參閱「Sun Java System Application Server Enterprise Edition 8.2 Installation Guide」。如需安裝多個 Web Server 實例的詳細資訊,請參閱「Sun Java Communications Suite 5 Installation Guide」

  4. 建立信任資料庫以儲存公開和私人金鑰,也稱之為金鑰對檔案。

    會使用金鑰對檔案進行 SSL 加密。

    如需建立信任資料庫的資訊,請參閱「Sun Java System Application Server Enterprise Edition 8.2 Administration Guide」中的第 9 章「Configuring Security」以取得關於 Application Server 的資訊,以及「Sun Java System Web Server 7.0 Administrator’s Guide」中的第 6 章「Certificates and Keys」以取得關於 Web Server 的資訊。

  5. 向 CA 請求憑證。

    如需請求憑證的詳細資訊,請參閱「Sun Java System Application Server Enterprise Edition 8.2 Administration Guide」中的第 9 章「Configuring Security」以取得關於 Application Server 的資訊,以及「Sun Java System Web Server 7.0 Administrator’s Guide」中的第 6 章「Certificates and Keys」以取得關於 Web Server 的資訊。

安裝憑證

在您收到認證機構所簽署的伺服器憑證後,需要安裝憑證並建立資料庫以實現安全連線。

Procedure為 Instant Messaging 多重訊號處理器安裝憑證

  1. 在網頁瀏覽器中,鍵入下列 URL 來啟動管理伺服器:


    http://hostname.domain-name:administration-port
    

    會顯示一個視窗,詢問您的使用者名稱與密碼。

  2. 輸入在安裝 Web Server 或 Application Server 期間指定的管理使用者名稱與密碼。

    [管理伺服器] 頁面隨即出現。

  3. 安裝該伺服器憑證。

    如需安裝憑證的詳細資訊,請參閱http://docs.sun.com中的 Web Server 或 Application Server 的產品文件。

  4. 變更至您的 Web Server 或 Application Server 中的 /alias 目錄。

  5. 將資料庫檔案從 /alias 目錄複製至 Instant Messaging 伺服器的 im-cfg-base 目錄。

    例如,在 Solaris 上:


    cp https-serverid-hostname-cert8.db /etc/opt/SUNWiim/default/config/cert8.db
    

    cp https-serverid-hostname-key3.db /etc/opt/SUNWiim/default/config/key3.db
    

    cp secmod.db /etc/opt/SUNWiim/default/config/secmod.db
    

    而在 Linux 上:


    cp https-serverid-hostname-cert8.db /etc/opt/sun/im/default/config/cert8.db
    

    cp https-serverid-hostname-key3.db /etc/opt/sun/im/default/config/key3.db
    

    cp secmod.db /etc/opt/sun/im/default/config/secmod.db
    

    備註 –

    您需要允許多重訊號處理器所使用的系統使用者擁有「讀取」cert7.db key3.dbsecmod.db 檔案的權限。此外,如果您已建立多個 Instant Messaging 實例,則 /default 目錄名稱會視實例而不同。


    如需 im-cfg-base 的預設位置,請參閱表 3–1

  6. 變更至您在多重訊號處理器主機上的 im-cfg-base

    如需找到 im-cfg-base 的資訊,請參閱Instant Messaging 伺服器目錄結構

  7. 使用您所選的文字編輯程式來建立名為 sslpassword.conf 的檔案。

  8. 將下列內容輸入 sslpassword.conf


    Internal (Software) Token:password
    

    其中 password 是當您建立信任資料庫時所指定的密碼。

  9. 儲存並關閉 sslpassword.conf

  10. 請確定所有 Instant Messenger 一般使用者都有對 sslpassword.conf 的「所有權」與「讀取」權限。

  11. 重新啟動多重訊號組合器。

  12. 驗證 SSL 是否運作正常。

    您可以幾種方式來這麼做,例如遵循呼叫 Instant Messenger 的安全版本中的步驟來執行。

  13. 以管理員身份登入 Web Server 或 Application Server。

  14. 移除您請求憑證時所建立的伺服器實例。

在多重訊號組合器與 Instant Messenger 間啟用舊有 SSL

您可藉由修改 iim.conf 中的參數,接著使用 Instant Messenger 用戶端安全版本連線至多重訊號組合器,為用戶端對多重訊號組合器的通訊啟用 SSL。

表 12–2 列出在 iim.conf 中用於在 Instant Messenger 與多重訊號組合器間啟用 SSL 的參數。其中也列出這些參數的說明與預設值。

表 12–2 Instant Messaging 多重訊號組合器 SSL 參數

參數 

預設值 

說明 

iim_mux.usessl

off

如果數值設定為 on,則在交換任何應用程式資料前,多重訊號組合器需要在每個它接受的連線中進行 SSL 訊號交換。

iim_mux.secconfigdir

Solaris:/etc/opt/SUNWiim/default/config

Linux:/etc/opt/sun/im/default/config

此目錄包含金鑰和憑證資料庫。它通常包含安全模組資料庫。此外,如果您已建立多個 Instant Messaging 實例,則 /default 目錄名稱會視實例而不同。如需詳細資訊,請參閱從單次 Instant Messaging 安裝中建立多個實例

iim_mux.keydbprefix

(空字串) 

此值應該包含金鑰資料庫檔名前置。金鑰資料庫檔名必須以 key3.db 結尾。

如果金鑰資料庫包含前綴,例如 This-Database-key3.db,則此參數的值為 This-Database

iim_mux.certdbprefix

(空字串) 

此值應該包含憑證資料庫檔名前置。憑證資料庫檔名必須以 cert7.db 結尾。

如果憑證資料庫包含前綴,例如 Secret-stuff-cert7.db,則此參數值為 Secret-stuff

iim_mux.secmodfile

secmod.db

此值應該包含安全模組檔案的名稱。 

iim_mux.certnickname

Multiplexor-Cert

此值應該包含您在安裝憑證時,您所輸入的憑證名稱。 

此憑證名稱區分大小寫。 

iim_mux.keystorepasswordfile

sslpassword.conf

此值應該包含含有金鑰資料庫密碼的相關路徑和檔案名稱。此檔案應該包含下列指令行: 

Internal (Software) Token:password

其中 password 是保護金鑰資料庫的密碼。

Procedure在 Instant Messenger 與多重訊號組合器間啟用 SSL

  1. 開啟 iim.conf

    如需找到並修改 iim.conf 的說明,請參閱iim.conf 檔案語法

  2. 表 12–2 中的值增加至 iim.conf 中的多重訊號組合器配置參數。


範例 12–2 iim.conf 中的舊有 SSL 多重訊號組合器配置

下列是含有多重訊號組合器配置參數的 iim.conf 檔案範例:


! IIM multiplexor configuration
! =============================
!
! Multiplexor specific options

! IP address and listening port for the multiplexor.
! WARNING: If this value is changed, the port value of ’-server’
! argument in the client’s im.html and im.jnlp files should 
! also be changed to match this.
iim_mux.listenport = "siroe.com:5222"

! The IM server and port the multiplexor talks to.
iim_mux.serverport = "siroe.com:45222"

! Number of instances of the multiplexor.
iim_mux.numinstances = "1"

! Maximum number of threads per instance
iim_mux.maxthreads = "10"

! Maximum number of concurrent connections per multiplexor process
iim_mux.maxsessions = "1000"

                         
iim_mux.usessl = "on"
iim_mux.secconfigdir = "/etc/opt/SUNWiim/default/config"
iim_mux.keydbprefix = "This-Database"
iim_mux.certdbprefix = "Secret-stuff"
iim_mux.secmodfile = "secmod.db"
iim_mux.certnickname = "Multiplexor_Cert"
iim_mux.keystorepasswordfile = "sslpassword.conf"

呼叫 Instant Messenger 的安全版本

Instant Messenger 會自動支援 TLS。如果您已如在 Instant Messaging 伺服器上啟動 TLS所述,將伺服器配置為使用 TLS,則當 Instant Messenger 連線至伺服器時,伺服器會與支援 TLS 階段作業的用戶端通訊。接著 Instant Messenger 就可請求變更連線以使用 TLS。

您可藉由從網頁瀏覽器存取 imssl.htmlimssl.jnlp 來呼叫舊有 SSL 版本。這些檔案位於資源目錄下,也就是儲存所有 Instant Messenger 資源的基底目錄下。

可以將這些 applet 描述元檔案的連結新增到 index.html 檔。

一旦您已為多重訊號組合器配置舊有 SSL,或為伺服器配置 TLS,就可驗證 Instant Messenger 用戶端是否已建立安全的連線。

Procedure驗證安全的 Instant Messenger 連線

  1. 請登入至 Instant Messenger。

    如果您正在使用舊有 SSL,請從您的網頁瀏覽器存取 imssl.htmlimssl.jnlp。如果您正在使用 TLS,請正常存取用戶端。如需相關資訊,請參閱呼叫 Instant Messenger

    如果 TLS 可用,且如果未將多重訊號組合器設定為使用舊有 SSL 的話,Instant Messenger 會一直使用 TLS。

  2. 請確定在 Instant Messenger 主視窗中可看見鎖定圖示。

    當 Instant Messenger 正在使用安全的傳輸如 SSL 或 TLS 時,鎖定圖示會顯示於主視窗的右下角。

第 13 章 管理 Instant Messaging 的記錄

Instant Messaging 建立記錄檔以記錄事件、各個軟體元件的相關狀態、系統錯誤,和伺服器、多重訊號組合器、行事曆代理程式、監視程式與 Instant Messenger 的其他部分。藉由檢視記錄檔,您可以監控伺服器作業的許多部份。本節於下列主題中提供關於記錄的資訊:

如需 XMPP/HTTP 閘道記錄的資訊,請參閱管理 XMPP/HTTP 閘道記錄。此外,您可以根據需求收集 Instant Messenger 的記錄資料。如需詳細資訊,請參閱管理 Instant Messenger 記錄

Instant Messaging 記錄簡介

Instant Messaging 提供兩種產生記錄檔案的方法:使用 log4j,若沒有 log4j 則指定 iim.conf 中的參數。Log4j 樣式記錄可供所有伺服器實例使用,包括重新導向伺服器、行事曆代理程式、監視程式和 XMPP/HTTP 閘道,但不包括多重訊號組合器。

如需 XMPP/HTTP 閘道記錄的資訊,請參閱管理 XMPP/HTTP 閘道記錄。如需設定 Instant Messenger 記錄的資訊,請參閱管理 Instant Messenger 記錄


備註 –

iim.conf 參數式記錄機制在未來的版本中可能會取消。儘量使用 log4j。


您可以配置 Instant Messaging 伺服器、多重訊號組合器、行事曆代理程式、監視程式和 XMPP/HTTP 閘道的記錄層級。此外,使用 log4j,您便可以配置 Instant Messaging 只產生 XMPP 流量的個別記錄檔案。

如果您在一般系統維護時不是使用 log4j 樣式記錄,您必須定期檢閱並修剪記錄檔案,使其不會佔用太多磁碟空間。伺服器不會執行這個動作。

如需 log4j 的詳細資訊,請參閱 Apache Logging Services 網站

Instant Messaging 記錄檔案位置

您在安裝 Instant Messaging 後執行 configure 公用程式時指定的記錄檔案位置。一般而言,記錄檔案儲存在 im-runtime-base/log 中。請參閱Instant Messaging 伺服器目錄結構,以取得如何找到 im-runtime-base 的資訊。

如果您在部署中使用 log4j 產生記錄,那麼記錄程式也會使用您在配置期間指定的目錄做為儲存 log4j 記錄的基礎目錄。

Instant Messaging 元件記錄層級

維護錯誤記錄的層級或優先順序,定義為該記錄應該的詳細程度或冗長程度。優先順序愈高,意味著資訊愈不詳細,因為在記錄檔案中只會記錄高優先順序 (高嚴重性) 的事件。相反的,越低的優先順序表示越詳細,因為更多事件會記錄在記錄檔中。

無論您是使用 log4j 還是參數式記錄,您可以為每個元件分別設定不同的記錄層級。

表 13–1 描述這些元件的記錄層級。這些記錄層級是由 UNIX syslog 設備所定義的層級子集。

表 13–1 Instant Messaging 元件的記錄層級

層級 

說明 

FATAL

此優先等級在記錄檔中記錄最少的記錄詳細資訊。每當發生重大問題或重要情況時,會新增一個記錄到記錄檔中。如果發生 FATAL 問題,應用程式可能停止運作。 

ERROR

每當發生可回復的軟體錯誤情況或是偵測到網路錯誤,會新增一個記錄到記錄檔中。例如,當伺服器無法連接到客戶端或連接到另一台伺服器時。 

WARNING

每當偵測到使用者錯誤時,會新增一個記錄到記錄檔中。例如,當伺服器無法了解客戶端傳送的通訊時。 

INFO

每當發生重大的動作時,會新增一個記錄到記錄檔中。例如,當一般使用者成功登入或登出時。 

DEBUG

會在記錄檔中記錄此工作。此資訊僅對於除錯非常有用。在每個程序或工作中個別步驟的每個事件都會寫入記錄檔中,以幫助一般使用者在除錯應用程式時識別問題。 

當您選擇特定的記錄層級後,和此層級以及與所有較高和較低冗長層級對應的事件都會被記錄。

INFO 是伺服器的預設層級。ERROR 是多重訊號組合器、行事曆代理程式和監視程式記錄檔案的預設層級。


備註 –

如果您不是使用 log4j,且您將記錄層級指定為 DEBUG,您的記錄檔案會佔用更多的磁碟空間。監控並調整您的記錄檔以免佔用太多磁碟空間。


使用 Log4j 管理 Instant Messaging 記錄

當您安裝 Instant Messaging 時,Log4j 配置檔案的範本檔案 (log4j.conf.template ) 會安裝到 im-svr-base/lib 目錄中。當您在安裝後執行 configure 公用程式時,會使用範本在 im-cfg-base 目錄中建立 log4j 配置檔案 (log4j.conf)。此配置檔案用於決定儲存由 log4j 產生的記錄檔案的位置、各種元件使用的記錄層級、輸出語法,並決定要產生哪種記錄檔案。

本節在以下小節描述使用 log4j 記錄程式產生 Instant Messaging 記錄檔案:

log4j 記錄程式使用 Instant Messaging 元件記錄層級中所述的記錄層級。

如需 log4j 相關的詳細資訊,和記錄檔案配置層面的說明,例如大小、備份數目等,請參閱 Apache Logging Services 網站

Instant Messaging Log4j 配置檔案 (log4j.conf ) 的位置

您可以變更 log4j 配置檔案 log4j.conf 的位置,方法是修改 iim.conf 中的 iim.log4j.config 參數。如果您未指定此參數的值,記錄程式會查閱 im-cfg-base。如果記錄程式在該目錄中找不到 log4j 配置檔案,它會使用 iim.conf 記錄參數產生非 log4j 樣式的記錄。

如需如何找到 im-cfg-base 的資訊,請參閱Instant Messaging 伺服器目錄結構

Instant Messaging Log4j 記錄檔案語法

configure 公用程式會根據 log4j 配置檔案範本 (log4j.conf.template) 的內容產生 log4j 配置檔案 (log4j.conf )。範例 13–1 顯示 log4j 範本。在此範本中:


範例 13–1 Log4j 範本檔案


log4j.logger.xmppd=INFO, A1
# DEFAULT TO RollingFileAppender
log4j.appender.A1=org.apache.log4j.RollingFileAppender
log4j.appender.A1.file=${logdir}/xmppd.log
log4j.appender.A1.append=true
log4j.appender.A1.maxBackupIndex=7
log4j.appender.A1.maxFileSize=5mb
# More example appenders..
# Straight to console..
# log4j.appender.A1=org.apache.log4j.ConsoleAppender
# log4j.appender.A1.ImmediateFlush=true
# Rollover at midnight..
# log4j.appender.A1=org.apache.log4j.DailyRollingFileAppender
# log4j.appender.A1.DatePattern='.'yyyy-MM-dd
# log4j.appender.A1.file=${logdir}/xmppd.log
# log4j.appender.A1.ImmediateFlush=true
# log4j.appender.A1.append=true
# Send to SMTP..
# log4j.appender.A1=org.apache.log4j.SMTPAppender

# PATTERN LAYOUT AND OPTIONS
# DEFAULT TO PatternLayout
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
# For full dates..
log4j.appender.A1.layout.ConversionPattern=[%d{DATE}] %-5p %c [%t] %m%n
# IM traditional output format..
#log4j.appender.A1.layout.ConversionPattern=%d{HH:mm:ss,SSS} %-5p %c [%t] %m%n
# More example layouts
# XMLLayout for chainsaw consumption
# log4j.appender.A1.layout=org.apache.log4j.xml.XMLLayout
# TTCCLayout for NDC information

# log4j.appender.A1.layout=org.apache.log4j.xml.TTCCLayout
# log4j.appender.A1.layout.DateFormat=ISO8601
# log4j.appender.A1.layout.TimeZoneID=GMT-8:00
# log4j.appender.A1.layout.CategoryPrefixing=false
# log4j.appender.A1.layout.ThreadPrinting=false
# log4j.appender.A1.layout.ContextPrinting=false

# Now we list logger/appender/layout for the other default loggers, but
# only the defaults..
log4j.logger.iim_wd=ERROR, A2
log4j.appender.A2=org.apache.log4j.RollingFileAppender
log4j.appender.A2.file=${logdir}/iim_wd.log
log4j.appender.A2.append=true
log4j.appender.A2.maxBackupIndex=7
log4j.appender.A2.maxFileSize=5mb
log4j.appender.A2.layout=org.apache.log4j.PatternLayout
log4j.appender.A2.layout.ConversionPattern=[%d{DATE}] %-5p %c [%t] %m%n

# For separate xmpp traffic log, disabled by default.
log4j.logger.xmppd.xfer=DEBUG, A3
log4j.appender.A3=org.apache.log4j.varia.NullAppender
# Select next block instead of previous line to enable separate transfer log
# log4j.appender.A3=org.apache.log4j.RollingFileAppender
# log4j.appender.A3.file=${logdir}/xfer.log
# log4j.appender.A3.append=true
# log4j.appender.A3.maxBackupIndex=7
# log4j.appender.A3.maxFileSize=5mb
# log4j.appender.A3.layout=org.apache.log4j.PatternLayout
# # Note, simpler default output than above 3 loggers:
# log4j.appender.A3.layout.ConversionPattern=[%d{DATE}] %-5p %c [%t] %m%n

log4j.logger.agent-calendar=ERROR, A4
log4j.appender.A4=org.apache.log4j.RollingFileAppender
log4j.appender.A4.file=${logdir}/agent-calendar.log
log4j.appender.A4.append=true
log4j.appender.A4.maxBackupIndex=7
log4j.appender.A4.maxFileSize=5mb
log4j.appender.A4.layout=org.apache.log4j.PatternLayout
log4j.appender.A4.layout.ConversionPattern=[%d{DATE}] %-5p %c [%t] %m%n

log4j.logger.net.outer_planes.jso.BasicStream=OFF, A5
log4j.appender.A5=org.apache.log4j.RollingFileAppender
log4j.appender.A5.file=${logdir}/jso.log
log4j.appender.A5.append=true
log4j.appender.A5.maxBackupIndex=7
log4j.appender.A5.maxFileSize=5mb
log4j.appender.A5.layout=org.apache.log4j.PatternLayout
log4j.appender.A5.layout.ConversionPattern=[%d{DATE}] %-5p %c [%t] %m%n

log4j.logger.genredirect=INFO, A6
log4j.appender.A6=org.apache.log4j.RollingFileAppender
log4j.appender.A6.file=${logdir}/genredirect.log
log4j.appender.A6.append=true
log4j.appender.A6.maxBackupIndex=7
log4j.appender.A6.maxFileSize=5mb
log4j.appender.A6.layout=org.apache.log4j.PatternLayout
log4j.appender.A6.layout.ConversionPattern=[%d{DATE}] %-5p %c [%t] %m%n

Instant Messaging 元件的 Log4j 記錄層級

log4j 記錄程式使用的記錄層級,與 Instant Messaging 元件記錄層級中所述 iim.conf 參數式記錄機制的記錄層級相同。

Procedure指定 Log4j 配置檔案 (Log4j.conf) 的位置

  1. 開啟 iim.conf

    如需找到此檔案的詳細資訊,請參閱iim.conf 檔案位置

  2. iim.log4j.config 參數設定為您要記錄程式從中尋找 log4j.conf 的路徑。

    例如,在 Solaris 上:


    iim.log4j.config=/etc/opt/SUNWiim/default/config/log4j.conf
    

    在 Linux 上:


    iim.log4j.config=/etc/opt/sun/im/default/config/log4j.conf
    
  3. 儲存並關閉 iim.conf

  4. 重新整理伺服器。


    imadmin refresh
    

Procedure啟用或停用 Instant Messaging 元件的 Log4j 記錄

根據預設,log4j 記錄用於所有為其產生記錄資訊的元件。

  1. 若要停用 log4j 記錄,可將 log4j.conflog4j.conf.template 中的元件記錄層級設定為 OFF

    如需詳細資訊,請參閱設定 Instant Messaging 的 Log4j 記錄層級

  2. 若要啟用 log4j 記錄,可將 log4j.conflog4j.conf.template 中的元件記錄層級設定為任何非 OFF 的記錄層級。

Procedure設定 Instant Messaging 的 Log4j 記錄層級

您可以透過修改範本或記錄配置檔案來設定記錄層級。但是,如果您只修改配置檔案,下次您執行 configure 時會覆寫您所做的任何變更。為避免這種狀況的發生,您應同時變更配置檔案和範本。

  1. 開啟 log4j.conf.template

    依預設,此檔案會儲存於下列位置:


    im-svr-base/lib
  2. 對於每個元件,指定您要使用的記錄層級。

    例如,設定伺服器的記錄層級:


    log4j.logger.xmppd=log-level
    

    其中,log-levelFATAL ERRORWARNINGINFODEBUG 中的一個。

    如需每個記錄層級的詳細資訊,請參閱表 13–1

  3. 儲存並關閉 log4j.conf.template

  4. 重複 log4j.conf 配置檔案的程序。

Procedure指定 Instant Messaging 元件的最大 Log4j 記錄檔案大小

您可以透過修改範本或記錄配置檔案來設定記錄層級。但是,如果您只修改配置檔案,下次您執行 configure 時會覆寫您所做的任何變更。為避免這種狀況的發生,您應同時變更配置檔案和範本。

  1. 開啟 log4j.conf.template

    依預設,此檔案會儲存於下列位置:


    im-svr-base/lib
  2. 對於每個元件,指定元件記錄檔案的最大大小。

    例如,設定伺服器記錄檔案的大小:


    log4j.appender.A1.maxFileSize=max-logfile-size
    

    其中,A1 是伺服器的預設附加器 ID,max-logfile-size 的單位是 MB,例如 5MB

  3. 重複 log4j.conf 配置檔案的程序。

iim.conf 參數配置 Instant Messaging 元件的記錄

如果您不是使用 log4j 產生記錄檔案,您必須為每個您要 Instant Messaging 為其產生記錄資訊的元件設定特有的配置參數。此方法亦稱做參數式 Instant Messaging 記錄。您可以使用所有伺服器實例的參數式記錄,包括重新導向伺服器、多重訊號組合器、行事曆代理程式和監視程式。


備註 –

iim.conf 參數式記錄機制在未來的版本中可能會取消。儘量使用 log4j。


表 13–2 提供 iim.conf 中的記錄檔案名稱和配置參數名稱,用於設定每個 Instant Messaging 元件記錄檔的記錄層級。

表 13–2 Instant Messaging 元件的記錄檔案名稱和記錄層級配置參數

元件 

記錄檔案名稱 

記錄層級配置參數 

伺服器 

xmppd.log

iim.log.iim_server.severity

多重訊號組合器 

mux.log

iim.log.iim_mux.severity

行事曆代理程式 

agent-calendar.log

iim.log.agent-calendar.severity

監視程式 

iim_wd.log

iim.log.iim_wd.severity

配置參數可以具有下列值:

如需每個記錄層級的詳細記錄資訊,請參閱Instant Messaging 元件記錄層級

此外,有 Sun JavaTM System Access Manager 的部署中的記錄配置是由 com.iplanet.services.debug.level 特性所決定的。您可以在 Sun Java System Access Manager 主機的 AMConfig.properties 檔案中設定此特性。依預設,此檔案會安裝於下列位置:

AM-svr-base/lib/AMConfig.properties

其中,AM-svr-base 是您要安裝 Access Manager 的目錄。

此屬性可以包含下列的值:

根據預設,Sun Java System Portal Server 桌面記錄檔案 (desktop.debug ) 和歸檔記錄檔案 (IMArchiveSearch.log IMArchiveSubmit.log) 儲存於以下位置中:

Procedure使用 iim.conf 參數設定 Instant Messaging 元件的記錄層級

    修改 iim.conf 中的記錄參數。

    如需記錄檔案與您必須為每個元件設定的相關參數,請參閱表 13–2

    如需找到並修改 iim.conf 的說明,請參閱iim.conf 檔案語法。如需監視程式的詳細資訊,請參閱管理監視程式程序。如需行事曆代理程式的詳細資訊,請參閱第 16 章, 使用行事曆快顯提醒

管理 Instant Messenger 記錄

根據預設,不會記錄 Instant Messenger 資料。可能要求您在支援呼叫期間收集用戶端資料。在此情形中,您將必須先啟用記錄才能檢視用戶端記錄資料。

Instant Messenger 記錄是隨選建立的,並儲存在使用者的主目錄 (usr_home/.sunmsgr/messenger.log ) 中。

設定 Instant Messenger 記錄

若要設定 Instant Messenger 記錄,您必須:

  1. 決定您要收集的資料類型。

  2. 修改 im.jnlp 以包含 logconfig 參數。

  3. 根據您要收集的資料類型指定 logconfig 參數的類型。

  4. 重新部署資源檔案。

Procedure啟用 Instant Messenger 記錄

  1. 備份 im.jnlp

  2. 以文字編輯器開啟 im.jnlp Instant Messenger 資源檔案。

  3. 搜尋行:


    <application-desc main-class="com.iplanet.im.client.iIM">
  4. 將下列引數新增至該部分的尾端:


    <argument>logconfig=type</argument>
    

    其中,typeALLAPIXMPPTRAFFICCLIENT 中的一個。如需詳細資訊,請參閱Instant Messenger 記錄檔案內容選項

  5. 儲存並關閉 im.jnlp 檔案。

  6. 如果您使用 Sun Java System Application Server 或 Sun Java System Web Server,則依照重新部署資源檔案所述,重新部署資源檔案。

  7. 重新啟動 Instant Messenger。

  8. 找到記錄檔案。

    根據預設,記錄檔儲存為 usr_home/.sunmsgr/messenger.log

接下來的步驟

當您完成 Instant Messenger 的疑難排解時,應復原到 im.jnlp 的備份。然後,重新部署資源檔案,如重新部署資源檔案所述。

找到 Instant Messenger 記錄檔案 (messenger.log )

根據預設,Instant Messenger 記錄檔儲存為使用者主目錄下的 messenger.log ,如下所示:


/usr_home/.sunmsgr/messenger.log

Instant Messenger 記錄檔案內容選項

您可以透過指定 im.jnlp 中的 logconfig 參數值,決定您要在 messenger.log 中記錄的作業。表 13–3 描述 logconfig 的配置參數。如需設定 logconfig 參數和產生 Instant Messenger 記錄的說明,請參閱啟用 Instant Messenger 記錄

表 13–3 messenger.log 的 Instant Messenger 記錄選項

logconfig

messenger.log 包含...

ALL

API 資訊,用戶端和伺服器之間的所有流量,以及 Instant Messenger 用戶端應用程式本身的除錯資訊。 

API

僅 API 資訊。 

XMPPTRAFFIC

僅用戶端到伺服器的通訊。 

CLIENT

僅用戶端應用程式 (Instant Messenger) 詳細資訊。 

第 14 章 管理 Instant Messaging 一般使用者

Instant Messaging 並未提供大量使用者佈建工具。您需要使用目錄大量佈建工具以佈建多個 Instant Messaging 一般使用者。依預設,Instant Messaging 不提供增加、修改或刪除 Instant Messaging 一般使用者的特定指令。然而,您可自訂 Instant Messenger 以允許使用者將其自身增加至目錄。

就像在類似僅 LDAP 的部署中,您不能禁止一般使用者使用 Instant Messenger。在僅 LDAP 的部署中,唯一禁止一般使用者使用 Instant Messaging 的方法是將他們從目錄中刪除,或在目錄中停用他們的使用者帳號。請記住這麼做也會阻止使用者連結至目錄。在使用 Sun JavaTM System Access Manager 策略屬性的部署中,您僅可禁止一般使用者僅存取 Instant Messenger。此外,如果您使用 Access Manager 來部署 Instant Messaging,則您應使用 Access Manager 所提供的佈建工具,而非允許使用者自行註冊。

管理員可使用 Instant Messaging「管理員存取控制」機制來管理 Instant Messaging 一般使用者。如需關於 Instant Messaging「管理員存取控制」的詳細資訊,請參閱私密性、安全性與站點策略簡介,然後會使用 Access Manager 佈建 Instant Messaging 一般使用者。如需詳細資訊,請參閱「Sun Java Communications Suite 5 Deployment Planning Guide」


注意 – 注意 –

如果您拒絕一般使用者透過編輯 sysWatch.acl 檔案來關注其他使用者,則不會為這些一般使用者顯示 Instant Messenger 的主視窗。如此能有效拒絕一般使用者傳送即時訊息。然而,一般使用者仍然可以看到警示和新聞通道。


本章包含下列章節:

禁止一般使用者存取 Instant Messenger

如果您正透過 Access Manager 使用 Instant Messaging,則可如本節所述,拒絕使用者存取 Instant Messenger 服務。

Procedure若要停用 Instant Messaging 一般使用者

  1. 開啟 iim.conf

    如需找到並修改 iim.conf 的說明,請參閱iim.conf 檔案語法

  2. 將下列值修改如下:


    iim_ldap.useidentityadmin="true"
    iim_server.usesso=1The value for this parameter may also be 0
    iim.policy.modules="identity"
    iim.userprops.store="ldap"
  3. 儲存並關閉 iim.conf

  4. 重新整理 Instant Messaging 伺服器。


    imadmin refresh server
    

    如需詳細資訊,請參閱重新整理元件配置。如果您正在 HA 環境中使用 Instant Messaging,請勿使用 imadmin,而改用 Sun Cluster 工具來重新整理伺服器。

  5. 使用 Access Manager 主控台 (amconsole ) 從您想禁止其存取 Instant Messaging 服務的使用者中移除相關服務。

註冊 Instant Messaging 新使用者

您可自訂 Instant Messenger 來允許新使用者註冊。當使用者註冊時,Instant Messaging 伺服器會使用註冊期間提供的資訊來執行 ldapadd 作業,在目錄中建立使用者項目。


備註 –

如果您正在透過 Sun Java System Access Manager 使用 Instant Messaging,則您不應允許使用者使用此方法註冊。相反地,您應使用 Access Manager 所提供的佈建工具。


若要允許新使用者註冊,您需要將伺服器配置為允許註冊,然後藉由將引數增加至 im.jnlp.templateim.html.template 檔案並執行 configure 公用程式,然後 (如果有需要的話) 重新部署這些資源檔案,來自訂 Instant Messenger 資源。

本節描述:

如需關於自訂資源檔案的詳細資訊,請參閱第 15 章, 管理 Instant Messenger

將 Instant Messaging 伺服器配置為允許新使用者註冊

為了將 Instant Messaging 伺服器配置為允許新使用者註冊,您需要將配置參數增加至 iim.conf表 14–1 列出您需要增加的參數,以及每個參數的簡短說明。

表 14–1 Instant Messaging 伺服器新使用者註冊配置參數

參數 

說明 

iim.register.enable

如果是 TRUE,則伺服器會允許新 Instant Messaging 一般使用者使用 Instant Messenger 自行註冊 (將自己增加至目錄)。

iim_ldap.register.basedn

如果已啟用自行註冊,則此參數的值是儲存個人項目之 LDAP 位置的 DN。例如:

"ou=people,dc=siroe,dc=com"

iim_ldap.register.domain

要增加新使用者的目的網域。例如 directory.siroe.com

Procedure將 Instant Messaging 伺服器配置為允許新使用者註冊

  1. 開啟 iim.conf

    如需找到並修改 iim.conf 的說明,請參閱iim.conf 檔案語法

  2. 增加配置參數和適當的值,如表 14–1 中所述。

  3. 儲存並關閉 iim.conf

  4. 使用 imadmin 指令重新整理伺服器配置。

    imadmin refresh server

自訂 Instant Messenger 以允許新使用者註冊

當您自訂資源檔案以允許新使用者註冊時,[登入] 對話方塊上會出現新按鈕。使用者按一下此按鈕可存取 [新使用者註冊] 對話方塊,在其中進行註冊。當使用者註冊時,會將他們的資訊增加至 LDAP 目錄。

Procedure若要自訂 Instant Messenger 以允許新使用者註冊

  1. 在文字編輯器中開啟 im.jnlp.template 檔案。

    依預設,此檔案儲存於 im-svr-base/html

  2. 搜尋行:


    <application-desc main-class="com.iplanet.im.client.iIM">
    
  3. 將下列引數新增至該部分的尾端:


    <argument>register=true</argument>
    
  4. 儲存並關閉 im.jnlp.template

  5. 在文字編輯器中開啟 im.html.template 檔案。

    依預設,此檔案儲存於 im-svr-base/html

  6. 將註冊參數增加至檔案:


    <PARAM NAME="register" VALUE="true">
    
  7. 將下列參數增加至 EMBED 標記:


    register=true
    
  8. 儲存並關閉 im.html.template

  9. 執行配置公用程式,僅當提示您要配置的元件時,才選取 「Messenger 資源」元件。

    如需說明,請參閱安裝或升級後配置 Instant Messaging

  10. 如果您正在使用 Sun Java System Application Server 或 Sun Java System Web Server,請重新部署資源檔案。

    如需說明,請參閱重新部署資源檔案

  11. 啟動 Instant Messenger。

    [我是新使用者] 按鈕應出現在 [登入] 對話方塊上。

註冊為 Instant Messaging 新使用者

一旦您已將新使用者註冊引數增加至 im.jnlpim.html 檔案並已重新部署資源檔案,使用者就可自行註冊。

Procedure若要註冊為 Instant Messaging 新使用者

  1. 在網頁瀏覽器中,前往 Instant Messaging 首頁。

  2. 按一下 [啟動] 或按一下 [Java Plug-In]。

    出現 [登入] 對話方塊,顯示 [我是新使用者] 按鈕。

  3. 按一下[我是新使用者]。

    [新使用者註冊] 對話方塊隨即出現。

  4. 在提供的欄位中輸入資訊並按一下 [確定]。

    資訊會儲存於目錄中。

將 Instant Messaging 使用者屬性儲存於 LDAP

在沒有 Sun Java System Access Manager 的部署中,您可選擇將使用者屬性儲存於 LDAP 中,而非檔案中 (預設值)。您需要執行 imadmin assign_services 指令,以將必要的物件類別增加至目錄中的使用者項目。Instant Messaging 會使用這些物件類別,在使用者項目中儲存使用者屬性。


注意 – 注意 –

某些使用者屬性可能包含機密資訊。請確定已將您的目錄存取控制設定為禁止無權限使用者未經授權的存取。請參閱您的目錄文件,以取得詳細資訊。


Procedure若要將 Instant Messaging 使用者屬性儲存於 LDAP

  1. iim.conf 中,請確定 iim.policy.modules 參數有 iim_ldap 值。

    如需找到並修改 iim.conf 的說明,請參閱iim.conf 檔案語法

  2. iim.conf 中,請確定 iim.userprops.store 參數有 ldap 值。

  3. 從指令行中,指定 imadmin assign_services 選項:


    imadmin assign_services
    

    imadmin 會檢查 iim.conf 中的 iim.policy.modules 參數值。

  4. 輸入您要 imadmin 用來連結至目錄的連結 DN 與密碼。

    連結 DN 應有足夠的憑證來修改目錄模式,例如 Directory Manager DN。

  5. 輸入要儲存使用者項目的基底 DN。

    下一步, imadmin 會將 sunIMUsersunPresenceUser 物件類別增加至您所指定之組織中的使用者項目。

為一般使用者指定 Instant Messaging 與線上狀態服務

在含 Sun Java System Access Manager 的部署中,您可以使用 imadmin assign_services 指令為一般使用者指定 Instant Messaging 與線上狀態服務。或者,您也可使用 Access Manager 主控台。

Procedure為一般使用者指定 Instant Messaging 與線上狀態服務

  1. iim.conf 中,請確定 iim.policy.modules 參數有 identity 值。

    如需有關 iim.conf 的資訊,請參閱iim.conf 檔案語法

  2. 從指令行中,執行 imadmin 並使用 assign_services 選項:


    imadmin assign_services
    

    imadmin 會檢查 iim.conf 中的 iim.policy.modules 參數值。

  3. 輸入要儲存使用者項目的組織的基底 DN。

    這個組織包含由 Access Manager 所管理之使用者項目。

    下一步,imadmin 會為該組織的使用者指定 Instant Messaging 與線上狀態服務。

第 15 章 管理 Instant Messenger

本章中的以下章節會說明如何自訂與管理 Instant Messenger:

配置 Instant Messenger

呼叫和執行 Instant Messenger 的方法有兩種:

使用 Java Web Start - 在此配置中,Instant Messenger 會做為應用程式從 Java Web Start 啟動。一旦啟動 Instant Messenger 後,便不再需要瀏覽器。

使用 Java Plug-In - 在此配置中,Instant Messenger 做為 Java applet 執行。為使 Instant Messenger 階段作業持續作用,啟動 applet 的瀏覽器視窗必須一直開啟,且不能用來尋找任何其他的 URL。此外,Java Plug-In 並不允許桌面整合,因此 [設定] 對話方塊中沒有 [桌面整合設定] 選項。

如需深入瞭解如何配置啟用 Instant Messenger 的 Java 軟體,請參閱第 2 章, 設定和啟動 Instant Messenger

呼叫 Instant Messenger

您可從數個位置呼叫 Instant Messenger:

以下章節說明呼叫 Instant Messenger:

Procedure使用直接 URL 呼叫 Instant Messenger

    在 Web 瀏覽器中輸入以下 URL 來呼叫 Instant Messenger:


    http://webserver:webserverport/path/filename
    

    在此 URL 中,

    webserver

    指定您安裝 Instant Messenger 資源的 Web 容器的名稱。

    webserverport

    (選擇性) 指定 Web 容器連接埠。預設值為 80

    path

    (選擇性) 指定安裝用戶端檔案的目錄。若在安裝期間選取預設,則不需要任何子目錄來儲存用戶端檔案。

    filename

    指定 Instant Messenger 檔案使用:

    index.html - 這個檔案與產品一起提供。檔案包含與 im.jnlpim.html 的連結 (用來啟動 Instant Messenger 的 Java Web Start 與 Java Plug-In 版本)。

    im.jnlp - 該 .jnlp 檔案只啟動 Instant Messenger 的 Java Web Start 版本。

    im.html - 此網頁只會啟動 Instant Messenger 的 Java Plug-in 版本。

Procedure從指令行呼叫 Instant Messenger (僅 Solaris)

    在指令行中鍵入:

    javaws_cmd URL

    如需建構 URL 的相關資訊,請參閱使用直接 URL 呼叫 Instant Messenger

Procedure使用桌面捷徑呼叫 Instant Messenger

    建立呼叫 Instant Messenger 的桌面捷徑

    • 使用 Java Web Start 建立捷徑。

    • 手動建立捷徑並設定目標值如下:

      javaws_cmd jnlp-URL

      其中,jnlp-URLim.jnlp 檔案的 URL。

變更程式碼

程式碼庫 是一個 URL,Instant Messenger 會經由此 URL 存取資源,包括初次下載 Instant Messaging 用戶端的起始頁面。當 configure 公用程式部署資源檔案時,此 URL 在安裝後配置期間定義。如果您變更用於存取 Instant Messenger 資源的 URL 的任何部分 (包括 Web 容器連接埠號),您都必須更新程式碼庫。

若您要在部署資源檔案之後變更程式碼庫,則必須:

Procedure變更資源範本中的程式碼庫

    使用新的 URL 在 im-svr-base/html 目錄中編輯每個範本檔案。

    範本檔案名為 *.template。如需範本檔案的完整清單,請參閱Instant Messenger 資源檔案

變更 Web 容器連接埠

如果您變更用於存取 Instant Messenger 資源的 URL 的任何部分 (包括 Web 容器連接埠號),您都必須更新程式碼庫。如需說明,請參閱變更程式碼

自訂 Instant Messenger

Instant Messenger 可自訂。HTML 和 JNLP 檔案可自訂以符合組織的特定需求。如果您要為您的部署自訂資源檔案,您應執行 configure 公用程式 (如果您安裝後尚未執行)、自訂檔案,然後重新部署資源檔案。您必須先執行 configure 公用程式,因為 configure 會建立部份您可自訂的檔案。(如需重新部署的說明,請參閱重新部署資源檔案。)

您可以下列方式自訂 Instant Messenger 以符合您的需求:

本節說明如何修改 Instant Messaging 伺服器檔案來自訂 Instant Messenger。您可自訂的檔案均位於資源目錄 im-svr-base/html 目錄中。如需預設目錄位置的詳細資訊,請參閱表 3–1

Instant Messenger 資源檔案

Instant Messenger 資源檔案位於稱做資源目錄或 im-svr-base/html 的目錄中。

表 15–1 包含資源目錄中 Instant Messenger 檔案的清單 (im-svr-base/html)。其中也包含這些檔案的說明與自訂資訊。在資源目錄中,/locale 子目錄在目錄路徑中一般表示為 lang,但是有可能特別表示為語言縮寫,例如 en_USjpfr_FR

表 15–1 im-svr-base/html 中的 Instant Messenger 資源檔案

檔案 

說明 

是否可自訂? 

lang/im.html

啟動 Instant Messenger Java Plug-In 版本的初始頁面。 

是 

im.html.template

im.html 的範本版本。

否。 

這個檔案由安裝程式所使用以產生 im.html 檔案。

imdesktop.jar

用戶端 jar 檔案,由 im.htmlim.jnlp 檔案下載。

否 

lang/im.jnlp

.jnlp 檔案用於啟動 Instant Messenger 的 Java Web Start 版。

是 

im.jnlp.template

im.jnlp 的範本版本。

否 

imjni.jar

用戶端 jar 檔案,由 im.htmlim.jnlp 下載。

否 

messenger.jar

要用戶端 jar 檔案,由 im.htmlim.jnlp 下載。

否 

icalendar.jar

icalendar 剖析器用於處理行事曆提醒。

否 

imnet.jar

用戶端 jar 檔案,由 im.htmlim.jnlp 下載。

否 

lang/imbrand.jar

這個檔案包含可自訂的屬性、樣式表、影像、背景與聲訊檔案。 

是 

lang/imssl.html

啟動 Instant Messenger Java Plug-In 版本的初始頁面。用於在用戶端和多重訊號組合器之間執行舊有 SSL。不要使用此檔案透過 TLS 在用戶端和伺服器之間進行安全通訊。

是 

imssl.html.template

imssl.html 的範本版本。

否 

lang/imssl.jnlp

此檔案會啟動 Instant Messenger 的 Java Web Start 版本。此檔案用於在用戶端和多重訊號組合器之間執行 SSL。 

是 

imssl.jnlp.template

imssl.jnlp 的範本版本。

否 

jnlpLaunch.jsp

如果一般使用者已登入 Sun JavaTM System Access Manager,此檔案可用於允許單次登入和使用 Java Web Start 啟動 Instant Messenger。

是 

pluginLaunch.jsp

如果一般使用者已登入 Sun Java System Access Manager,此檔案可用於允許單次登入和使用 Java Plug-In 啟動 Instant Messenger。 

是 

index.html

LDAP 部署的軟體資訊頁面。它包含至 im.htmlim.jnlp 的連結,與至 windows.htmsolaris.htmquickref.htm 的文件連結。您可以為站點需求自訂此網頁。

是 

index.html.template

index.html 的範本版本。

否 

lang/imhelp/SunONE.jpg

quickref.htmsolaris.htmwindows.htm 使用的影像。

可以替換,但無法修改。 

quickref.html

solaris.html

windows.html

這些檔案位於 lang/imhelp/ 中,它們提供文件說明如何開始使用 Instant Messenger。

是 

lang/imhelp

Instant Messenger 線上說明目錄。 

否 

imwebex.jar

 

 

msgrinstall.jar

 

 

自訂 index.htmlim.html 檔案

如果您在無 Sun Java System Access Manager 的部署中使用 Instant Messenger,您可以修改 index.htmlim.html 檔案的靜態部分來建立完全自訂的使用者介面。這些 HTML 檔案包含文字之格式與處理方式的文字和標記。標記會經由標記集執行,其指定標題、縮排、字型大小與字型樣式的格式。

可以被修改的某些頁面元素為:

您可以從 index.html 啟動 Instant Messenger applet 和 Java Web Start 應用程式。如果您正在執行 Instant Messenger applet,則需要修改 im.html 檔案。im.html 檔案由 index.html 呼叫,並呼叫 Instant Messenger applet。im.html 檔案會在您執行 configure 公用程式時產生,並包含指向多重訊號組合器的 applet 引數。


備註 –

引數“<PARAM NAME="server" VALUE="servername"> ”代表 im.html 檔案中的 Instant Messaging 多重訊號組合器及其連接埠。如果您變更 iim_mux.listenport 參數的預設值,則必須將 servername 的值變更為 host.domain :port


使用 Sun Java System Access Manager SSO 啟動 Instant Messenger

若要透過 Sun Java System Access Manager 使用單次登入 (SSO) 來啟動 Instant Messenger,可使用 IMLaunch.jsp。這個檔案位於資源目錄中。

Sun Java System Access Manager 和 Instant Messenger 必須配置以使用相同的 Web 容器來啟用 SSO。

若要啟動 Instant Messenger,可在 Web 瀏覽器中輸入以下內容:


codebase/IMLaunch.jsp?server=multiplexor-hostname:muliplexor-port


codebase/IMLaunch.jsp?server=www.example.com:5222

其中:

codebase 是從中下載 Instant Messenger 資源的程式碼。例如,http://www.example.com

multiplexor-hostname 是多重訊號組合器的主機名稱。例如,http://www.company22.com

muliplexor-port 是多重訊號組合器偵聽傳入用戶端請求的連接埠號。例如,5222

IMLaunch.jsp 用於透過 Java Web Start 或 Java Plug-In 啟動 Instant Messenger。

自訂應用程式 (Java Web Start)

若您使用 Java Web Start 執行 Instant Messenger,則可以修改 im.jnlpimres.jnlpimres.jar 檔案以自訂使用者介面。下列為可以在這些檔案中進行的修改:


範例 15–1 範例 im.jnlp 檔案


<?xml version="1.0" encoding="utf-8"?>
<!-- Instant Messenger -->
<jnlp
  spec="1.0+"
  codebase="http://im.i-zed.com:80/im"
  href="en/im.jnlp">
  <information>
    <title>Instant Messaging</title>
    <vendor>I-Zed.com</vendor>
    <homepage href="http://www.I-zed.com/"/>
    <description>I-Zed’s Sun Java System Instant Messenger</description>
    <description kind="short">Instant Messenger</description>
    <icon href="CompanyLogo.gif"/>
    <offline-allowed/>
  </information>
  <security>
    <all-permissions/>
  </security>
  <resources>
    <j2se version="1.3+">
      <resources>
        <jar href="en/imres.jar"/>
        <jar href="en/imbrand.jar"/>
      </resources>
    </j2se>
    <jar href="messenger.jar"/>
    <jar href="imdesktop.jar"/>
    <jar href="imnet.jar"/>
    <jar href="icalendar.jar"/>
    <nativelib href="imjni.jar"/>
  </resources>
  <application-desc main-class="com.iplanet.im.client.iIM">
    <argument>server=im.i-zed.com:45222</argument>
    <argument>help_codebase=http://im.i-zed.com:80/im/en</argument>
  </application-desc>
</jnlp>


備註 –

im.jnlp 檔案中,引數 <argument> servername</argument> 代表 Instant Messaging 多重訊號組合器主機和連接埠。如果您變更 iim_mux.listenport 參數的預設值,則必須將 servername 的值變更為 host.domain :port


imbrand.jar 的內容

本章節中的表格列出 imbrand.jar 檔案中的檔案,並提供每個檔案的說明 (若有的話)。imbrand.jar 檔案也包含您可用來更名 Instant Messenger 的影像和音訊檔案。本章節包含以下表格:

表 15–2 配置檔案

檔案 

說明 

brand.properties

 

chat-styles.css

 

bgstyles.properties

用於延伸背景集的背景配置檔案。 

表 15–3 情緒圖案

檔案名稱 

說明 

emo_alarm.png

以圖案顯示恐慌情緒 

emo_angel.png

以圖案顯示善良情緒 

emo_angry.png

以圖案顯示生氣情緒 

emo_balloons.png

一串氣球的圖案 

emo_beermug.png

一杯啤酒的圖案 

emo_cake.png

生日蛋糕的圖案 

emo_calendar.png

行事曆的圖案 

emo_canworms.png

一罐蟲的圖案 

emo_clown.png

小丑頭的圖案 

emo_cool.png

以圖案顯示耍酷情緒 

emo_dead.png

以圖案表示麻木 

emo_devil.png

以圖案顯示邪惡情緒 

emo_dont-tell.png

以圖案表示請求保密 

emo_embarrassed.png

以圖案顯示尷尬情緒 

emo_exclamation.png

驚嘆號的圖案 

emo_flower.png

花的圖案 

emo_ghost.png

鬼的圖案 

emo_goldstar.png

金星的圖案 

emo_grin.png

以圖案顯示露齒的笑 

emo_kiss.png

以圖案顯示親吻 

emo_laughing.png

以圖案顯示笑 

emo_lifepreserver.png

救生用具的圖案 

emo_lightning.png

烏雲雷電的圖案 

emo_lovestruck.png

以圖案顯示愛的情緒圖案。 

emo_martini.png

馬丁尼酒杯的圖案 

emo_money.png

一堆硬幣的圖案 

emo_musicnote.png

音符的圖案 

emo_nerd.png

笨蛋的圖案 

emo_nottalking.png

以圖案顯示轉過頭去的表情 

emo_phone.png

電話筒的圖案 

emo_present.png

包裝的禮物的圖案 

emo_psychoknife.png

刀子的圖案 

emo_rathole.png

老鼠洞的圖案 

emo_sad.png

以圖案顯示憂傷情緒 

emo_sick.png

以圖案顯示生病 

emo_sleep.png

以圖案顯示睡意 

emo_smiley.png

以圖案顯示微笑 

emo_straightfaced.png

面無表情的人的圖案 

emo_sunshining.png

太陽的圖案 

emo_surprised.png

以圖案顯示驚訝 

emo_tongue-out.png

人在吐舌頭的圖案 

emo_violin.png

小提琴的圖案 

emo_whatever.png

以圖案顯示冷漠或不屑 

表 15–4 應用程式圖示 – Windows

檔案名稱 

說明 

im_app_icon_16.png

Windows 的標題列圖示 

im_app_icon_24.png

Windows 的標題列圖示 

tray_icon.ico

Windows 的系統匣圖示 

表 15–5 應用程式圖示 – 所有平台

檔案名稱 

說明 

logo_login_footer.png

[登入] 對話方塊底部顯示的標誌 

logo_register.png

[註冊] 對話方塊上顯示的標誌 

logo_sun.png

[登入] 對話方塊上顯示的 Sun 標誌 

表 15–6 工具列圖示

檔案名稱 

說明 

tb_addcontacts.png

[新增連絡人] 按鈕的圖形 

tb_alert.png

[傳送警示] 按鈕的圖形 

tb_chat.png

[與使用者聊天] 按鈕的圖形 

tb_conf.png

[新增會議] 按鈕的圖形 

表 15–7 連絡人清單圖示

檔案名稱 

說明 

cl_folder_closed.png

以圖案顯示關閉的資料夾 

cl_folder_open.png

以圖案顯示開啟的資料夾 

表 15–8 線上狀態圖示 - 連絡人清單

檔案名稱 

說明 

cl_activeconf.png

顯示在 [連絡人清單] 中的使用中的會議的圖示 

cl_away.png

顯示在 [連絡人清單] 中的離開狀態的圖示 

cl_dnd.png

 

cl_idle.png

顯示在 [連絡人清單] 中的閒置狀態的圖示 

cl_inactiveconf.png

顯示在 [連絡人清單] 中的非使用中的會議的圖示 

cl_offline.png

顯示在 [連絡人清單] 中的離線狀態的圖示 

cl_online.png

顯示在 [連絡人清單] 中的線上狀態的圖示 

cl_pending.png

顯示在 [連絡人清單] 中的擱置狀態的圖示 

表 15–9 線上狀態圖示 - 狀態列

檔案名稱 

說明 

sb_away.png

顯示在 [狀態列] 的離開狀態的圖示 

sb_dnd.png

 

sb_idle.png

顯示在 [狀態列] 的閒置狀態的圖示 

sb_offline.png

顯示在 [狀態列] 的離線狀態的圖示 

sb_online.png

顯示在 [狀態列] 的線上狀態的圖示 

表 15–10 調色板的背景與背景樣本

bgplt_tex_blue.gif

bgplt_tex_brown.gif

bgplt_tex_bubble_blue.gif

bgplt_tex_bubble_brown.gif

bgplt_tex_bubble_green.gif

bgplt_tex_bubble_grey.gif

bgplt_tex_bubble_orange.gif

bgplt_tex_bubble_purple.gif

bgplt_tex_bubble_ruby.gif

bgplt_tex_crackle_blue.gif

bgplt_tex_crackle_green1.gif

bgplt_tex_crackle_grey.gif

bgplt_tex_crackle_olive.gif

bgplt_tex_crackle_orange.gif

bgplt_tex_crackle_purple.gif

bgplt_tex_crackle_ruby.gif

bgplt_tex_gradation_blue.gif

bgplt_tex_gradation_brown.gif

bgplt_tex_gradation_green.gif

bgplt_tex_gradation_grey.gif

bgplt_tex_gradation_orange.gif

bgplt_tex_gradation_purple.gif

bgplt_tex_gradation_ruby.gif

bgplt_tex_green.gif

bgplt_tex_orange.gif

bgplt_tex_pink.gif

bgplt_tex_purple.gif

bgplt_tex_weave_blue.gif

bgplt_tex_weave_brown.gif

bgplt_tex_weave_green.gif

bgplt_tex_weave_grey.gif

bgplt_tex_weave_orange.gif

bgplt_tex_weave_purple.gif

bgplt_tex_weave_ruby.gif

bgplt_tex_white.gif

bg_tex_bubble_blue.gif

bg_tex_bubble_brown.gif

bg_tex_bubble_green.gif

bg_tex_bubble_grey.gif

bg_tex_bubble_orange.gif

bg_tex_bubble_purple.gif

bg_tex_bubble_ruby.gif

bg_tex_crackle_blue.gif

bg_tex_crackle_green1.gif

bg_tex_crackle_grey.gif

bg_tex_crackle_olive.gif

bg_tex_crackle_orange.gif

bg_tex_crackle_purple.gif

bg_tex_crackle_ruby.gif

bg_tex_gradation_blue.gif

bg_tex_gradation_brown.gif

bg_tex_gradation_green.gif

bg_tex_gradation_grey.gif

bg_tex_gradation_orange.gif

bg_tex_gradation_purple.gif

bg_tex_gradation_ruby.gif

bg_tex_weave_blue.gif

bg_tex_weave_brown.gif

bg_tex_weave_green.gif

bg_tex_weave_grey.gif

bg_tex_weave_orange.gif

bg_tex_weave_purple.gif

bg_tex_weave_ruby.gif

表 15–11 聲音

檔案名稱 

說明 

alert.wav

警示聲音 

alerttpc.wav

警示聲音 

away.wav

當您將狀態變更為離開時使用的聲音 

receive.wav

當您接收訊息時使用的聲音 

send.wav

當您傳送訊息時使用的聲音 

soundoff.wav

當您關閉聲音時使用的聲音 

soundon.wav

當您開啟聲音時使用的聲音 

更名 Instant Messenger

imbrand.jar 檔案包含所有控制 Instant Messenger 外觀與感覺的影像與屬性。您可以透過修改 imbrand.jar 中的影像和特性,來自訂 Instant Messenger 的外觀。

Procedure更名 Instant Messenger

  1. imbrand.jar 檔案複製到作業目錄。

    例如:


    cp im-svr-base/html/lang/imbrand.jar working-directory
    
  2. 變更為作業目錄。


    cd working-directory 
    
  3. 擷取 imbrand.jar 檔案。


    jar xf imbrand.jar
    

    這個指令會建立複製資源檔案的目錄樹狀結構。當您在 jar 檔案中修改個別檔案時,必須維護這個目錄結構。

    或者,您可以擷取 imbrand.jar 中包含的單個檔案並放置在您指定的目錄結構下。例如,若僅擷取 brand.properties,請使用下列指令:


    jar xf imbrand.jar com/sun/im/desktop/brand/brand.properties
    
  4. 使用已修改的 .gif .wav.properties 檔案更新 imbrand.jar 檔案。

    您可以更新 imbrand.jar 中的所有檔案,如下所示:

    jar cf imbrand.jar .

    若要使用單個已修改的檔案來更新 imbrand.jar 檔案,請使用下列指令:


    jar uf imbrand.jar com/sun/im/desktop/brand/filename
    

    其中,filenameimbrand.jar 中所包含檔案的名稱,例如 brand.properties

  5. imbrand.jar 複製到資源目錄。

    例如:


    cp imbrand.jar im-svr-base/html/lang/ .
    

    備註 –

    如果您支援部署中的多個語言環境,請按照程序為每個支援的語言環境更名 Instant Messenger。


自訂使用者名稱和群組名稱顯示

您可以透過變更用來顯示連絡人名稱的屬性,來自訂 Instant Messenger 顯示連絡人和群組名稱的方式。根據預設,Instant Messenger 使用屬性 cn 來代表使用者的顯示名稱。在您的部署中,您可能喜好使用 uid 或是其他屬性,而不使用 cn

連絡人名稱會顯示為名字姓氏。例如,Frank SmithMary Jones 等等。當有兩位一般使用者擁有相同的名與姓時,將不可能知道要將哪位一般使用者新增至連絡人清單。您可以自訂 Instant Messenger 在使用者搜尋的搜尋結果中顯示詳細資訊,並在 [聯絡人] 工具提示中顯示額外的資訊,以協助區分連絡人。例如,您可以在滑鼠置於連絡人之上時顯示連絡人的電話號碼:

Procedure變更用於顯示使用者名稱的屬性

  1. 開啟 iim.conf

    如需找到並修改 iim.conf 的說明,請參閱iim.conf 檔案語法

  2. 指定一個屬性,用來將使用者名稱顯示成 iim_ldap.userdisplay 的值。

    例如,若要使用 nickname 屬性,可如下設定 iim_ldap.userdisplay 屬性:

    iim_ldap.userdisplay=nickname

  3. 儲存並關閉檔案。

Procedure變更用於顯示群組名稱的屬性

  1. 開啟 iim.conf

    如需找到並修改 iim.conf 的說明,請參閱iim.conf 檔案語法

  2. 指定一個屬性,用來將使用者名稱顯示成 iim_ldap.groupdisplay 的值。

    例如,若要使用 uid 屬性,可如下設定 iim_ldap.groupdisplay 屬性:

    iim_ldap.groupdisplay=uid

    儲存並關閉檔案。

Procedure在搜尋結果中自訂使用者名稱顯示

  1. imbrand.jar 擷取檔案。

    如需 imbrand.jar 的預設位置,請參閱表 15–1

  2. 變更以下目錄:

    com/sun/im/client/

  3. 開啟 brand.properties

  4. dialogs.searchresults.format 屬性新增至檔案。

  5. 以下列格式新增您要在搜尋結果中包含的屬性:

    ${attr:attribute-name }

    其中 attribute-name 是 LDAP 屬性的名稱。

    例如,若要包含 title 屬性,可新增如下行:

    dialogs.searchresults.format=(${attr:title})

  6. 儲存變更並關閉檔案。

  7. 重新封裝 imbrand.jar

  8. 新增使用者屬性至 iim.conf

    指定屬性做為 iim_ldap.userattributes 參數的值。以逗號分隔多個屬性,例如:

    iim_ldap.userattributes=title,department,telephonenumber

    如需找到並修改 iim.conf 的說明,請參閱iim.conf 檔案語法

Procedure自訂工具提示內容

  1. imbrand.jar 擷取檔案。

    如需 imbrand.jar 的預設位置,請參閱表 15–1

  2. 變更以下目錄:

    com/sun/im/client/

  3. 開啟 brand.properties

  4. 新增 contact.tooltip.format.html 屬性至該檔案。

  5. 指定您要在工具提示中顯示的屬性,此屬性會做為 contact.tooltip.format.html 的值。

    例如,如果您要顯示連絡人的電話號碼或電子郵件地址,您可以輸入:

    contact.tooltip.format.html=mailto: ${attr:mail} tel: ${attr:telephonenumber}

    如需自訂 imbrand.jar 檔案內容的詳細資訊,請參閱自訂應用程式 (Java Web Start)

  6. 儲存變更並關閉檔案。

  7. 重新封裝 imbrand.jar

連修改用戶端使用者搜尋連絡人的方式

根據預設,commonnamecn LDAP 屬性會做為使用者的搜尋屬性。您可以配置 Instant Messaging 以允許使用者搜尋額外的屬性。此外,如果您的目錄已編列索引以允許使用萬用字元,您可以配置 Instant Messaging 伺服器以允許在搜尋連絡人名稱時使用萬用字元。

Procedure允許使用者搜尋自訂屬性

  1. 開啟 iim.conf

    如需找到並修改 iim.conf 的說明,請參閱iim.conf 檔案語法

  2. 修改 iim_ldap.usergroupbynamesearchfilter 屬性。

    此參數指定當搜尋使用者或群組時使用的 LDAP 搜尋字串。以標準的 LDAP 篩選器語法提供屬性值。您可以對其進行修改,以允許更複雜的搜尋。如需修改搜尋字串的詳細資訊,請參閱您的 Directory Server 文件。

  3. 儲存並關閉檔案。

Procedure允許在搜尋中使用萬用字元

  1. 開啟 iim.conf

    如需找到並修改 iim.conf 的說明,請參閱iim.conf 檔案語法

  2. iim_ldap.allowwildcardinuid 參數設定為 True

    此參數會決定在進行搜尋時是否應為使用者 ID 啟用萬用字元。大多數目錄安裝僅將使用者 ID 編入索引以進行精確搜尋,因此預設值為 False

  3. 確定已將使用者 ID 編列索引以在目錄中進行子字串搜尋。

    iim_ldap.allowwildcardinuid 參數設定為 True 會影響效能,除非將使用者 ID 編列索引以用於在目錄中搜尋子字串。如需編列索引的說明,請參閱您的目錄伺服器。

管理會議室與新聞通道

管理員可以為一般使用者建立會議室與新聞通道。然而,使用適當的權限,一般使用者也可以執行這個作業。如需新增策略以授予使用者建立會議室和新聞通道權限的詳細資訊,請參閱第 17 章, 管理 Instant Messaging 和線上狀態策略。依預設,建立會議室或新聞通道的使用者會擁有「管理」存取權限,讓其管理會議室或新聞通道。

您可以在 Instant Messenger 中執行下列作業以管理會議室與新聞通道。如需執行這些作業的詳細資訊,請參閱 線上說明。

修改 Instant Messenger 代理伺服器設定

Instant Messaging 訊息可包含內嵌式 URL。例如,http://stocks.yahoo.com?id=sunw 。如果您正在使用代理伺服器,您需要修改 Java Web Start 配置中的 Instant Messenger 代理伺服器設定,來解決這類內嵌式 URL。

如果您的組織有防火牆,而您必須先穿過代理伺服器才能將用戶端主機與網際網路連線,以及如果 Java Web Start 尚未配置正確的代理伺服器設定,便有可能發生此狀況。

Java Web Start 會透過查詢系統或預設瀏覽器,自動配置代理伺服器設定。但是,如果代理伺服器設定是使用 JavaScript 檔案來配置的話,Java Web Start 便無法自動配置這些設定。

Procedure使用 Java Web Start 手動設定單一 Instant Messenger 用戶端的代理伺服器設定

完成此程序會將代理伺服器喜好設定儲存在使用者的 messenger.properties 檔案中。如果您還要配置 im.jnlp 檔案以使用代理伺服器,且代理伺服器定的使用者喜好設定不同,則採用使用者喜好設定。

  1. 呼叫 Java Web Start。

  2. 從 [檔案] 功能表中,選擇[喜好設定]。

  3. 選取 [喜好設定] 對話中的 [手動] 選項。

  4. 輸入以下詳細資訊:

    HTTP 代理伺服器。 輸入代理伺服器的「名稱」或 IP 位址。

    HTTP 連接埠。輸入代理伺服器的連接埠號。

    無代理伺服器主機。 輸入可以直接連接而略過代理伺服器的網域名稱。使用逗號分隔多個主機名稱。

  5. 按一下 [確定] 以儲存代理伺服器設定。

Procedureim.jnlp 中所有的 Instant Messaging 用戶端連線配置代理伺服器設定

如果您在 im.jnlp 中設定的代理伺服器與在使用者喜好設定檔中 (/usr_home/.sunmsgr/messenger.properties ) 的不同,則會採用使用者喜好設定。

  1. 以文字編輯器開啟 im.jnlp 資源檔案。

  2. 新增以下引數以指定代理伺服器:


    <argument>proxy=proxy-host:proxy-port</argument>

    其中 proxy-host 是代理伺服器的完全合格網域名稱,proxy-port 是代理伺服器偵聽內送請求時使用的連接埠號碼。例如,myproxy.siroe.com:8080

  3. 新增以下引數以指定代理伺服器類型:


    <argument>proxy_type=type
    

    其中 type 可以是 http httpssocks 中的一個。

控制顯露的 Messenger 功能集

您可以透過配置 applet 描述元檔案中的 Instant Messaging applet 參數,來控制 Instant Messenger 的公開功能集。

表 15–12 顯示 applet 描述元檔案中的 Instant Messenger applet 參數。其也包含這些參數的說明與預設值。

表 15–12 Instant Messenger Applet 參數

參數 

預設值 

說明 

server

127.0.0.1

Instant Messaging 伺服器主機和連接埠。 

debug

FALSE

如果此參數設定 true,applet 會記錄在 java 主控台上執行的所有作業。 

uid

 

此參數用於 SSO。 

token

 

參數包含 SSO 記號並用於自動登入。 

secure

FALSE

指定為以 SRA 模式執行的 Instant Messenger。它顯示安全性指示器。 

usessl

FALSE

當連線至多重訊號組合器時告知 Instant Messenger 使用舊有 SSL。 

allow_alert_only

FALSE

告知 Instant Messenger 讓一般使用者不顯示連絡人清單或新聞通道。 

這個參數會用於 CHATPOPUP 風格。

allow_attachments

TRUE

允許檔案附件與傳送。 

enable_moderator

TRUE

如果設為 true,則啟用仲裁會議功能。 

messenger_bean

 

此參數包含使用的 Messenger Bean 清單。您可以輸入多個工廠類別名稱,每個名稱使用逗號分隔。 

domain

null 

這個參數用於多網域 Sun Java System Access Manager 部署中。這個參數值應為存在這個一般使用者的組織邏輯網域名稱。 

gateway_url

null 

這個參數包含入口網站 SRA 閘道元件的 URL。

儲存於一般使用者系統中的 Instant Messenger 資料

Instant Messenger 會快取一般使用者系統上有限數量的資訊,以供自動登入之用。此資訊位於:

home-directory/.sunmsgr

home-directory 為一般使用者的主目錄。一般使用者的主目錄可從 Java 系統屬性的 user.home 參數中取得。

表 15–13 顯示包含快取資料的目錄與檔案。其也包含檔案與目錄的說明。

表 15–13 快取資料目錄與檔案

檔案/目錄名稱 

類型 

說明 

.sunmsgr/messenger.properties

檔案 

包含自動登入屬性的檔案 

.sunmsgr/user-domain

目錄 

包含特定組合 (登入名稱、網域名稱) 之特定資料的目錄。 

home-directory/.sunmsgr/ user-domain/messenger.properties

檔案 

這個檔案包含特定 user_domain 的特定自動登入選項。未使用這個檔案。

home-directory/.sunmsgr/user-domain /messages/

目錄 

這個目錄包含快取訊息。未使用這個目錄。 

表 15–14 顯示 Instant Messaging 的自動登入特性。其也包含這些屬性的說明與預設值。

表 15–14 自動登入屬性

參數 

預設值 

說明 

client.password.encoded

false 

決定使用者密碼是否編碼 (以與 SSO 搭配使用)。如果此參數的值是 true,編碼密碼會儲存為 net.password 參數的值。

net.nms

127.0.0.1

Instant Messaging 伺服器主機名稱和連接埠。 

net.nmsn

(其中尾隨的 n 是用於區別兩個項目的數字)

 

次要伺服器的主機名稱與連接埠號。 

net.user

 

預設的使用者 ID。 

net.password

 

啟用自動登入的編碼使用者密碼。 

重新部署資源檔案

如果您正在使用 Sun Java System Application Server 或 Sun Java System Web Server,因站台變更或自訂,在您執行 configure 公用程式之後變更資源檔案,則必須重新部署檔案至 Web 容器。在升級 Instant Messaging 後,您也必須重新部署資源檔案。

Procedure將資源檔案重新部署為 Sun Java System Application Server 或 Sun Java System Web Server

  1. 執行 iwadmin 指令。

    im-svr-base/html/iwadmin

    其中 im-svr-base 是您安裝 Instant Messaging 的目錄。

    執行 iwadmin 會更新 Instant Messenger .jar 檔案。但是,iwadmin 不會更新或重新初始化 Instant Messenger 下載頁面。

    如需額外資訊,請參閱您 Web 容器的文件。如需額外配置選項的資訊,另請參閱 iwadmin man 頁面。

  2. (可選擇) 升級後,如果您要重新初始化 Instant Messenger 下載頁面,可再次執行 configure 公用程式。

    重新初始化下載頁面會覆寫任何您所做的自訂。如果您選擇不重新初始化下載頁面,注意 Instant Messenger .jar 檔案中的下載頁面和產品版本可能不同。

    如需詳細資訊,請參閱第 1 章, 安裝後配置 Instant Messaging

第 16 章 使用行事曆快顯提醒

Instant Messaging 與 Sun JavaTM System Calendar Server 整合,以提供給 Instant Messenger 使用者行事曆事件和作業的自動快顯提醒。

本節包含下列主題:

快顯提醒摘要

本章節以下列主題說明行事曆快顯提醒:

快顯提醒作業

使用者可以在其行事曆上接收即將來臨的事件與工作的 Instant Messenger 快顯提醒。若要啟用這些快顯提醒,必須執行下列項目:

啟用快顯後,當即將發生的事件或作業接近時, 在「事件通知系統」中設定的警示會導致 Calendar Server 傳送電子郵件通知,並讓 Instant Messaging 顯示快顯提醒。

快顯提醒的架構流程

若有配置,Instant Messaging 快顯提醒會遵循此架構流程:

  1. Instant Messaging JMS 訂閱者訂閱行事曆伺服器事件與「事件通知服務」(ENS) 中的通知。

  2. 行事曆伺服器會以 text/xmltext/calendar 格式向 ENS 發佈事件或工作通知。

  3. Instant Messaging JMS 訂閱者接收行事曆事件或工作通知,然後以 text/calendar 格式產生訊息。

  4. 如果該一般使用者在線上,Instant Messaging 伺服器會將該訊息傳送給行事曆所有者。

  5. 如果有可用的收件者,Instant Messenger 會根據訊息在一般使用者的桌面上產生 HTML 快顯提醒。

    如果收件者無法接收,Instant Messaging 伺服器會捨棄該訊息。

iim.conf 行事曆快顯配置參數

當您安裝 Instant Messaging 時,預設會將數個與行事曆代理程式搭配使用的參數新增至 iim.conf。當您執行 configure 公用程式時,您也可以啟用行事曆代理程式,並提供相關的配置資訊。但是,您可能要手動配置快顯,例如當您已自訂 Instant Messenger 的資源檔案時。如果您重新執行 configure,您需要重新部署資源檔案。如果您選擇手動配置 Instant Messaging 伺服器的行事曆快顯,而不是透過執行 configure 公用程式,則需要提供這些參數的值。如需 configure 公用程式的資訊,請參閱第 1 章, 安裝後配置 Instant Messaging

表 16–1 列出的配置參數可用於配置 Instant Messaging 伺服器和行事曆代理程式來使用行事曆快顯。

表 16–1 iim.conf 參數可配置行事曆快顯

iim.conf 中的參數或部份

說明與適當值 

JMS 用戶部份

jms.consumers

警示名稱。 

設定此值為: 

cal_reminder

jms.consumer.cal_reminder.destination

警示目標。 

這必須和 iics.conf 檔案中 caldb.serveralarms.url 配置參數的值相同。例如:

enp:///ics/customalarm

jms.consumer.cal_reminder.provider

提供者的名稱。 

設定為 ens

此名稱必須與 JMS 提供者部份中 jms.providers 參數內的名稱相同。

jms.consumer.cal_reminder.type

要設定的警示類型。設定此值為: 

topic

jms.consumer.cal_reminder.param

警示參數。如下所示設定此值 (包含引號): 

"eventtype=calendar.alarm"

jms.consumer.cal_reminder.factory

註冊其本身以使用新行事曆提醒訊息的偵聽程式。 

設定此值為: 

com.iplanet.im.server.JMSCalendarMessageListener

在單行中輸入值: 

JMS 提供者部份

jms.providers

提供者的名稱。 

此值設定為 ens

此值必須與 jms.consumer.cal_reminder.provider 參數的 JMS 用戶部份中所列的值相同。

jms.provider.ens.broker

ENS 的主機名稱和 ENS 用來偵聽內送請求的連接埠號碼。 

設定為 ics.conf 檔案參數 service.ens.port 中指定的連接埠。預設為 57997。

例如: 

jms.provider.ens.broker=cal.example.com:57997

jms.provider.ens.factory

用於建立主題連線物件的工廠類別。 

設定此值為: 

com.iplanet.ens.jms.EnsTopicConnFactory

Instant Messaging 一般參數

iim_agent.enable

啟用 Instant Messaging 的代理程式。根據預設,此參數設定為 False

如下所示設定此值 (包含引號): 

iim_agent.enable="true"

iim_agent.agent-calendar.enable

載入啟用 Calendar 代理程式的元件。 

如下所示設定此值 (包含引號): 

iim_agent.agent-calendar.enable="true"

agent-calendar.jid

行事曆代理程式的 JID。

設定此值如下: 

agent-calendar.jid=calimbot.server .domain

agent-calendar.password

將此參數設定為行事曆代理程式連線到 Instant Messaging 伺服器所使用的密碼。 

設定此值如下: 

agent-calendar.password=password

iim_server.components

設定此值如下: 

iim_server.components=agent-calendar

配置 Instant Messaging 快顯

本節包含下列配置說明:

Procedure使用 configure 公用程式配置 Instant Messaging Server 的行事曆快顯

  1. 執行 configure

    如需關於 configure 公用程式的詳細資訊,參?完成配置檢核清單

  2. 在 [行事曆代理程式] 配置畫面中,選取 [啟用行事曆代理程式] 核取方塊。

  3. 輸入 Notification Server 主機名稱和連接埠號碼。

    使用與 Calendar Server 上 ics.conf 檔案中 service.ens.port 參數所指定的連接埠號碼相同的連接埠號碼。

    您提供的值會結合在一起,並儲存為 iim.confjms.provider.ens.broker 參數的值。例如,如果您輸入 localhost 做為主機名稱,輸入 57997 做為連接埠號碼,則jms.provider.ens.broker 參數應設定如下:


    jms.provider.ens.broker=localhost:57997
  4. 輸入「行事曆警示 URL」。

    此 URL 是警示的目標。例如:


    enp:///ics/customalarm

    使用與 Calendar Server 上檔案 ics.conf 中的 caldb.serveralarms.url 參數所指定 URL 相同的 URL。

    您提供的值會儲存為 iim.conf jms.consumer.cal_reminder.destination 參數的值。

  5. 按 [下一步] 並繼續配置。

    如需 configure 公用程式的詳細資訊,請參閱第 1 章, 安裝後配置 Instant Messaging

Procedure手動配置 Instant Messaging Server 的行事曆快顯

開始之前

表 16–1 為彙整的資訊。

  1. 編輯 iim.conf 檔案中的一或多個參數,如表 16–1 所示。

    如需找到並修改 iim.conf 的說明,請參閱 iim.conf 檔案語法

    顯示的參數值假設您想要事件與工作的快顯提醒。若您的 iim.conf 中不存在這些參數,則新增。

  2. 使用 imadmin 啟動行事曆代理程式。


    imadmin start agent-calendar
    

    imadmin 指令行公用程式位在以下目錄中:

    im-svr-base/sbin

    其中 im-svr-base 是您安裝 Instant Messaging 的目錄。

Procedure配置 Calendar Server 的快顯

  1. 以具有變更配置權限的管理員身份登入行事曆伺服器主機。

  2. 變更為 cal-svr-base/SUNWics5/cal/config 目錄。

    其中 cal-svr-base 是您安裝 Calendar Server 的目錄。

  3. 藉由複製與重新命名來儲存舊的 ics.conf 檔案。

  4. 確認在下表中顯示的參數有顯示的值。否則,您必須修改這些參數。

    參數 

    說明與預設值 

    caldb.serveralarms

    啟用要佇列的行事曆警示。預設為 "1" (啟用)。

    caldb.serveralarms.contenttype

    警示內容的輸出格式。預設為 "text/xml"

    caldb.serveralarms.dispatch

    啟用要派送的行事曆警示。預設為 "yes"

    caldb.serveralarms.dispatchtype

    要派送的伺服器警示類型。預設為 "ens"

    caldb.serveralarms.url

    這是警示擷取警示內容的 URL。預設為 "enp:///ics/customalarm"

  5. 儲存 ics.conf 檔案。

  6. 重新啟動行事曆伺服器。

    cal-svr-base /SUNWics5/cal/sbin/start-cal

    其中 cal-svr-base 是您安裝 Sun Java System Calendar Server 的目錄。

Procedure配置 Instant Messenger 的行事曆快顯

  1. 在 Instant Messenger 主視窗中,選取 [工具] -> [設定]。

  2. 在 [設定] 視窗中按一下 [警示] 標籤。

  3. 核取 [顯示行事曆提醒] 選項。

  4. 按一下 [確定]。

    現在,當使用者在線上時,可透過 Instant Messenger 收到行事曆快顯。

在伺服器池中配置行事曆快顯

若要配置行事曆快顯在伺服器池部署中作業,您只需要在池中配置一個伺服器的行事曆代理程式。系統會為池中每個已配置的行事曆代理程式提供快顯。

管理行事曆代理程式

行事曆代理程式是一種 Instant Messaging 元件,可提供快顯功能給行事曆和 Instant Messaging 使用者。此外,使用隨 Instant Messaging 提供的工具,您可以啟動、停止、重新啟動或檢查行事曆代理程式的狀態,以及透過記錄檔監控其活動。如需管理行事曆代理程式元件的資訊,請參閱停止、啟動、重新整理與檢查 Instant Messaging 元件。如需行事曆代理程式記錄的資訊,亦請參閱第 13 章, 管理 Instant Messaging 的記錄。本節說明啟用和停用 Instant Messaging 代理程式。

Procedure啟用和停用 Instant Messaging 代理程式

  1. 開啟 iim.conf.

    如需找到並修改 iim.conf 的指示,請參閱iim.conf 檔案語法

  2. iim_agent.enable 參數設定為 true

    iim_agent.enable="true"

  3. 儲存並關閉 iim.conf

  4. 重新整理伺服器。


    imadmin refresh server
    

第 17 章 管理 Instant Messaging 和線上狀態策略

Instant Messaging 提供不同用處的功能,例如聊天、會議、輪詢、線上狀態存取等等。一種策略可描述一組與這些功能相關的存取控制權限。反之,一般使用者與群組可以根據組織需要指定到策略。

本章描述如何定義和使用策略來管理一般使用者和管理員對 Instant Messaging 伺服器功能和權限的存取權限。

私密性、安全性與站點策略簡介

Instant Messaging 提供對 Instant Messaging 功能的控制存取和保留一般使用者私密性的功能。

站點策略

站點策略會指定一般使用者對特定 Instant Messaging 功能的存取權限。站點策略可指定以下功能:

Instant Messaging 管理員具有所有 Instant Messaging 功能的存取權限。管理員擁有所有會議室與新聞通道的 MANAGE 存取權限,可以檢視一般使用者的線上狀態資訊,並可以檢視並修改特性,例如一般使用者的「連絡人清單」與 Instant Messenger 設定。站點策略設定不會影響管理員的權限。

依預設,會提供一般使用者存取其他一般使用者線上狀態、傳送警示給一般使用者以及儲存屬性至伺服器的權限。在大部分部署中,不會變更預設值。當 Instant Messaging 專門用於快顯功能時,需要變更這些預設值。

當 Instant Messaging 專門用於快顯功能時,不會提供一般使用者對於線上狀態資訊、聊天與新聞功能的存取權限。


備註 –

儘管某些權限可以全域設定,管理員也可以定義這些權限的例外。例如,管理員可以拒絕某些用於選取一般使用者、角色或群組的預設權限。


會議室與新聞通道存取控制

一般使用者對於「會議室」與「新聞通道」具有以下存取權限:

具有 MANAGE 權限的一般使用者可以設定所有其他一般使用者的預設權限層級。這些一般使用者也可以定義例外規則,以便將不同於預設存取層級權限的存取層級授與特定的一般使用者或群組。


備註 –

設定 WRITE 權限,同時授與一般使用者 READ 權限。


使用者私密性

一般使用者可以指定其他一般使用者是否可以查看他們的線上狀態。依預設,所有一般使用者都可以存取所有其他一般使用者的線上狀態資訊。一般使用者也可以對某些一般使用者與群組設定拒絕此存取的例外情況。

若一般使用者已拒絕其他一般使用者存取其線上狀態,則在其他一般使用者連絡人清單中,此一般使用者的可用性狀態會顯示為離線。若一般使用者的線上狀態為離線,則不能向其傳送警示或聊天邀請。

可以使用 Instant Messenger 中的 [使用者設定] 視窗對使用者私密性進行配置。如需配置使用者私密性的詳細資訊,請參閱 Instant Messenger 線上說明

控制一般使用者與管理員權限的方法

使用 Instant Messaging 伺服器的不同站點在啟用與限制一般使用者對於 Instant Messaging 服務的存取類型方面有著不同的需求。控制一般使用者與管理員 Instant Messaging 伺服器功能與權限的程序稱為策略管理。有兩種可用的策略管理方法:透過存取控制檔案或透過 Sun JavaTM System Access Manager。

如果您的部署未包含 Sun Java System Access Manager,您必須使用存取控制檔案方法來管理策略。如果您將 Sun Java System Access Manager 與 Instant Messaging 伺服器一起使用,且您已安裝 Instant Messaging 和線上狀態服務元件,您可以使用任一策略管理方法。使用 Sun Java System Access Manager 管理策略是一種比較全面的方法。這種方法的其中一項優點是允許您在目錄中儲存所有一般使用者的資訊。

設定策略管理方法

當您選擇管理策略所用的方法時,還必須選擇這些方法的儲存位置。可透過以下方式選取管理策略方法:編輯 iim.conf 檔案,並將 iim.policy.modules 參數設為 identity (針對 Access Manager 方法) 或 iim_ldap (針對存取制檔案,這也是預設的方法)。

您可以按照以下步驟設定策略管理方法。

Procedure設定策略管理方法

  1. 開啟 iim.conf

    如需尋找並修改 iim.conf 的說明,請參閱 iim.conf 檔案語法

  2. 可透過將 iim.policy.modules 參數設定為以下值之一進行編輯:

    • iim_ldap (預設值,存取控制檔案方法)

    • identity (Access Manager 方法)

    如果您選擇 identity,可以執行 imadmin assign_services 將 Instant Messaging 和線上狀態服務分派給現有的使用者。

  3. 編輯 iim.userprops.store 參數並將其設定為以下某個值:

    • ldap (在 LDAP 中儲存使用者特性。)

      如果您選擇 ldap,可以執行 imadmin assign_services,將儲存用戶特性的必要物件類別新增到目錄中的使用者項目。

    • file (預設值,在檔案中儲存使用者特性。)

  4. 儲存和關閉 iim.conf

  5. 更新配置。

策略配置參數

表 17–1 列出並描述了 iim.conf 中可用的參數,這些參數與 Sun Java System Access Manager 在 Instant Messaging 部署中可扮演的增加角色相關。

表 17–1 iim.conf 中與 Access Manager 相關的參數

參數名稱 

用途 

值 

iim.policy.modules

指定 Sun Java System Access Manager 或目錄是否用於策略儲存。 

iim_ldap (預設值)

identity

iim.userprops.store

指定使用者特性位於使用者特性檔案中還是儲存於 LDAP 中。只有在已安裝線上狀態和 Instant Messaging 服務的服務定義時才有意義。 

file (當您執行 configure 公用程式時,如果未選擇將 Access Manager 用於策略,則為預設值。)

ldap (當您執行 configure 公用程式時,如果未選擇將 Access Manager 用於策略,則為預設值。)

使用存取控制檔案管理策略

藉由編輯存取控制檔案,您可以控制下列一般使用者權限:

依預設,會提供一般使用者存取其他一般使用者的線上狀態、傳送警示給一般使用者以及儲存特性至伺服器的權限。對於大部分部署而言,不必變更預設值。

儘管某些權限可以全域設定,管理員也可以定義這些權限的例外情況。例如,管理員可以拒絕某些用於選取一般使用者或群組的預設權限。

此外,如果您透過部署中的存取控制檔案強制實施策略,則同一個伺服器池中,位於各個伺服器上的這些存取控制檔案必須相同。

表 17–2 列出 Instant Messaging 的存取控制檔案,以及這些檔案提供給一般使用者的權限。

表 17–2 存取控制檔案

ACL 檔案 

權限 

sysSaveUserSettings.acl

定義可以與不可以變更其本身喜好設定的使用者。不具有此權限的使用者無法執行新增連絡人、建立會議等動作。 

sysTopicsAdd.acl

定義可以與不可以建立新聞通道的使用者。 

sysRoomsAdd.acl

定義可以與不可以建立會議室的使用者。 

sysSendAlerts.acl

定義可以與不可以傳送警示的使用者。停用 sysSendAlerts 時會同時停用輪詢。

sysWatch.acl

定義可以與不可以查看其他一般使用者變更的使用者。Instant Messenger 視窗為不具有此權限 (僅允許「會議與新聞通道訂閱與非訂閱」) 的一般使用者而顯示。 

sysAdmin.acl

僅為管理員保留。此檔案為所有一般使用者設定所有 Instant Messaging 功能的管理權限。此權限會覆寫所有其他權限,並可供管理員建立與管理會議室和新聞通道,以及存取一般使用者線上狀態資訊、設定和屬性。 

Procedure變更存取控制檔案中的一般使用者權限

  1. 變更為 im-cfg-base/acls 目錄。

    如需尋找 im-cfg-base 的資訊,請參閱 Instant Messaging 伺服器目錄結構

  2. 編輯適當的存取控制檔案。

    例如:


    vi sysTopicsAdd.acl
    

    如需存取控制檔案清單,請參閱表 17–2

  3. 儲存變更。

  4. 一般使用者需要重新整理 Instant Messenger 視窗,才能看到這些變更。

使用伺服器池中的存取控制檔案

此外,如果您透過部署中的存取控制檔案強制實施策略,則同一伺服器池中,位於各個伺服器上的檔案內容必須相同。若要確定如此,從其中一台伺服器中將存取控制檔案複製到池中的其他各個節點。如需尋找這些檔案的詳細資訊,請參閱存取控制檔案位置

存取控制檔案位置

存取控制檔案的位置是 im-cfg-base/acls。其中,im-cfg-base 是配置目錄。如需配置檔案預設位置的資訊,請參閱 Instant Messaging 伺服器目錄結構

存取控制檔案格式

存取控制檔案包含一系列定義定義的項目。每個項目都以下列標籤開始:

標籤後面跟隨一個冒號 (:)。如果是預設標籤,則後面會跟隨 truefalse

一般使用者與群組標籤後面會跟隨一般使用者或群組名稱。

指定多個一般使用者與群組的方法是讓多個一般使用者 (u) 與群組 (g) 在行中。

d: 標簽必須為存取控制檔案中最後一個項目。伺服器會忽略 d: 標簽之後的所有項目。如果 d: 標簽為 true,則檔案中所有其他項目均為多餘且會被忽略。您不可以將存取控制檔案中的 d: 標簽設定為 true,並選擇性的拒絕一般使用者的該權限。若預設值設定為 false,則只有檔案中所指定的一般使用者與群組擁有該特定權限。

以下為 ACL 中用於新安裝的預設 d: 標簽項目:


注意 – 注意 –

在將來產品版本中,所有存取控制檔案的格式可能會變更,並且有一些可能不再出現。



備註 –

停用 sysSendAlerts 時會同時停用輪詢。



範例 17–1 sysTopicsAdd.acl 檔案

在以下範例中, sysTopicsAdd.acl 檔案的 d: 標籤項目為 false。因此,d: 項目之前的一般使用者與群組 (即 user1user2,與 sales 群組),具有「新增」與「刪除」新聞通道的權限。


# Example sysTopicsAdd.acl file
u:user1
u:user2
g:cn=sales,ou=groups,o=siroe
d:False

使用 Sun Java System Access Manager 管理策略

Sun Java System Access Manager 中的 Instant Messaging 和線上狀態服務提供另一種控制一般使用者和管理員權限的方法。每個服務擁有三種屬性類型:動態、使用者與策略。策略屬性是用於設定特權的屬性類型。

當新增規則至建立於 Access Manager 的策略時,策略屬性成為規則的一部份,以允許或拒絕管理員與一般使用者使用不同的 Instant Messaging 功能,例如從其他人接收輪詢訊息。

當 Instant Messaging 伺服器與 Sun Java System Access Manager 一起安裝時,會建立數個範例策略和角色。如需策略和角色的詳細資訊,請參閱 Sun Java System Access Manager Getting Started Guide Sun Java System Access Manager 管理指南

您可以建立新策略,並視您網站的需求將這些策略指定給角色、群組、組織或一般使用者。

在將 Instant Messaging 服務或線上狀態服務指定給一般使用者時,他們會接收到適用的動態與使用者屬性。動態屬性可指定給 Access Manager 配置的角色或組織。

在將角色指定給一般使用者或於組織中建立一般使用者時,動態屬性則會變為一般使用者的特性。使用者屬性會直接指定給每個一般使用者,這些屬性不是繼承自角色或組織,且通常每個一般使用者的使用者屬性皆不相同。當一般使用者登入時,將根據所指定的角色與策略的套用方式取得適用的所有屬性。

在將線上狀態與 Instant Messaging 服務指定給一般使用者之後,動態、使用者或策略屬性會與這些一般使用者相關聯。

Instant Messaging 服務屬性

表 17–3 列出每個服務的策略、動態和使用者屬性。

表 17–3 Instant Messaging 的 Access Manager 屬性

服務 

策略屬性 

動態屬性 

使用者屬性 

sunIM 

sunIMAllowChat

sunIMAllowChatInvite

sunIMAllowForumAccess

sunIMAllowForumManage

sunIMAllowForumModerate

sunIMAllowAlertsAccess

sunIMAllowAlertsSend

sunIMAllowNewsAccess

sunIMAllowNewsManage

sunIMAllowFileTransfer

sunIMAllowContactListManage

sunIMAllowUserSettings

sunIMAllowPollingAccess

sunIMAllowPollingSend

sunIMProperties

sunIMRoster

sunIMConferenceRoster

sunIMNewsRoster

sunIMPrivateSettings

sunIMUserProperties

sunIMUserRoster

sunIMUserConferenceRoster

sunIMUserNewsRoster

sunIMUserPrivateSettings

sunPresence 

sunPresenceAllowAccess

sunPresenceAllowPublish

sunPresenceAllowManage

sunPresenceDevices

sunPresencePrivacy

sunPresenceEntityDevices

sunPresenceUserPrivacy

對於上述表格中的每一個屬性,Access Manager 管理主控台會顯示其對應的標籤。表 17–4 列出並描述策略屬性,而 表 17–5 則列出並描述動態與使用者屬性。

表 17–4 Instant Messaging 的 Access Manager 策略屬性

策略屬性 

管理主控台標籤 

屬性說明 

sunIMAllowChat

聊天的能力 

一般使用者可以被邀請加入聊天室並存取一般聊天功能 

sunIMAllowChatInvite

邀請他人聊天的能力 

一般使用者可以邀請其他人聊天 

sunIMAllowForumAccess

加入會議室的能力 

Instant Messenger 中會顯示會議標籤,允許一般使用者加入會議室 

sunIMAllowForumManage

管理會議室的能力 

一般使用者可以建立、刪除與管理會議室 

sunIMAllowForumModerate

主持會議室的能力 

一般使用者可以是會議主持人 

sunIMAllowAlertsAccess

接收警示的能力 

一般使用者可以從其他使用者接收警示 

sunIMAllowAlertsSend

傳送警示的能力 

一般使用者可以傳送警示給其他使用者 

sunIMAllowNewsAccess

閱讀新聞的能力 

Instant Messenger 中會顯示 [新聞] 按鈕,可以讓一般使用者列出新聞通道以接收與傳送新聞訊息 

sunIMAllowNewsManage

管理新聞通道的能力 

一般使用者可以管理新聞通道,並可以為新聞通道建立、刪除與指定權限 

sunIMAllowFileTransfer

交換檔案的能力 

一般使用者可以在警示、聊天與新聞訊息中新增附件 

sunIMAllowContactListManage

管理連絡人清單的能力 

一般使用者可以管理自己的連絡人清單;可以從清單新增與刪除使用者或群組;可以在連絡人清單中重新命名資料夾 

sunIMAllowUserSettings

管理 Messenger 的能力 

Instant Messenger 中會顯示 [設定] 按鈕,可以讓一般使用者變更其 Instant Messenger 設定 

sunIMAllowPollingAccess

接收輪詢的能力 

一般使用者可以從其他使用者接收輪詢訊息,也可以回應輪詢 

sunIMAllowPollingSend

傳送輪詢的能力 

Instant Messenger 中會顯示 [輪詢] 按鈕,可以讓一般使用者傳送輪詢訊息給其他使用者並接收回應 

sunPresenceAllowAccess

存取其他使用者線上狀態的能力 

一般使用者可以查看其他使用者的線上狀態。除了顯示連絡人以外,連絡人清單還可透過變更狀態圖示來反映連絡人的線上狀態變更 

sunPresenceAllowPublish

發佈線上狀態的能力 

一般使用者可以按一下以選取其狀態 (線上、離線、忙碌等),以供他人查看 

sunPresenceAllowManage

管理線上狀態存取的能力 

Instant Messenger 設定中會顯示 [存取] 標籤,讓一般使用者可以設定自己的預設線上狀態存取、線上狀態允許或線上狀態拒絕清單 

直接修改屬性

一般使用者可登入 Access Manager 管理主控台,並檢視 Instant Messaging 和線上狀態服務屬性中的屬性值。若屬性已定義為可修改,則一般使用者可以變更這些屬性。依預設,Instant Messaging 服務中的任何屬性都是不可修改的,也不建議允許一般使用者修改這些屬性。然而,從系統管理的觀點來看,直接處理屬性是相當有用的。

例如,由於角色不會影響某些系統屬性,如設定會議訂閱,因此系統管理員可以透過複製其他一般使用者 (例如從會議名冊) 的屬性值,來修改這些屬性的屬性值,或直接對其進行修改。這些屬性列於表 17–5 中。

一般使用者可透過 Sun Java System Access Manager 管理主控台設定使用者屬性。動態屬性由管理員設定。為動態屬性設定的值會覆寫或合併對應的使用者屬性值。

對應動態與使用者屬性本質會影響解決衝突與補充資訊的方式。例如,來自兩個來源 (動態和使用者) 的「會議訂閱」彼此互補,因此會合併訂閱。屬性不會互相覆寫。

表 17–5 Instant Messaging 的 Access Manager 使用者和動態屬性

管理主控台標籤 

使用者屬性 

動態屬性 

屬性說明 

衝突解決方案 

Messenger 設定 

sunIMUserProperties

sunIMProperties

包含所有 Instant Messenger 屬性,並對應至以檔案為基礎的使用者屬性儲存中的 user.properties 檔案

合併。除非特定特性的值來自使用者和動態屬性,否則動態屬性會加以覆寫。 

訂閱 

sunIMUserRoster

sunIMRoster

包含訂閱資訊 (使用者連絡人清單名冊) 

合併。如果使用者屬性和動態屬性中均存在 Jabber 識別碼,則會採用來自使用者屬性的暱稱,群組會是使用者屬性和動態屬性的所有群組的併集,訂閱值會是使用者值和動態值的最大值。 

會議訂閱 

sunIMUserConferenceRoster

sunIMConferenceRoster

包含會議室訂閱資訊 

合併。動態和使用者訂閱會合併,重複項目會被移除。 

新聞通道訂閱 

sunIMUserNewsRoster

sunIMNewsRoster

包含新聞通道訂閱資訊 

合併。動態和使用者訂閱會合併,重複項目會被移除。 

線上狀態代理程式 

sunPresenceEntityDevices

sunPresenceDevices

本版本未使用 (供未來版本使用) 

使用動態資訊。 

私密性 

sunPresenceUserPrivacy

sunPresencePrivacy

對應至 Instant Messenger 的私密性設定 

合併。如果有衝突,則使用動態值。 

Instant Messenger 喜好設定 

sunIMUserPrivateSettings

sunIMPrivateSettings

在此儲存 Messenger 設定中未儲存的私有喜好設定 

合併。 

預先定義的 Instant Messaging 和線上狀態策略

表 17–6 列出並描述當安裝 Instant Messaging 服務元件時,於 Sun Java System Access Manager 中建立的七個範例策略和角色。您可以根據要提供一般使用者的存取控制,將其新增至不同角色。

典型站點可能希望將「IM 一般使用者」角色 (接收預設 Instant Messaging 與線上狀態存取的角色) 指定給只使用 Instant Messenger 但不負責管理 Instant Messaging 策略的一般使用者。同一個站點可能會將「IM 管理員」角色 (與管理 Instant Messaging 和線上狀態服務能力相關聯的角色) 指定給完全負責管理 Instant Messaging 策略的特定一般使用者。表 17–7 列出策略屬性中的預設權限指定。若未在規則中選擇動作,則允許拒絕值與策略無關,且不會影響該屬性。

表 17–6 Sun Java System Access Manager 的預設策略和角色

策略 

套用策略的角色 

套用策略的服務 

策略說明 

預設的 Instant Messaging 和線上狀態存取權限 

IM 一般使用者 

sunIM、sunPresence 

標準的 Instant Messaging 一般使用者應擁有的預設存取權限。 

管理 Instant Messaging 和線上狀態服務的能力 

IM 管理員 

sunIM、sunPresence 

Instant Messaging 管理員所擁有的存取權限,可存取 Instant Messaging 的所有功能。 

管理 Instant Messaging 新聞通道的能力 

IM 新聞管理員 

sunIM 

一般使用者可以藉由建立、刪除等方法管理新聞通道 

管理 Instant Messaging 會議室的能力 

IM 會議室管理員 

sunIM 

一般使用者可以藉由建立、刪除等方法管理會議室 

變更自己的 Instant Messaging 使用者設定的能力 

IM 允許使用者設定角色 

sunIM 

一般使用者可透過修改 Instant Messenger 中 [設定] 對話方塊中的值來編輯設定值。 

傳送 Instant Messaging 警示的能力 

IM 允許傳送警示角色 

sunIM 

一般使用者可在 Instant Messenger 中傳送警示。 

查看其他 Instant Messaging 一般使用者變更的能力 

IM 允許查看變更規則 

sunIM 

一般使用者可以存取其他 Instant Messaging 一般使用者的線上狀態。 

表 17–7 預設策略指定
 

策略 

屬性 

預設存取 

可以管理 Instant Messaging 和線上狀態服務 

可以管理新聞通道 

可以管理會議室 

可以變更本身的一般使用者設定 

可以傳送警示 

可以查看其他使用者的變更 

sunIMAllowChat

允許 

允許 

         

sunIMAllowChatInvite

允許 

允許 

         

sunIMAllowForumAccess

允許 

允許 

 

允許 

     

sunIMAllowForumManage

拒絕 

允許 

 

允許 

     

sunIMAllowForumModerate

拒絕 

允許 

 

允許 

     

sunIMAllowAlertsAccess

允許 

允許 

     

允許 

 

sunIMAllowAlertsSend

允許 

允許 

     

允許 

 

sunIMAllowNewsAccess

允許 

允許 

允許 

       

sunIMAllowNewsManage

拒絕 

允許 

允許 

       

sunIMAllowFileTransfer

允許 

允許 

         

sunIMAllowContactListManage

允許 

允許 

         

sunIMAllowUserSettings

允許 

允許 

   

允許 

   

sunIMAllowPollingAccess

允許 

允許 

         

sunIMAllowPollingSend

允許 

允許 

         

sunPresenceAllowManage

允許 

允許 

         

sunPresenceAllowAccess

允許 

允許 

       

允許 

sunPresenceAllowPublish

允許 

允許 

         

建立新的 Instant Messaging 策略

您可以建立新策略以符合站點的特定需求。

Procedure建立新策略

  1. 登入 Access Manager 管理主控台,即 http://hostname :port/amconsole

    例如:

    http://imserver.company22.example.com:80/amconsole

  2. 選取 [身份識別管理] 標籤。

  3. 在瀏覽窗格 (框架左下角) 中,選取 [檢視] 下拉式清單中的 [策略]。

  4. 按一下 [新的]。

    資料窗格 (框架右下角) 中會顯示 [新的策略] 頁面。

  5. 在 [策略類型] 中選取 [一般]。

  6. 在 [名稱] 欄位中輸入策略說明。

    例如:


    可執行 IM 作業。
    
  7. 按一下 [建立]。

    Access Manager 管理主控台在瀏覽窗格的策略清單中顯示新策略的名稱,並開啟新策略的 [編輯] 頁面。

  8. 在 [編輯] 頁面中,選取 [檢視] 下拉式清單中的 [規則]。

    隨即在 [編輯] 頁面中顯示 [規則名稱服務資源] 面板。

  9. 按一下 [新增]。

    隨即顯示 [新增規則] 頁面。

  10. 選取要套用的服務。

    您可以選取 Instant Messaging 服務或線上狀態服務。

    每個服務均可讓您允許或拒絕一般使用者執行特定動作的能力。例如,「聊天的能力」是 Instant Messaging 服務特定的動作,而「存取其他使用者線上狀態的能力」則是線上狀態服務特定的動作。

  11. 在 [規則名稱] 欄位中輸入規則的說明。

    例如:


    規則 1
    
  12. 輸入適當的「資源名稱」。

    以下兩者擇一輸入:

    若為 Instant Messaging 服務,則為 IMResource

    若為線上狀態服務,則為 PresenceResource

  13. 選取您要套用的動作。

  14. 選取每個動作的值。

    您可以選取「允許」或「拒絕」。

  15. 按一下 [建立]。

    建議的規則會在該策略的已儲存規則清單中顯示。

  16. 按一下 [儲存]。

    建議的規則會變成已儲存規則。

  17. 對於任何您要套用在該策略的其他規則重複步驟 9-16。

將策略指定給角色、組織或使用者

您可以將策略指定給角色、群組、組織或使用者。其中包括預設策略或在安裝 Instant Messaging 後建立的策略。

Procedure指定策略

  1. 登入 Access Manager 管理主控台,即 http://hostname :port/amconsole

    例如:

    http://imserver.company22.example.com:80/amconsole

  2. 選取 [身份識別管理] 標籤。

  3. 在瀏覽窗格 (框架左下角) 中,選取 [檢視] 下拉式清單中的 [策略]。

  4. 按一下您要指定的策略名稱旁的箭頭。

    該策略的 [編輯] 頁面會出現在資料窗格 (框架右下角) 中。

  5. 在 [編輯] 頁中,選取 [檢視] 下拉式清單中的 [主旨]。

  6. 按一下 [新增]。

    隨即顯示 [新增主旨] 頁面,其中列出可能的主旨類型:

    • Access Manager 角色

    • LDAP 群組

    • LDAP 角色

    • LDAP 使用者

    • 組織

  7. 選取符合策略的主旨類型。

    例如,組織。

  8. 按 [下一步]。

  9. 在 [名稱] 欄位中輸入主旨的說明。

  10. (可選擇) 選取 [專用] 核取方塊。

    預設設定中沒有選取 [專用] 核取方塊,這意味著策略將套用至所有主旨成員。

    選取 [專用] 核取方塊,將策略套用至非主旨成員的每個使用者。

  11. 在 [可用] 欄位中搜尋要新增至主旨的項目。

    1. 鍵入您要搜尋之項目的搜尋條件。

      預設搜尋條件是 *,可顯示該主旨類型的所有主旨。

    2. 按一下 [搜尋]。

    3. 反白顯示要新增至 [已選取] 文字方塊的 [可用] 文字方塊中的項目。

    4. 按一下適用的 [新增] 或 [新增全部]。

    5. 重複步驟 a-d,直到您將所有需要的名稱新增至 [已選取] 文字方塊中。

  12. 按一下 [建立]。

    建議的主旨會出現在該策略所建議的主旨清單中。

  13. 按一下 [儲存]。

    建議的主旨會變成已儲存主旨。

  14. 對於任何您要新增至該策略的其他主旨重複步驟 9-16。

使用 Access Manager 建立新子組織

使用 Sun Java System Access Manager 建立子組織這一能力,可以在 Instant Messaging 伺服器內建立組織性獨立的人員。每個子組織可對映至不同的 DNS 網域。子組織中的一般使用者與其他子組織中的一般使用者是完全隔離的。以下程序說明為 Instant Messaging 建立新子組織的最少步驟。

Procedure建立新子組織

  1. 登入 Access Manager 管理主控台,即 http://hostname :port/amconsole

    例如:

    http://imserver.company22.example.com:80/amconsole

  2. 選取 [身份識別管理] 標籤。

  3. 建立新組織:

    1. 在瀏覽窗格 (框架左下角) 中,選取 [檢視] 下拉式清單中的 [組織]。

    2. 按一下 [新的]。

      資料窗格 (框架右下角) 中會顯示 [新的組織] 頁面。

    3. 輸入子組織的名稱。

      例如:


      sub1
      
    4. 輸入網域名稱。

      例如:


      sub1.company22.example.com
      
    5. 按一下 [建立]。

  4. 新建立子組織的註冊服務:

    1. 在瀏覽窗格中,按一下新子組織的名稱。

      例如,按一下 sub1。確定您按一下名稱,而非右邊的特性箭頭。

    2. 在導覽窗格的 [檢視] 下拉式清單中選取 [服務]。

    3. 按一下 [註冊]。

      隨即在資料窗格中顯示 [註冊服務] 頁面。

    4. 在 [認證] 標題下選取下列服務:

      • 核心

      • LDAP

    5. 在 [Instant Messaging 配置] 標題下選取下列服務:

      • Instant Messaging 服務

      • 線上狀態服務

    6. 按一下 [註冊]。

      為此子組織新選取的服務隨即顯示在瀏覽窗格中。

  5. 建立新選服務的服務範本:

    1. 在瀏覽窗格中,按一下服務的特性箭頭,由「核心」服務開始。

      [建立服務範本] 頁面會顯示在資料窗格中。

    2. 在資料窗格中,按一下 [建立]。

      隨即出現一個頁面,其中顯示您已選取服務的範本選項清單。

      即使您不希望修改範本選項,您還是應該在每個服務中按一下 [建立]。

    3. 依如下所述修改每個服務的服務範本選項:

      • 核心:一般而言,不需修改任何選項。

      • LDAP: 將新子組織的前綴新增至啟動使用者搜尋的 DN 欄位。

        在新增前綴後,最終 DN 應為如下格式:

        o=sub1,dc=company22,dc=example,dc=com

        超級使用者連結密碼超級使用者連結密碼 (確認)欄位中輸入 LDAP 密碼。

      • Instant Messaging 服務:一般而言,不需修改任何選項。

    4. 按一下 [儲存]。

    5. 重複步驟 a-d,直到您已為每個服務建立服務範本。

將角色指定給新子組織中的一般使用者

在子組織中建立新的一般使用者之後,需要為他們指定角色。角色可以繼承自父組織。

Procedure將角色指定給新子組織中的一般使用者

  1. 登入 Access Manager 管理主控台,即 http://hostname :port/amconsole

    例如:

    http://imserver.company22.example.com:80/amconsole

  2. 選取 [身份識別管理] 標籤。

  3. 在瀏覽窗格 (框架左下角) 中,選取 [檢視] 下拉式清單中的 [角色]。

  4. 按一下您想要指派的角色右側的特性箭頭。

    該角色的頁面會顯示在資料窗格 (框架右下角) 中。

  5. 在資料窗格的 [檢視] 下拉式清單中選取 [使用者]。

  6. 按一下 [新增]。

    隨即顯示 [新增使用者] 頁面。

  7. 輸入符合樣式以識別使用者。

    例如,在 UserId 欄位中輸入星號 *,會列出所有使用者。

  8. 按一下 [篩選器]。

    隨即顯示 [選取使用者] 頁面。

  9. 在 [選取使用者] 頁面上,核取 [顯示父系路徑] 核取方塊,並按一下 [重新整理]。

    隨即顯示父系路徑。

  10. 選取要指定給此角色的使用者。

  11. 按一下 [送出]。

第 18 章 管理 Instant Messaging 的歸檔

在本章下列各節中,說明如何設定與管理電子郵件、入口網站與自訂 Instant Messaging 的歸檔:

歸檔簡介

您可以下列方式來歸檔即時訊息:

您可配置 Instant Messaging 使用一種歸檔方式,或同時使用多種歸檔方式。

啟用與停用 Instant Messaging 的歸檔

不論您選擇使用入口網站、電子郵件、自訂歸檔或任何歸檔的組合,啟用 Instant Messaging 中的歸檔功能與本節中所描述的都相同。如本節所述停用歸檔,會停用所有歸檔。

Procedure啟用 Instant Messaging 歸檔

在您啟用 Instant Messaging 的歸檔後,必須如下列小節所述啟用您要使用之歸檔類型的歸檔提供者:

  1. 開啟 iim.conf

    如需詳細資訊,請參閱iim.conf 檔案語法

  2. 如果 iim.conf 中沒有下列指令行,則加入它們。


    iim_server.msg_archive = true
    
  3. 儲存並關閉 iim.conf

  4. 重新整理伺服器。


    imadmin refresh server
    

Procedure停用 Instant Messaging 歸檔

此程序會停用所有的 Instant Messaging 歸檔。如果您僅想要停用電子郵件歸檔、入口網站歸檔、或所配置的自訂歸檔,請參閱下列其中一節:

  1. 開啟 iim.conf

    如需詳細資訊,請參閱iim.conf 檔案語法

  2. iim_server.msg_archive 參數設定為 false


    iim_server.msg_archive = false
    
  3. 儲存並關閉 iim.conf

  4. 重新整理伺服器。


    imadmin refresh server
    

管理 Instant Messaging 電子郵件歸檔

您可使用 Instant Messaging 來歸檔輪詢、聊天、會議、新聞通道和警示內容,並使用電子郵件傳送給一般使用者與管理員。您也可使用任何電子郵件用戶端來搜尋與管理已歸檔的內容。本節會在下列各節中描述 Instant Messaging 電子郵件歸檔:

Instant Messaging 伺服器會快取已歸檔的記錄,直到以電子郵件將它們寄出為止。如果您啟用電子郵件歸檔,則會增加對記憶體容量的需求。如需效能調校的資訊,請參閱「Sun Java Communications Suite 5 Deployment Planning Guide」

啟用與停用 Instant Messaging 電子郵件歸檔提供者

您可修改 iim.conf 中的參數值來啟用與停用電子郵件歸檔提供者。

Procedure若要啟用 Instant Messaging 電子郵件歸檔

開始之前

確定您已如啟用 Instant Messaging 歸檔中所述來啟用 Instant Messaging 的歸檔。

  1. 開啟 iim.conf

    如需詳細資訊,請參閱iim.conf 檔案語法

  2. 如果 iim.conf 中沒有下列指令行,則加入它們。


    iim_server.msg_archive.provider = com.iplanet.im.server.EmailIMArchive
    

    iim_server.msg_archive.provider 參數包含以逗號分隔的歸檔提供者清單。除了啟用例如電子郵件歸檔外,如果您想啟用入口網站歸檔,應將參數與其值設定如下:


    iim_server.msg_archive.provider = com.iplanet.im.server.IMPSArchive, \
    com.iplanet.im.server.EmailIMArchive
    
  3. 儲存並關閉 iim.conf

  4. 重新整理 Instant Messaging 伺服器配置。


    imadmin refresh
    

Procedure停用 Instant Messaging 電子郵件歸檔提供者

  1. 開啟 iim.conf

    請參閱iim.conf 檔案語法以取得詳細資訊。

  2. iim_server.msg_archive.provider 參數中刪除 com.iplanet.im.server.EmailIMArchive 值。

  3. 儲存並關閉 iim.conf

  4. 重新整理 Instant Messaging 伺服器配置。


    imadmin refresh
    

配置電子郵件歸檔設定

您可配置會收到包含已歸檔即時訊息之電子郵件的管理員。您可配置單獨的管理員清單中來接收輪詢、新聞、會議、警示或聊天階段作業。您也可配置 Instant Messaging 使用延伸的 RFC 822 標頭。這麼做可讓郵件用戶端根據標頭內容來篩選郵件。


備註 –

如果您在修改這些電子郵件歸檔的參數後才執行 configure,則會覆寫您所輸入的任何值。


表 18–1 描述您用來定義要接收電子郵件歸檔的管理員配置參數,以及是否要使用延伸的 RFC 822 標頭以及該標頭的內容。

表 18–1 電子郵件歸檔配置參數

參數 

預設值 

說明 

iim_arch.admin.email

空字串 

以逗號分隔的管理員電子郵件地址清單。 

iim_arch.alert.admin.email

無 

以逗號分隔的管理員電子郵件地址清單,會向其傳送所有已歸檔的警示訊息。此參數會覆寫警示訊息的 iim_arch.admin.email

iim_arch.chat.admin.email

無 

以逗號分隔的管理員電子郵件地址清單,會向其傳送所有已歸檔的聊天訊息。此參數會覆寫聊天訊息的 iim_arch.admin.email

iim_arch.conference.admin.email

無 

以逗號分隔的管理員電子郵件地址清單,會向其傳送所有已歸檔的會議訊息。此參數會覆寫會議訊息的 iim_arch.admin.email

iim_arch.poll.admin.email

無 

以逗號分隔的管理員電子郵件地址清單,會向其傳送所有已歸檔的輪詢訊息。此參數會覆寫輪詢訊息的 iim_arch.admin.email

iim_arch.news.admin.email

無 

以逗號分隔的管理員電子郵件地址清單,會向其傳送所有已歸檔的新聞訊息。此參數會覆寫新聞訊息的 iim_arch.admin.email

iim_arch.email.archiveheader.name

無 

延伸的 RFC 822 標頭的名稱。 

iim_arch.email.archiveheader.value

全部 

iim_arch.email.archiveheader.name 的標頭名稱對應值。

Procedure配置 Instant Messaging 電子郵件歸檔的管理員收件者與 RFC 822 標頭格式

  1. 開啟 iim.conf

    請參閱iim.conf 檔案語法以取得詳細資訊。

  2. 新增表 18–1 中的參數與適當的 iim.conf 值。

  3. 重新整理伺服器。


    imadmin refresh
    

電子郵件標頭格式

下列各節描述包含各種已歸檔 Instant Messaging 內容之電子郵件訊息的 RFC 822 標頭內容:

RFC 822 電子郵件歸檔一對一聊天標頭欄位

寄件者:

聊天階段作業發起者。

收件者:

iim.conf 中所配置的收件者與任何管理員。如需詳細資訊,請參閱表 18–1

副本:

聊天階段作業發起者。

主旨:

第一封長度超過 50 個字元的實用郵件。

日期:

歸檔提供者電子郵件訊息的建立日期。

回覆:

未使用。

X-XMPP-Message-ID

由電子郵件歸檔提供者根據訊息執行緒產生。

RFC 822 電子郵件歸檔私人會議標頭欄位

寄件者:

聊天階段作業發起者。

收件者:

iim.conf 中所配置的其他參加者與任何管理員。請參閱表 18–1 以取得詳細資訊。

副本:

聊天階段作業發起者。

主旨:

如果已設定會議主旨,則使用會議主旨。如果未設定主旨,則會使用長度超過 50 個字元的第一封實用郵件。

日期:

歸檔提供者電子郵件訊息的建立日期。

回覆:

未使用。

X-XMPP-Message-ID

由電子郵件歸檔提供者根據會議 ID 產生。

RFC 822 電子郵件歸檔公開會議標頭欄位

寄件者:

歸檔資料中的第一個寄件者。

收件者:

關聯的郵寄清單、擁有會議室明確存取權的使用者,以及 iim.conf 中所配置的任何管理員。請參閱表 18–1 以取得詳細資訊。

副本:

未使用。

主旨:

[會議名稱] 主旨。

日期:

歸檔提供者電子郵件訊息的建立日期。

回覆:

未使用。

X-XMPP-Message-ID

由電子郵件歸檔提供者根據會議 ID 產生。

RFC 822 電子郵件歸檔輪詢問題與回覆標頭欄位

寄件者:

輪詢寄件者。

收件者:

iim.conf 中所配置的輪詢寄件者與任何管理員。請參閱表 18–1 以取得詳細資訊。

副本:

未使用。

主旨:

輪詢問題。

日期:

歸檔提供者電子郵件訊息的建立日期。

回覆:

未使用。

X-XMPP-Message-ID

由電子郵件歸檔提供者產生。

RFC 822 電子郵件歸檔僅輪詢答覆標頭欄位

寄件者:

輪詢寄件者。

收件者:

iim.conf 中所配置的輪詢收件者與任何管理員。請參閱表 18–1 以取得詳細資訊。

副本:

輪詢寄件者。

主旨:

輪詢問題。

日期:

歸檔提供者電子郵件訊息的建立日期。

回覆:

未使用。

X-XMPP-Message-ID

由電子郵件歸檔提供者所產生的。

RFC 822 電子郵件歸檔警示標頭欄位

寄件者:

警示寄件者。

收件者:

iim.conf 中所配置的警示收件者與任何管理員。請參閱表 18–1 以取得詳細資訊。

副本:

未使用。

主旨:

警示主旨。

日期:

歸檔提供者電子郵件訊息的建立日期。

回覆:

未使用。

X-XMPP-Message-ID

由電子郵件歸檔提供者產生。

RFC 822 電子郵件歸檔新聞通道發佈標頭欄位

寄件者:

新聞通道發佈寄件者。

收件者:

與新聞通道關聯的郵寄清單及在 iim.conf 中所配置的任何管理員。請參閱表 18–1 以取得詳細資訊。

副本:

未使用。

主旨:

新聞通道發佈主旨。

日期:

歸檔提供者電子郵件訊息的建立日期。

回覆:

未使用。

X-XMPP-Message-ID

由電子郵件歸檔提供者根據新聞通道 ID 產生。

管理 Instant Messaging 入口網站歸檔

下列主題描述的是使用 Instant Messaging 入口網站歸檔:

Instant Messaging 入口網站歸檔簡介

Instant Messaging 入口網站歸檔提供者包含如下功能:

所有的即時訊息會依歸檔目的分成下列幾個種類:

聊天 - 私人會議室中的所有訊息。

會議 - 公開會議室中的所有訊息。

警示 - 所有警示訊息。

輪詢 - 所有輪詢訊息。

新聞 - 新聞通道中所發佈的所有訊息。

Instant Messaging 入口網站歸檔包下列元件:

歸檔與可擷取元件 - Portal Server 搜尋元件,亦稱為「歸檔與可擷取」元件,可用來儲存已歸檔的「即時訊息」。為 Instant Messaging 歸檔資料編列索引,且會將這些資料儲存於 Portal Server 搜尋資料庫。您也可指定歸檔資料的目錄。例如,您可將警示訊息儲存於「警示」目錄下。將資料儲存為不同種類可幫助您簡化搜尋作業,並能加速歸檔資料的擷取。

Instant Messaging 歸檔搜尋或顯示 Servlet - 當一般使用者搜尋符合某些條件的文件時,Portal Server 搜尋會擷取符合此條件的頁面。這些頁面可能是遠端網頁或 Instant Messaging 歸檔資料,亦稱為 Instant Messaging 資源描述元。

Instant Messaging 歸檔提供者 - 每當要歸檔即時訊息時,此元件就會呼叫 Instant Messaging 伺服器。Instant Messaging 歸檔提供者根據 Instant Messaging 伺服器所提供的資料建立與「摘要物件交換格式」(SOIF) 相容的「資源描述元」(RD)。歸檔提供者會使用 Portal Server 搜尋 API 來將這些資源描述元傳送至 Portal Server 搜尋資料庫,並維持一個可傳送至 Portal Server 搜尋資料庫的記錄緩衝區,以降低效能上的衝擊。

圖 18–1 描述 Instant Messaging 入口網站歸檔元件。

圖 18–1 Instant Messaging 入口網站歸檔元件

此圖顯示 Instant Messaging 入口網站歸檔元件與資料流。

啟用與停用入口網站歸檔提供者

您可啟用 Instant Messaging 歸檔提供者,或修改 iim.conf 中的參數來啟用自訂的歸檔提供者。

Procedure啟用 Instant Messaging 入口網站歸檔提供者

開始之前

確定您已如啟用 Instant Messaging 歸檔中所述來啟用 Instant Messaging 的歸檔。

  1. 開啟 iim.conf

    如需找到並修改 iim.conf 的說明,請參閱iim.conf 檔案語法

  2. iim.conf 中,加入您想啟用之歸檔提供者類型的行。

    對於自訂的歸檔提供者,加入下列行:


    iim_server.msg_archive.provider = provider-name
    

    若要使用 Portal Server 搜尋歸檔提供者,請以下列行來取代 provider- name


    com.iplanet.im.server.IMPSArchive
    

    iim_server.msg_archive.provider 參數包含以逗號分隔的歸檔提供者清單。除了啟用例如電子郵件歸檔外,如果您想啟用入口網站歸檔,應將參數與其值設定如下:


    iim_server.msg_archive.provider = com.iplanet.im.server.IMPSArchive, \
    com.iplanet.im.server.EmailIMArchive
    
  3. 如果您執行的是 Sun JavaTM System Portal Server 7 2006Q1 或更新的版本,請提供下列參數的值:


    iim_arch.portal.search="Portal Server Search URL"

    其中,Portal Server Search URL 是 Portal Server 的搜尋 URL。例如:


    iim_arch.portal.search="http://portal.siroe.com:8080/search1/search"
  4. 儲存並關閉 iim.conf

  5. 重新整理 Instant Messaging 伺服器配置。


    imadmin refresh
    
  6. 以 amadmin 身份登入 psconsole

    如需說明,請參閱 Portal Server 文件。

  7. 選擇管理通道與容器。

  8. 選擇託管搜尋功能的入口網站與組織。

  9. 在 DP XML 樹狀結構檢視下選擇 IMChannel。

  10. 在 [searchServer] 中輸入搜尋伺服器的 URL 值。

    例如:


    http://portal.siroe.com:8080/search1/search
    
  11. 儲存內容。

Procedure停用入口網站歸檔提供者

  1. 開啟 iim.conf

    如需詳細資訊,請參閱iim.conf 檔案語法

  2. com.iplanet.im.server.IMPSIMArchive 參數中刪除 iim_server.msg_archive.provider 值。

  3. 儲存並關閉 iim.conf

  4. 重新整理 Instant Messaging 伺服器配置。


    imadmin refresh
    

配置 Instant Messaging 入口網站歸檔提供者

Instant Messaging 歸檔提供者可將歸檔訊息儲存為 Portal Server 搜尋資料庫中的資源描述元 (RD)。歸檔提供者可使用 Portal Server 搜尋模式的下列欄位:

標題 - 此欄位包含會議種類中公開會議室的名稱、聊天種類中聊天階段作業的參加者名稱、警示訊息的主旨以及警示與新聞種類的新聞通道名稱。標題欄位可讓輪詢目錄中包含「Poll from Sender」,其中 Sender 代表輪詢寄件者的顯示名稱。

關鍵字 - 對於會議和聊天種類,此欄位會包含會議室內所有參加者的清單。對於公開會議室,此欄位還會包含會議室的名稱。對於警示種類,此欄位會包含寄件者和收件者的名稱。對於新聞種類,此欄位會包含頻道的名稱。對於輪詢種類,此欄位會包含寄件者和收件者的名稱。對於多有種類,此欄位除包含上述值之外,也包含該種類的唯一 ID。

表 18–2 顯示其唯一的 ID 並為歸檔提供者中的每個種類提供說明。

表 18–2 歸檔提供者種類的唯一 ID 與說明

種類 

唯一 ID 

會議 

聊天 

RoomName-StartTime

其中: 

RoomName - 公開或私人會議室的名稱

StartTime - 建立 RD 的時間戳記

警示 

Alert-messageID

其中: 

messageID - 將會被歸檔之訊息的訊息 ID。當 RD 僅包含一個訊息時,訊息 ID 會很重要。例如,「新聞」訊息和「警示」訊息。

輪詢 

Poll-pollID

新聞 

TopicName-messageID

ReadACL - 對於「會議」和「新聞」種類,此欄位的值取自各自會議室和新聞通道的存取控制檔。對於「聊天」種類,此欄位包含參加者的 DN。對於「警示」種類,此欄位包含寄件者的 DN 與收件者的 DN。對於「輪詢」種類,歸檔會提供新的存取控制檔案。

會以 ReadACL 欄位中的值來控制至 RD 的搜尋存取。如果已啟用檔案層級安全性,則一般使用者僅在 ReadACL 欄位有一般使用者的 DN 時,才有對搜尋結果的存取權。

說明 - 此欄位包含沒有 HTML 格式的歸檔訊息。

完整文字 - 此欄位包含已經 HTML 格式化的歸檔訊息。

分類 - 此欄位包含歸檔訊息的種類。

Procedure配置歸檔提供者

  1. 開啟 iim.conf

    如需找到並修改 iim.conf 的說明,請參閱附錄 A iim.conf 中的 Instant Messaging 配置參數

  2. 隨意新增或編輯歸檔提供者配置參數。

    如需可修改之參數的清單,請參閱表 A–8

  3. 儲存並關閉 iim.conf

  4. 重新整理 Instant Messaging 伺服器。

Procedure在非預設的資料庫中儲存歸檔訊息

使用此程序配置 Instant Messaging 將歸檔訊息儲存至資料庫,而非使用預設值。

  1. 開啟 iim.conf

    如需找到與修改 iim.conf 的說明,請參閱附錄 A iim.conf 中的 Instant Messaging 配置參數

  2. 在預設的歸檔提供者下,加入下列行:


    iim_arch.portal.search.database = database-name
    

    其中,database-name 是非預設資料庫的名稱。

  3. 儲存並關閉 iim.conf

  4. 修改 Portal Server 搜尋通道。

    變更 Portal Server 搜尋通道來新增選項,用於搜尋另一個資料庫中的資料。如需詳細資訊,請參閱 Sun Java System Portal Server Desktop Customization Guide

  5. 變更至 IMProvider 目錄。

    例如:


    cd /etc/opt/SUNWps/desktop/default_locale/IMProvider/
    

    其中,locale 是您的部署中所使用的語言。例如,default_jaen_US。而且,如果您已建立多個 Instant Messaging 的實例,則視各實例而定,/default 目錄的名稱會不同。

  6. 建立 IMArchiveDisplay.jsp 檔案的備份檔案。

  7. 開啟 IMArchiveDisplay.jsp 檔案:

  8. IMArchiveDisplay.jsp 檔案中搜尋並找到下列兩行程式碼:


    <search:setQuery query = "<%= scope %>"/>
     <search:setRDMType rdmType = "rd-request"/>
  9. 在前一個步驟中所顯示的兩行程式碼之間,新增下列程式碼:


    <search:setDatabase database = "database-name"/>
    

    在您新增此列程式碼之後,此程式碼看起來應該為如下:


    <search:setQuery query = "<%= scope %>"/>
     <search:setDatabase database = "database-name"/>
    <search:setRDMType rdmType = "rd-request"/>
                            

    其中,database-name 是非預設的資料庫名稱。

  10. 以實體伺服器主機名稱來取代虛擬搜尋伺服器。

  11. 儲存並關閉 IMArchiveDisplay.jsp

管理 Portal Server 搜尋資料庫中的歸檔資料


備註 –

這些說明僅適用於 Solaris。


在 Portal Server 搜尋資料庫中,會將 Instant Messaging 資料歸檔為資源描述元 (RD) 的格式。Portal Server 搜尋資料庫中的個別項目稱為資源描述元 (RD)。一個 RD 即為某單一資源的一組特定資訊。每個 RD 的欄位都是由 Portal Server 搜尋資料庫模式決定的。

若要管理歸檔資料,您需要管理 Portal Server 搜尋資料庫中的資源描述元 (RD)。本節說明某些經常執行的 Portal Server 搜尋資料庫維護工作。

如需管理 Portal Server 搜尋資料庫中資料的詳細資訊,請參閱 Sun Java System Portal Server 管理指南

rdmgr 指令

rdmgr 指令是用於和「搜尋」服務一同作業的主要指令。它提供管理員兩種子指令類型:一個是用於操作資源描述元 (RD),另一個是用於資料庫維護。rdmgr 指令一般在啟用搜尋的 Portal Server Portal Server 實例目錄中執行。

Procedure呼叫 rdmgr 指令

  1. 變更至 https-servername 目錄。


    cd /var/opt/SUNWps/https-servername
    

    其中,servername 是 Portal Server 的名稱

  2. 在指令行中鍵入:


    run-cs-cli portal-svr-base/SUNWps/bin/rdmgr options
    

    其中,portal-svr-base 是安裝 Portal Server 的目錄。

    如需關於 rdmgr 指令的詳細資訊,請參閱 Sun Java System Portal Server 管理指南中的「指令行公用程式」。

搜尋資源描述元

以引數值 -Q 執行 rdmgr 指令會產生精簡搜尋作業的資源描述元 (RD) 清單。

例如:

刪除資源描述元

以下是從 Portal Server 搜尋資料庫中刪除資源描述元 (RD) 的範例:

若要刪除含有文字 testing 的所有資源描述元 (RD),鍵入:


run-cs-cli portal-svr-base/SUNWps/bin/rdmgr -d -Q testing

若要從目錄 Archive:Chat:January 中刪除所有資源描述元 (RD),鍵入下列指令。以單行輸入指令:


run-cs-cli portal-svr-base/SUNWps/bin/rdmgr
-d -Q "classification=Archive:Chat:January"

變更歸檔資料的顯示

歸檔的資料使用 IMArchiveDisplay.jsp 檔來部署。在預設情況下,IMArchiveDisplay.jsp 檔案安裝在 /etc/opt/SUNWps/desktop/default/IMProvider 資料夾中。您可修改此檔案以變更歸檔資料的樣式和資源字串。

例如,您可依照下列步驟說明,取代一般使用者加入會議室時顯示的預設系統訊息。

您也可以採用類似的方法,修改顯示金鑰資訊之其他金鑰和樣式的資源字串。

如果您變更「標題」名稱,且 Portal Server 搜尋的預設模式中「完整文字」的屬性名稱已變更,則這些變更也會反應到 IMArchiveDisplay.jsp 檔案中。

Procedure修改預設系統訊息

  1. 編輯 IMArchiveDisplay.jsp

  2. IMArchiveDisplay.jsp 中搜尋下列程式碼行:


    ....
    ht.put("has_joined_the_room","<span class='user'> {0} </span>
    <span class='headervalue'> has joined the room.</span>");
    ....
  3. 以想要的文字取代 headervalue

    例如:


    ....
    ht.put("has_joined_the_room","<span class='user'> {0} </span>
    <span class='headervalue'> has entered the room.</span>");
    ....

歸檔提供者的範本部署方案

此範本部署方案解釋如何同時歸檔相關 Instant Messaging 資料的方法。


範例 18–1 同時歸檔相關 Instant Messaging 資料

為每種資料類型建立個別的種類。例如,在歸檔所有 Instant Messaging 資料的「歸檔」種類中,建立一個「聊天」子種類以儲存聊天訊息。您也可以依照時間建立歸檔資料的子種類。例如,若要歸檔 2002 年 12 月份的聊天資料,子種類會是:

Archive:Chat:2002:12


Procedure依時間歸檔所有 Instant Messaging 聊天資料

  1. 變更至 im-cfg-base 目錄。

    如需如何找到 im-cfg-base 的資訊,請參閱Instant Messaging 伺服器目錄結構

  2. 開啟 iim.conf

    如需找到並修改 iim.conf 的說明,請參閱iim.conf 檔案語法

  3. iim_arch.chat.categoryname 新增下列值:

    iim_arch.chat.categoryname = Archive:Chat:%Y:%M

    歸檔提供者會將 %Y 自動指定為當前的年份,並將 %M 自動指定為當前的月份。這些值是取自系統日期與時間。

Procedure將 2005 年 12 月份的 Instant Messaging 聊天資料歸檔與備份至子種類

  1. 鍵入下列內容:


    rdmgr -Q "classification=Archive:Chat:2005:12" > archive.soif
    
  2. archive.soif 檔複製到您的備份系統。

Procedure從 Portal Server 搜尋資料庫中移除 2005 年 12 月份的歸檔 Instant Messaging 聊天資料

    在指令行中鍵入:


    rdmgr -d "classification=Archive:Chat:2005:12"
    

使用自訂歸檔提供者

除了入口網站與電子郵件歸檔外,您也可選擇使用自訂歸檔提供者。

Procedure啟用自訂歸檔提供者

開始之前

確定您已如啟用 Instant Messaging 歸檔中所述來啟用 Instant Messaging 的歸檔。

  1. 開啟 iim.conf

    請參閱iim.conf 檔案語法,以取得尋找並修改 iim.conf 的說明。

  2. iim.conf 中,加入您想啟用之歸檔提供者類型的指令行。

    對於自訂的歸檔提供者,加入下列行:


    iim_server.msg_archive.provider = provider-name
    

    若要使用 Portal Server 搜尋歸檔提供者,請以下列行來取代 provider- name


    com.iplanet.im.server.IMPSArchive
    

    iim_server.msg_archive.provider 參數包含以逗號分隔的歸檔提供者清單。除了啟用例如電子郵件歸檔外,如果您想啟用入口網站歸檔,應將參數與其值設定如下:


    iim_server.msg_archive.provider = com.iplanet.im.server.IMPSArchive, \
    com.iplanet.im.server.EmailIMArchive
    
  3. 儲存並關閉 iim.conf

  4. 重新整理 Instant Messaging 伺服器配置。


    imadmin refresh
    

Procedure停用自訂歸檔提供者

  1. 開啟 iim.conf

    請參閱iim.conf 檔案語法以取得詳細資訊。

  2. 僅從 iim_server.msg_archive.provider 參數中刪除自訂歸檔提供者的值。

  3. 儲存並關閉 iim.conf

  4. 重新整理 Instant Messaging 伺服器配置。


    imadmin refresh
    

第 19 章 疑難排解與監視 Instant Messaging

本章列出在 Instant Messaging 安裝與部署期間可能會發生的常見問題,並簡單介紹了監視代理程式。當您嘗試隔離或解決問題時,各種系統元件在作業時所產生的記錄資訊對您而言可能非常有用。此外,您可以使用監視代理程式監視 Instant Messaging 程序的整體運行狀況,預防問題的發生,並評估使用狀況水平以幫助您規劃部署規模和預防當機時間。本章的資訊包含在下列章節中:

如需管理伺服器、多重訊號處理器、監視程式、Calendar 代理程式、用戶端記錄及預設記錄檔案位置的詳細資訊,請參閱第 13 章, 管理 Instant Messaging 的記錄

疑難排解 Instant Messenger

Instant Messenger 提供兩種協助您疑難排解用戶端的方法。您可收集關於用戶端系統執行階段的資訊,並依需求產生 Instant Messenger 記錄檔案。

取得 Instant Messenger 執行時間資訊

您可從 Instant Messenger 用戶端取得關於用戶端系統的資訊。

Procedure從 [關於] 對話方塊中取得 Instant Messenger 執行時間資訊

  1. 在 Instant Messenger 中,請選取 [說明]->[關於] 。

    出現 [關於] 對話方塊。

  2. 選取 [詳細資料] 標籤。

    [詳細資料] 標籤包含當疑難排解問題時,您可使用的用戶端系統相關資訊。

取得 Instant Messenger 記錄檔

您可依需求產生用戶端記錄檔。依預設,不會產生記錄檔。如需配置用戶端記錄的相關資訊,請參閱管理 Instant Messenger 記錄

問題與解決方案

下方列出的是部份問題及其可能的原因,以及有助於疑難排解這些問題的資訊:

無法從用戶端連線至 Instant Messaging 重新導向伺服器

您必須使用支援 XMPP 重新導向的用戶端,才能成功部署重新導向伺服器。使用 Instant Messenger 2006Q1 或更新版本。如果您使用協力廠商用戶端,請確定用戶端支援 XMPP 重新導向。

無法透過 XMPP/HTTP 閘道登入至 Instant Messenger

如果 XMPP/HTTP 閘道正在為兩個網域服務,且 im.jnlp 檔案僅包含一個網域的引數,不在列出之網域內的使用者則無法進行身份認證。例如,如果 im.jnlp 檔案包含下列引數:


<argument>domain=mydomain.siroe.com</argument>

嘗試從 mydomain 之外的網域登入的使用者會收到錯誤,且無法進行身份認證。若要解決此問題,您需要配置 Instant Messenger 以便認證其他網域。

Procedure配置 Instant Messenger 以認證特定網域

  1. 開啟 im.jnlp 資源檔案。

  2. 移除網域引數項目。

    例如,移除:


    <argument>domain=mydomain.siroe.com</argument>
  3. 再次下載 Instant Messenger。

  4. 執行 Instant Messenger。

    會顯示 [登入] 頁面。

  5. 按一下 [詳細資料]。

    會展開 [登入] 頁面以顯示用戶端的連線設定。

  6. 在 [伺服器] 文字方塊中,輸入前往閘道的 URL,並後接 ?to=domain

    例如,如果使用者是 mydomain.siroe.com 中的一員,請將下列內容後接至 URL:


    ?to=mydomain.siroe.com
  7. 若要測試配置,請使用有效的使用者名稱與密碼登入。

Sun JavaTM System Portal Server 7 2006Q1 或更新版本未歸檔訊息

如果您已使用 Sun Java System Portal Server 7 2006Q1 或更新的版本設定「Portal 歸檔」,但是沒有歸檔您的訊息,請確定是否已在 iim.conf 中設定 iim_arch.portal.search 參數:


iim_arch.portal.search="Portal Server Search URL"

其中 Portal Server Search URL 是 Portal Server 的搜尋 URL:例如:


iim_arch.portal.search="http://portal.siroe.com:8080/search1/search"

執行 patchrmpatchadd 後遺失 Instant Messenger 資源自訂值

(問題號碼:6361796) patchrmpatchadd 程序會重新部署用戶端資源。這樣做會覆寫所有的自訂檔案。在您執行這些動作前,需要備份任何想要儲存的自訂檔案。

無法將郵件轉寄給離線使用者

依預設,Instant Messaging 會使用 mail 屬性來決定收信人離線時,要轉寄即時訊息的電子郵件地址。如果您的目錄中電子郵件地址未使用 mail 屬性,則您需要配置 Instant Messaging 確保與目錄使用相同的屬性。

Procedure配置用於使用者電子郵件地址的屬性

  1. 開啟 iim.conf

    如需找到並修改 iim.conf 的說明,請參閱iim.conf 檔案語法

  2. iim_ldap.user.mailattr 參數的值變更為您的目錄中在使用者項目中包含電子郵件地址時使用的屬性。

行事曆快顯提醒無效

如果無法如預期地傳遞行事曆快顯,則您可如本節所述疑難排解相關配置問題。如需設定行事曆快顯的說明,請參閱第 16 章, 使用行事曆快顯提醒

行事曆快顯配置中最常見的錯誤是在配置檔案中輸入的參數名稱不正確。這包含錯字與拼錯的參數名稱。請確定您在 iim.conf ics.conf 中輸入的所有的配置參數與值正確無誤。如果您已配置快顯,請參考表 A–11 來比較您的輸入內容與需要的參數。

如果您的 Instant Messaging 與 Calendar Server 配置檔案正確,但還是無法如預期地達成快顯,請確定是否已正確配置 Calendar 用戶端與 Instant Messenger。

Procedure疑難排解 Calendar 用戶端與 Instant Messenger 配置以傳遞快顯

  1. 登入 Calendar 用戶端。

  2. 請確定時區設定正確。

    如果您正在使用 Calendar Express,請從功能表中選取 [工具]->[選項]->[設定]。

  3. 排程電子郵件提醒。

    如果您正在使用 Calendar Express,請從功能表選取 [工具]->[選項]->[設定]。

  4. 儲存您的設定。

  5. 以相同的使用者登入 Instant Messenger。

  6. 選取 [工具]->[設定]。

    會顯示 [設定] 對話方塊。

  7. 選取 [警示] 標籤。

  8. 核取 [顯示行事曆提醒] 核取方塊,並按一下 [確定]。

  9. 讓 Instant Messenger 使用者保持登入狀態。

  10. 核查在 Calendar 用戶端所配置的時間使用者是否能夠收到電子郵件警示與快顯。

    如果您並未收到電子郵件警示,則表示未正確配置 Calendar 用戶端。請參閱 Calendar 用戶端文件以取得疑難排解的詳細資訊。

    如果您已收到電子郵件警示,但沒收到行事曆快顯,並且您確定已正確配置伺服器與用戶端,請檢查 xmppd.log 以取得詳細資訊。您也可能需要將此記錄檔設定為記錄更加詳細的內容,例如 DEBUG。如需變更記錄層級的說明,請參閱使用 iim.conf 參數設定 Instant Messaging 元件的記錄層級

單次登入無效

如果您的 Sun Java System Access Manager 使用 SSO 功能,則必須配置 Access Manager 伺服器與 Instant Messaging 伺服器以使用相同的 Web 容器。

無法載入或啟動 Instant Messenger

以下是此問題可能的原因:

何處可以取得需要的資訊:

連線遭拒或逾時

以下是此問題可能的原因:

何處可取得診斷資訊:

認證錯誤

以下是此問題可能的原因:

何處可取得診斷資訊:

Instant Messenger 通道顯示錯誤

以下是此問題可能的原因:

何處可取得診斷資訊:

Instant Messaging 伺服器與 Instant Messaging 通道記錄檔。

未歸檔 Instant Messaging 內容

以下是此問題可能的原因:

何處可取得診斷資訊:

Instant Messaging 伺服器與歸檔記錄檔案。

無法開啟伺服器對伺服器的通訊

以下是此問題可能的原因:

何處可取得診斷資訊:

兩個伺服器的 Instant Messaging 伺服器記錄檔案。

嚴重安裝錯誤使得伺服器的狀態不穩定

如果在安裝或解除安裝 Instant Messaging 時發生嚴重錯誤,系統狀態可能會不穩定。如此將會造成安裝和解除安裝無法完成。在這種情況下,您必須手動地移除所有 Instant Messaging 元件,嘗試進行全新的安裝。清除的程序是由移除套件與登錄資訊兩種動作所組成。

Procedure手動移除所有 Instant Messaging 元件

  1. 備份任何在未來安裝時可能需要的資訊。

    如需說明,請參閱備份 Instant Messaging 資料

  2. 手動編輯產品登錄資訊。

    在 Solaris 9 中,執行下列指令:


    prodreg(1)
    

    對於所有其他的作業系統:

    1. 編輯 productregistry.xml 檔案並從中移除所有 Instant Messaging 元素。

      依預設,productregistry XML 檔案儲存在下列位置:

      • Solaris:/var/sadm/install/productregistry

      • Linux:/var/tmp/productregistry

    2. 如果還繼續顯示下列的套裝軟體或 RPM,請移除它們:

      • SUNWiim

      • SUNWiimc

      • SUNWiimd

      • SUNWiimid

      • SUNWiimin

      • SUNWiimjd

      • SUNWiimm

      • SUNWiimc-l10n

      • SUNWiimd-l10n

      • SUNWiimid-l10n

      • SUNWiimin-l10n

Access Manager 主控台 (amconsole) 未顯示 Instant Messaging 服務

如果 Instant Messaging 在 Sun Java System Application Server 部署中使用 Access Manager 策略,則當您完成配置 Instant Messaging 時,需要重新啟動 Application Server。如果您沒有重新啟動 Application Server,則 Access Manager 主控台 (amconsole ) 中不會顯示 Instant Messaging 服務。

疑難排解 Instant Messaging 與 LDAP

下列 LDAP 問題可能會在給定部署中出現。相應變更 iim.conf 檔案中的 LDAP 參數。

使用不允許匿名連結的目錄

依預設,Instant Messaging 伺服器會執行 LDAP 目錄匿名搜尋。然而,通常網站會防止在其目錄中進行匿名搜尋,這樣任意使用者便無法搜尋並擷取所有資訊。如果將您的網站目錄配置為禁止這樣的匿名搜尋,並且安裝後配置時您也並未提供連結憑證,則需要以 Instant Messaging 可用於連結與執行搜尋的使用者 ID 與密碼來配置 Instant Messaging 伺服器的需求。

使用 iim_ldap.usergroupbinddniim_ldap.usergroupbindcred 參數來配置必需的憑證。

Procedure配置 Instant Messaging 伺服器的連結憑證

  1. 開啟 iim.conf

    如需找到並修改 iim.conf 的說明,請參閱iim.conf 檔案語法

  2. 指定您要伺服器連結至目錄時所用的 DN,做為 iim_ldap.usergroupbinddn 的值。


    iim_ldap.usergroupbinddn=bind-DN
    
  3. 指定與連結 DN 對應的密碼,做為 iim_ldap.usergroupbindcred 的值。


    iim_ldap.usergroupbindcred=password
    
  4. 儲存並關閉檔案。

使用 cn 之外的屬性顯示連絡人名稱

您可自訂 Instant Messenger 顯示連絡人名稱的方式。Instant Messenger 用來顯示連絡人名稱的預設屬性是 cn。連絡人名稱會顯示為 First NameLast Name。例如,Frank SmithMary Jones 等。

使用 iim_ldap.userdisplayiim_ldap.groupdisplay 參數來指定要用來顯示連絡人名稱的屬性。

Procedure變更用於顯示連絡人名稱的屬性

  1. 開啟 iim.conf

    請參閱iim.conf 檔案語法以取得尋找與修改 iim.conf 的指引。

  2. 指定您想用來顯示使用者名稱以做為 iim_ldap.userdisplay 值的屬性。


    iim_ldap.userdisplay=user-name-attribute
    
  3. 指定您想用來顯示群組名稱以做為 iim_ldap.groupdisplay 值的屬性。


    iim_ldap.groupdisplay=group-name-attribute
    
  4. 儲存並關閉檔案。

使用萬用字元搜尋目錄

如果已將您的目錄索引設定為允許使用萬用字元,且您想要在搜尋連絡人名稱時能夠使用萬用字元,則需要將 Instant Messaging 伺服器配置為允許萬用字元搜尋。然而,允許萬用字元搜尋可能會影響效能,除非將使用者 ID 索引設定為子字串搜尋。如需在 Instant Messaging 中允許萬用字元搜尋的說明,請參閱連修改用戶端使用者搜尋連絡人的方式

針對使用者與群組使用非標準物件類別

如果您的目錄使用非標準物件類別來定義使用者與群組,則您需要變更適當的 iim_ldap.* 參數,以的值來取代 inetorgpersongroupofuniquenames

如需 LDAP 參數的清單,請參閱LDAP 和使用者註冊配置參數

Procedure變更用於指定使用者與群組的物件類別

  1. 開啟 iim.conf

    如需找到並修改 iim.conf 的說明,請參閱iim.conf 檔案語法

  2. 搜尋 inetorgperson,並以您目錄中用於定義使用者的物件類別來取代。

  3. 搜尋 groupofuniquenames,並以您目錄中用於定義群組的物件類別來取代。

  4. 儲存並關閉檔案。

uid 之外的屬性用於使用者認證

如果您的目錄並未將 uid 屬性用於使用者認證,則需要以您目錄所使用的屬性來配置 Instant Messaging 伺服器。依預設,Instant Messaging 會使用 uid 。您也需要變更每個在其值中包含 uid 的篩選參數。

使用 iim_ldap.loginfilter 參數來指定要用於使用者認證的屬性。

Procedure變更用於使用者認證的屬性

  1. 開啟 iim.conf

    請參閱iim.conf 檔案語法以取得尋找與修改 iim.conf 的指引。

  2. 在下列參數中搜尋 uid,並以您要用於使用者認證的屬性來取代:

    • iim_ldap.loginfilter

    • iim_ldap.usergroupbyidsearchfilter

  3. 儲存並關閉檔案。

uid 之外的屬性用於使用者 ID

如果您的目錄並未將 uid 屬性用於使用者 ID,則需要以您目錄中所使用的屬性來配置 Instant Messaging 伺服器。依預設,Instant Messaging 會使用 uid。此外,您應將目錄中的屬性做索引,以幫助抵銷由搜尋未索引屬性所引起的效能延宕。

使用 iim_ldap.user.uidattr 參數來指定要用於使用者 ID 的屬性。

Procedure變更用於使用者 ID 的屬性

  1. 開啟 iim.conf

    請參閱iim.conf 檔案語法以取得尋找與修改 iim.conf 的指引。

  2. 指定您要用於使用者 ID 以做為 iim_ldap.user.uidattr 值的屬性。

    預設值是 uid

    例如,若要使用 loginname 屬性,請將 iim_ldap.user.uidattr 屬性設定如下:

    iim_ldap.user.uidattr=loginname

  3. 儲存並關閉檔案。

  4. 將索引指令增加至 LDAP 中的索引規則:

    index loginname eq

疑難排解多節點部署 (伺服器池) 中的連線問題

如果您正收到伺服器池中的伺服器間並未共用線上狀態的錯誤:

監視 Instant Messaging

Instant Messaging 提供一個協助您監視活動的代理程式。這個代理程式被稱為監視框架管理代理程式,或 mfwk 代理程式。mfwk 代理程式包含於一般代理程式容器 (Common Agent Container,CAC) 中。mfwk 代理程式是與 Instant Messaging 一同安裝的。CAC 會隨 Java ES 一同包裝,並且使用 Java ES 安裝程式進行安裝。如需關於安裝、啟用與管理監視的詳細資訊,以及所監視 Instant Messaging 物件的簡要資訊,請參閱「Sun Java Enterprise System 5 Monitoring Guide」

管理監視程式程序

監視程式程序監控伺服器和多重訊號組合器元件,並在確定元件未執行時嘗試重新啟動元件。

對於伺服器,監視程式根據伺服器目前的配置,定期直接連線至伺服器或者透過多重訊號組合器連線至伺服器,這樣嘗試建立連線來確定伺服器是否正在執行。監視程式會嘗試輪詢伺服器的作業狀態,如果無法確定狀態則會嘗試連線到伺服器。如果兩項作業都失敗,監視程式會停止,然後重新啟動伺服器。

在您使用監視程式前,請確認其為啟用狀態,並使用 imadmin status 指令執行。依預設,監視程式在您安裝 Instant Messaging 時就會啟用與執行。

附錄 CInstant Messaging imadmin 工具參考中有關於 imadmin 的詳細資訊。

確定監視程式的狀態

您可使用 imadmin 指令行公用程式來檢查監視程式的狀態。

Procedure確定監視程式的狀態

  1. 變更到包含 imadmin 指令行公用程式的目錄:


    cd im-svr-base/sbin
    
  2. 執行 imadmin status


    ./imadmin status watchdog
    

    imadmin 公用程式會傳回監視程式目前的狀態。

啟用和停用監視程式

依預設,監視程式在您安裝 Instant Messaging 時就會啟用。您可透過在 iim.conf 中設定配置參數來停用或啟用監視程式。

Procedure若要啟用或停用監視程式

  1. 開啟 iim.conf

    如需找到並修改 iim.conf 的說明,請參閱iim.conf 檔案語法

  2. 透過設定 iim_wd.enable 參數來啟用或停用監視程式,如下所示:

    啟用監視程式:iim_wd.enable=true

    停用監視程式:iim_wd.enable=false

  3. 儲存並關閉 iim.conf 檔案。

  4. 重新整理 Instant Messaging 伺服器配置:


    cd im-svr-base/sbin
    

    ./imadmin refresh
    

管理監視程式的記錄

您可以使用與管理伺服器、多重訊號組合器和 Calendar 代理程式相同的方式來管理監視程式的記錄。會將監視程式記錄檔案儲存為 im-db-base/log/iim_wd.log

如需為所有 Instant Messaging 元件,包含監視程式設定記錄層級的詳細資訊,請參閱第 13 章, 管理 Instant Messaging 的記錄