建立

Openfire 設定它基於 xml 配置和資料庫條目的組合。首次安裝後,執行 Openfire 將導致部署一個偵聽埠 9090 的 Web 管理面板。通常在 http:// machinenamewhereinstalled:9090 上訪問它的端點,並在啟動期間在 Openfire 的日誌上標記。

訪問管理面板將登陸基於 Web 的嚮導配置。可以按照嚮導或避免它來設定已配置的 Openfire 伺服器,例如給定域,使用者和其他配置(克隆或移動另一個安裝)。

啟動向導之前需要什麼

Openfire 需要訪問資料庫以實現資料永續性,例如註冊使用者和許多其他配置。在 Openfire 資料夾中,在路徑 <Openfire_home>/database 之後可以找到資料庫的已拒絕指令碼以在現有資料庫上執行。

Openfire 將需要選擇資料庫驅動程式並插入憑據以訪問你的資料庫。

作為替代方案,可以讓 Openfire 建立一個嵌入式(但不太適合開發) HSQLDB 資料庫 ; 更重要的是,如果使用管理授權的資料庫憑據配置 Openfire,它將能夠在嚮導期間透明地為資料庫指令碼本身提供午餐。

請記住,安裝程式要獲得正確行為的目的是什麼。

Oracle 指出:

  • Oracle ODBC 驅動程式沒有標準的 Opensource 許可證,因此不能與 Openfire 一起提供; 在 <Openfire_Home>/lib 目錄中啟動向導之前,使用從 Oracle 網站下載並複製。
  • Oracle 的指令碼可能需要更新,具體取決於 Oracle 資料庫目標版本,在執行之前檢查檔案。

你需要避免嚮導

如果需要避免嚮導,則有必要:

  1. 正確配置 <Openfire_home> /conf/openfire.xml
  2. 正確配置 <Openfire_home> /conf/security.xml
  3. 出口 ofProperty

openfire.xmlsecurity.xml 要克隆(以及移動)安裝,請務必在 jive 標記下將標記設定為 true

<setup>true</setup> 

要複製具有相同引數的安裝(例如,在開發和維護等多個環境中),請檢查資料庫標記配置並確保加密金鑰。這就是加密金鑰的樣子

  <database> 
    <defaultProvider> 
      <username encrypted="true">QXxDT1fOVuvrY=</username>  
      <password encrypted="true">QXxDT1fO1jnAiTGZq6u=</password>
    </defaultProvider> 
  </database> 

這看起來像未加密的金鑰

  <database> 
    <defaultProvider> 
      <username>admin</username>  
      <password>password</password>
    </defaultProvider> 
  </database> 

encrypted 屬性它只是一個佔位符(encrypted =false 無效):如果在 <Openfire_home>/conf/security.xml 中存在用條目宣告的加密標記,則使用者名稱和密碼被認為是加密的,如下所示:

<security> 
  <encrypt> 
    <!-- This can be set to "AES" or "Blowfish" (default) at setup time -->  
    <algorithm>AES</algorithm>  
    <key> 
    </key>  
    <property> 
      <!-- 
        This list includes the names of properties that have been marked for
        encryption. Any XML properties (from openfire.xml) that are listed here 
        will be encrypted automatically upon first use. Other properties 
        (already in the database) can be added to this list at runtime via the 
        "System Properties" page in the Openfire console.
      -->  
      <name>database.defaultProvider.username</name>  
      <name>database.defaultProvider.password</name> 
    </property> 
  </encrypt>  

刪除這兩個名稱條目以使用普通密碼

  <encrypt> 
    <!-- This can be set to "AES" or "Blowfish" (default) at setup time -->  
    <algorithm>AES</algorithm>  
    <key> 
    </key>  
    <property> 
    </property> 
  </encrypt>

ofProperty 表

ofProperty 是必須匯出以克隆 2 個 Openfire 伺服器之間的配置的表。然而,有 3 個條目需要關注並可能編輯:

  • xmpp.domain 如果新的 Openfire 安裝域與源 1 不相等
  • 必須改變 admin.authorizedJIDs 以更新管理員的 jid
  • 如果資料庫發生更改,則必須更改 database.defaultProvider.serverURL

插入示例:

Insert into OFPROPERTY  (NAME,PROPVALUE) values ('admin.authorizedJIDs','admin@environmentDomain');
Insert into OFPROPERTY (NAME,PROPVALUE) values ('database.defaultProvider.serverURL','jdbc:oracle:thin:@...');
Insert into OFPROPERTY (NAME,PROPVALUE) values ('xmpp.domain','environmentDomain');